.candle-scene *{box-sizing:border-box}
.candle-scene [hidden]{display:none!important}
.candle-scene button,.candle-scene input,.candle-scene summary{font:inherit}
.candle-scene button{color:inherit}
.candle-scene button:focus-visible,.candle-scene input:focus-visible,.candle-scene summary:focus-visible{outline:2px solid var(--ember);outline-offset:6px}
.candle-scene ::selection{background:var(--ember);color:var(--charcoal)}
.candle-scene{position:relative;isolation:isolate;min-height:680px;height:100svh;overflow:hidden;background:#08090b}
.candle-scene #relight,.candle-scene .still-fallback,.candle-scene .edge-shade{position:absolute;inset:0;width:100%;height:100%}
.candle-scene #relight{display:block;opacity:0;pointer-events:none}
.candle-scene.webgl-ready #relight{opacity:1}
.candle-scene .still-fallback{background:url('../assets/candle/bubby.webp') left 18%/auto 100% no-repeat;filter:brightness(.22)}
.candle-scene.webgl-ready .still-fallback{visibility:hidden}
.candle-scene .edge-shade{pointer-events:none;background:linear-gradient(90deg,rgba(8,9,11,.65),rgba(8,9,11,.1) 43%,transparent 60%),linear-gradient(0deg,rgba(8,9,11,.85),transparent 24%,transparent 80%,rgba(8,9,11,.35));z-index:1}
.candle-scene header{position:absolute;top:32px;left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;gap:24px;z-index:2}
.candle-scene .brand img{width:166px;height:auto}
.candle-scene .study{font-size:10px;letter-spacing:.2em;display:flex;align-items:center;gap:28px;color:rgba(244,241,234,.7)}
.candle-scene .study span{color:var(--ember);font-size:12px;border-left:1px solid rgba(244,241,234,.25);padding-left:28px}
.candle-scene .candle-content{position:absolute;left:7vw;top:29%;z-index:2;pointer-events:none;max-width:46vw}
.candle-scene .eyebrow{display:flex;align-items:center;gap:12px;font-size:10px;letter-spacing:.17em;margin:0 0 25px;color:rgba(244,241,234,.7)}
.candle-scene .eyebrow img{object-fit:contain}
.candle-scene .candle-content h1{font-family:'Playfair Display',Georgia,serif;font-weight:400;font-size:clamp(48px,5.3vw,86px);line-height:1.12;letter-spacing:-.05em;margin:0}
.candle-scene .candle-content h1 em{font-weight:400}
.candle-scene .instruction{font-size:12px;line-height:1.9;letter-spacing:.01em;color:rgba(244,241,234,.55);margin-top:26px;max-width:33ch}
.candle-scene button{display:flex;align-items:center;justify-content:space-between;gap:25px;min-height:44px;padding:12px 0;background:transparent;border:0;border-bottom:1px solid rgba(244,241,234,.3);font-size:12px;cursor:pointer;transition:color .3s,border-color .3s}
.candle-scene button:hover{color:var(--ember);border-color:var(--ember)}
.candle-scene .motion-choice{pointer-events:auto;font-size:11px;margin-top:12px}
.candle-scene .button-arrow{font-size:20px}
.candle-scene .tuning{pointer-events:auto;width:245px;margin-top:14px;position:relative}
.candle-scene .tuning summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:11px;color:rgba(244,241,234,.58);padding:12px 0}
.candle-scene .tuning summary::-webkit-details-marker{display:none}
.candle-scene .tuning summary>span{font-size:18px;font-weight:400}
.candle-scene .tuning[open] summary>span{transform:rotate(45deg)}
.candle-scene .tuning-inner{padding:16px 20px;background:rgba(8,9,11,.96);border:1px solid rgba(244,241,234,.18);position:absolute;top:100%;left:0;width:280px;z-index:4}
.candle-scene .tuning label{font-size:11px;display:flex;justify-content:space-between;gap:20px;color:var(--cream)}
.candle-scene .tuning output{color:var(--ember);font-variant-numeric:tabular-nums}
.candle-scene .tuning input{width:100%;accent-color:var(--ember);margin:12px 0 22px;min-height:22px;cursor:pointer}
.candle-scene .tuning button{font-size:11px;width:100%}
.candle-scene .map-note{font-size:10px;line-height:1.7;color:rgba(244,241,234,.5);margin-bottom:0}
.candle-scene #renderStatus{font-size:12px;line-height:1.7;max-width:30ch;color:var(--ember)}
.candle-scene footer{position:absolute;bottom:30px;left:5vw;right:5vw;display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:24px;border-top:1px solid rgba(244,241,234,.14);z-index:2}
.candle-scene .caption{display:flex;gap:22px;align-items:flex-start}
.candle-scene .caption-index{font-size:10px;color:var(--ember);padding-top:5px}
.candle-scene .caption p{font-family:'Playfair Display',Georgia,serif;font-size:23px;margin:0 0 6px;letter-spacing:-.02em}
.candle-scene .caption div>span{font-size:10px;color:rgba(244,241,234,.5)}
.candle-scene .demo-label{font-size:9px;letter-spacing:.16em;line-height:2;text-align:right;color:rgba(244,241,234,.6)}
.candle-scene .demo-label span{font-size:10px;letter-spacing:0;color:rgba(244,241,234,.4)}
.candle-scene .cursor{position:fixed;top:0;left:0;width:5px;height:8px;transform-origin:center;border-radius:65% 35% 55% 45%;background:#f4d9a7;box-shadow:0 0 8px rgba(232,116,59,.5),0 0 24px rgba(232,116,59,.12);margin:-4px -2.5px;pointer-events:none;z-index:10;opacity:0}
.candle-scene .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.candle-scene.pointer-active,.candle-scene.pointer-active button,.candle-scene.pointer-active summary{cursor:none}
.candle-scene.pointer-active .cursor{opacity:1}
}
@media(hover:hover) and (pointer:fine){.candle-scene.motion-enabled.pointer-active,.candle-scene.motion-enabled.pointer-active button,.candle-scene.motion-enabled.pointer-active summary{cursor:none}
.candle-scene.motion-enabled.pointer-active .cursor{opacity:1}
}
@media(max-width:1000px){.candle-scene .candle-content{left:5vw;max-width:49vw}
.candle-scene .candle-content h1{font-size:clamp(45px,6vw,62px)}
.candle-scene .demo-label{display:none}
.candle-scene .tuning-inner{top:auto;bottom:100%}
.candle-scene footer{gap:25px}
}
@media(max-width:600px){.candle-scene{min-height:800px}
.candle-scene header{top:24px;left:24px;right:24px}
.candle-scene .brand img{width:130px}
.candle-scene .study{font-size:8px;letter-spacing:.1em;gap:12px}
.candle-scene .study span{padding-left:12px;font-size:10px}
.candle-scene .edge-shade{background:linear-gradient(0deg,rgba(8,9,11,.96),rgba(8,9,11,.85) 20%,rgba(8,9,11,.08) 62%,rgba(8,9,11,.22))}
.candle-scene .candle-content{left:24px;right:24px;top:auto;bottom:160px;max-width:none}
.candle-scene .candle-content h1{font-size:clamp(44px,11vw,64px);line-height:1.1}
.candle-scene .eyebrow{font-size:8px;letter-spacing:.14em;gap:8px;margin-bottom:18px}
.candle-scene .eyebrow img{height:17px;width:11px}
.candle-scene .instruction{font-size:11px;margin:16px 0 0;line-height:1.65;max-width:34ch}
.candle-scene .motion-choice{margin-top:7px;min-height:40px;font-size:10px}
.candle-scene .tuning{margin-top:7px;width:170px}
.candle-scene .tuning summary{padding:8px 0;font-size:10px}
.candle-scene .tuning-inner{top:auto;bottom:100%;width:270px}
.candle-scene .tuning-inner input{min-height:28px}
.candle-scene footer{left:24px;right:24px;bottom:max(24px,env(safe-area-inset-bottom));padding-top:18px;gap:14px;align-items:center;flex-wrap:wrap}
.candle-scene .caption{gap:10px}
.candle-scene .caption p{font-size:21px}
.candle-scene .caption div>span{font-size:8px}
.candle-scene .caption-index{font-size:9px}
.candle-scene button{font-size:10px;gap:12px}
.candle-scene .button-arrow{font-size:18px}
.candle-scene .cursor{display:none!important}
}
@media(prefers-reduced-motion:reduce){.candle-scene *{transition:none!important}
}
@media(min-width:1001px){.candle-scene .tuning-inner{top:auto;bottom:100%}
}
.candle-scene .candle-content{left:59%;right:5%;max-width:none;top:29%}
.candle-scene .candle-content h1{font-size:clamp(45px,4.6vw,78px)}
.candle-scene .edge-shade{background:linear-gradient(0deg,rgba(5,5,6,.65),transparent 21%,transparent 85%,rgba(5,5,6,.18))}
.candle-scene .atmosphere{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:1;mix-blend-mode:screen}
.candle-scene .atmosphere span{position:absolute;inset:-45%;background:url('../assets/candle/smoke-swirls.jpg') center/cover no-repeat;will-change:transform;}
.candle-scene .smoke-back{opacity:.07;transform:translateX(calc(var(--drift,0px)*-.4));transition:transform 1.8s ease-out}
.candle-scene .smoke-back span:first-child{filter:grayscale(1) blur(10px);animation:smoke-deep 34s ease-in-out infinite alternate}
.candle-scene .smoke-back span:nth-child(2){filter:grayscale(1) blur(5px);opacity:.4;animation:smoke-middle 27s ease-in-out infinite alternate}
.candle-scene .smoke-front{opacity:.095;transform:translateX(var(--drift,0px));transition:transform 1s ease-out;mask-image:radial-gradient(ellipse 45% 60% at var(--mx,30%) var(--my,40%),black,rgba(0,0,0,.18) 72%,transparent)}
.candle-scene .smoke-front span{background-position:35% 65%;filter:sepia(.9) saturate(.65) blur(3px);animation:smoke-close 23s ease-in-out infinite alternate}
.candle-scene #candleEmbers{position:absolute;inset:0;width:100%;height:100%;z-index:1;pointer-events:none;opacity:.7}
@keyframes smoke-deep{from{transform:translate(-5%,4%) rotate(8deg) scale(1.05)}to{transform:translate(6%,-3%) rotate(13deg) scale(1.15)}}
@keyframes smoke-middle{from{transform:translate(6%,2%) rotate(-120deg) scale(1.1)}to{transform:translate(-5%,-5%) rotate(-116deg) scale(1.25)}}
@keyframes smoke-close{from{transform:translate(-7%,5%) rotate(113deg) scale(1.05)}to{transform:translate(6%,-7%) rotate(119deg) scale(1.2)}}
@media(max-width:1000px) and (min-width:601px){.candle-scene .candle-content{left:57%;right:4%;top:29%}
.candle-scene .candle-content h1{font-size:clamp(37px,4.8vw,52px)}
.candle-scene .eyebrow{font-size:8px;letter-spacing:.08em}
.candle-scene .instruction{font-size:11px}
.candle-scene .tuning{width:210px}
}
@media(max-width:600px){.candle-scene .candle-content{left:24px;right:24px;top:auto;bottom:160px}
.candle-scene .candle-content h1{font-size:clamp(43px,10.7vw,62px)}
.candle-scene .edge-shade{background:linear-gradient(0deg,rgba(5,5,6,.95),rgba(5,5,6,.82) 18%,transparent 61%)}
.candle-scene .smoke-back{opacity:.055}
.candle-scene .smoke-front{opacity:.065}
.candle-scene .smoke-back span:nth-child(2){display:none}
.candle-scene .tuning{width:180px}
}
@media(prefers-reduced-motion:reduce){.candle-scene .atmosphere span{animation-play-state:paused}
.candle-scene.motion-enabled .atmosphere span{animation-play-state:running}
}
.candle-scene .cursor{width:18px;height:26px;margin:-16px -9px;background:none;box-shadow:none;border-radius:0;filter:drop-shadow(0 0 5px rgba(232,116,59,.65))}
.candle-scene .cursor img{width:100%;height:100%;object-fit:contain}

/* Integration geometry and website controls. */
.hero.candle-scene{display:block;text-align:left;padding:0;min-height:850px;height:100svh;max-height:none;overflow:hidden;isolation:isolate;background:#050506}
.candle-scene .candle-content{top:26%;left:58%;right:5%;max-width:none}.candle-scene .hero__title{font-size:clamp(46px,4.6vw,78px);letter-spacing:-.05em;line-height:1.1}.candle-scene .hero__actions{margin-top:30px;justify-content:flex-start;gap:12px;width:auto}.candle-scene .hero__actions .btn{font-size:11px;padding:15px 18px;min-height:46px;pointer-events:auto}.candle-scene .hero__actions .btn:first-child{background:var(--cream);color:var(--charcoal)}.candle-scene .instruction{margin-top:23px}.candle-scene .tuning-inner{bottom:100%;top:auto}.candle-scene .candle-bottom{position:absolute;bottom:32px;left:5%;right:5%;display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;border-top:1px solid var(--line);z-index:2}.candle-credit{font:23px var(--display)}.candle-credit span{display:block;font:10px var(--ui);color:var(--cream-dim);margin-top:8px}.candle-explore{font-size:11px;display:flex;gap:25px;align-items:center}.candle-explore span{color:var(--ember);font-size:20px}.candle-scene .cursor{z-index:15000}.candle-scene .eyebrow{line-height:1.5}.candle-scene .tuning{margin-top:8px}
.ignite__brand{position:fixed;left:50%;top:50%;transform:translate(-50%,-50%);width:min(360px,70vw);height:auto;pointer-events:none}.intro-seen .ignite__brand{opacity:0}.ignite__brand{z-index:0}.ignite__flame,.ignite__core,.ignite__glow,.ignite__bloom{z-index:1}
.cursor-dot{width:18px!important;height:26px!important;margin:-16px -9px!important;background:url('../brand/logo/momentito-flame-centered.svg') center/contain no-repeat!important;border-radius:0!important;mix-blend-mode:normal!important;filter:drop-shadow(0 0 4px rgba(232,116,59,.5))}.cursor-ring{display:none!important}
@media(max-width:1000px) and (min-width:601px){.candle-scene .candle-content{left:55%;right:4%;top:26%}.candle-scene .hero__title{font-size:clamp(37px,4.7vw,50px)}.candle-scene .hero__actions{flex-direction:column;align-items:flex-start;gap:10px}.candle-scene .hero__actions .btn{font-size:10px;padding:12px 18px}}
@media(max-width:600px){.hero.candle-scene{height:100svh;min-height:920px}.candle-scene .candle-content{left:24px;right:24px;top:auto;bottom:172px}.candle-scene .hero__title{font-size:clamp(40px,11vw,64px)}.candle-scene .hero__actions{margin-top:24px;gap:10px;flex-direction:row}.candle-scene .hero__actions .btn{font-size:10px;letter-spacing:.02em;white-space:normal;padding:13px 12px;flex:1}.candle-scene .candle-bottom{left:24px;right:24px;bottom:26px;flex-wrap:wrap;gap:20px}.candle-scene .candle-explore{font-size:10px}.candle-credit{font-size:21px}.candle-credit span{font-size:9px}.candle-scene .instruction{margin-top:16px;font-size:11px}.candle-scene .edge-shade{background:linear-gradient(0deg,#050506,rgba(5,5,6,.9) 30%,transparent 70%)}.candle-scene .eyebrow{font-size:8px}.candle-scene .cursor{display:none!important}.ignite__replay{bottom:85px}}

/* The entire original photograph remains visible as the opening scrolls. */
.hero.candle-scene{height:max(100svh,82.5vw);min-height:960px}.candle-scene .candle-content{top:clamp(210px,24vh,320px)}
@media(max-width:900px) and (min-width:601px){.hero.candle-scene{height:max(1050px,97.5vw)}}
@media(max-width:600px){.hero.candle-scene{height:calc(150vw + 510px);min-height:1030px}.candle-scene .candle-content{top:auto;bottom:165px}.candle-scene .edge-shade{background:linear-gradient(0deg,rgba(5,5,6,.45),transparent 50%)}.candle-scene .candle-bottom{bottom:28px}.candle-scene .candle-explore{display:none}}

/* Preserve original framing even when interactive graphics are unavailable. */
.candle-scene .still-fallback{background-position:left top;background-size:55% auto}
@media(max-width:900px) and (min-width:601px){.candle-scene .still-fallback{background-size:65% auto}}
@media(max-width:600px){.candle-scene .still-fallback{background-size:100% auto}.hero.candle-scene{height:calc(150vw + 590px);min-height:1080px}.candle-scene .candle-content{top:calc(150vw + 30px);bottom:auto}}

/* One continuous candlelit environment. Layout remains above the photograph. */
html,body{background:#050506}
body{isolation:isolate}
.candle-world{position:fixed!important;inset:0;width:100%;height:100dvh!important;min-height:0!important;z-index:-1;pointer-events:none;isolation:isolate}
.hero.candle-scene{background:transparent;isolation:auto;min-height:760px;height:100svh}
main,.footer{position:relative;background:transparent}
.strip,.testimonials,.experience,.work,.sessions,.about,.contact,.footer{background:transparent}
.nav.is-scrolled{background:rgba(5,5,6,.88)}
.candle-world .smoke-back{opacity:.14}.candle-world .smoke-front{opacity:.16}
.candle-world #candleEmbers{opacity:.95}
.candle-world .edge-shade{background:linear-gradient(90deg,transparent 30%,rgba(5,5,6,.35) 54%,transparent 75%)}
.section-head,.about__text,.contact__intro,.process__step,.session-row,.quote-placeholder,.footer__invitation{ text-shadow:0 2px 18px rgba(0,0,0,.9)}
.process__step,.session-list,.contact__form,.testimonials{background:rgba(5,5,6,.48)}
.section-lead,.about__body,.process p,.session-row p{color:rgba(244,241,234,.78)}
#cursor{position:fixed;top:0;left:0;width:18px;height:26px;margin:-16px -9px;pointer-events:none;z-index:15000;opacity:0;filter:drop-shadow(0 0 5px rgba(232,116,59,.7))}
#cursor img{width:100%;height:100%;object-fit:contain}
.cursor-dot,.cursor-ring{display:none!important}
@media(hover:hover) and (pointer:fine){.candle-pointer #cursor{opacity:1}.candle-pointer,.candle-pointer a,.candle-pointer button{cursor:none}}
@media(max-width:600px){.hero.candle-scene{height:calc(150vw + 410px);min-height:900px}.candle-scene .candle-content{top:calc(150vw + 30px)}.candle-world .smoke-back{opacity:.1}.candle-world .smoke-front{opacity:.12}#cursor{display:none}.work,.experience,.about,.sessions,.contact,.testimonials,.footer{background:rgba(5,5,6,.58)}.candle-scene .candle-bottom{bottom:30px}}

html,body{overflow-x:clip}.gallery{grid-template-columns:repeat(12,minmax(0,1fr))}.tile,.section-head>*,.contact>*,.contact__form,.contact__form input,.contact__form textarea,.contact__form select{min-width:0;max-width:100%}
@media(max-width:360px){.nav{padding-inline:18px;gap:5px}.nav__logo{width:105px}.language{gap:0}.language button{min-width:30px}.candle-scene .hero__title{font-size:38px}.section-title,.about .section-title,.contact .section-title{font-size:50px}.session-row h3{font-size:30px}.candle-credit{font-size:19px}}

/* Revision 7: native pointer, translucent monochrome portfolio, no section rules. */
#cursor,.cursor-dot,.cursor-ring{display:none!important}
body,body.candle-pointer{cursor:auto!important}
body a,body button,body summary{cursor:pointer!important}
body input,body textarea{cursor:text!important}
body select{cursor:pointer!important}
.candle-scene .candle-bottom,.strip,.experience,.testimonials,.process__step,.session-row,.session-row:last-child,.footer,.footer__location,.filters{border:0}
.tile:not(.is-placeholder),.featured,.featured__image{background:transparent}
.tile:not(.is-placeholder) .tile__media img,.tile:not(.is-placeholder) .tile__media video,.featured__image img{filter:grayscale(1) contrast(1.06);opacity:.38;transition:opacity .45s ease}
.tile:not(.is-placeholder) .tile__media::after,.featured__image::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 90% 12%,rgba(232,116,59,.2),transparent 48%);mix-blend-mode:color;opacity:.75}
.tile:not(.is-placeholder) .tile__overlay{background:linear-gradient(transparent 65%,rgba(5,5,6,.62));color:var(--cream)}
.tile__cap span,.tile__num{color:var(--ember)}
.tile:not(.is-placeholder):hover .tile__media img,.tile:not(.is-placeholder):focus-within .tile__media img{opacity:.5}
.featured__image img{opacity:.25}
.portrait-viewer .viewer-image{filter:grayscale(1) sepia(.12)}
@media(prefers-reduced-motion:reduce){.tile .tile__media img,.featured__image img{transition:none}}

/* Review pass: studio identity first, shorter rhythm, quieter supporting copy. */
.opening-logo{display:block;width:210px;height:auto;margin:0 0 18px;object-fit:contain;pointer-events:none}
.candle-scene .candle-content{top:clamp(125px,16vh,190px)}
.hero.candle-scene{min-height:850px}
.gallery-disclosure,.preview-note,.sample-label{color:rgba(244,241,234,.82);text-shadow:0 1px 5px #050506,0 0 16px #050506}
.gallery-disclosure{max-width:55ch;line-height:1.8}
.candle-scene .instruction{color:rgba(244,241,234,.72)}
.about{padding-top:80px}.contact__form{padding:24px;background:rgba(5,5,6,.62)}
@media(max-width:600px){.hero.candle-scene{height:calc(150vw + 640px);min-height:1120px}.candle-scene .candle-content{top:calc(150vw + 30px)}.opening-logo{width:180px;margin-bottom:16px}.contact__form{padding:18px}.about{padding-top:60px}}
