.photography-scene{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:10%;align-items:center;overflow:hidden;padding-top:92px;padding-bottom:92px;background:radial-gradient(ellipse at 21% 38%,#45634c77,transparent 48%),#102e29;color:#f5edda;border-top:1px solid #b7a47855;border-bottom:1px solid #b7a47855;--portrait-glow:#e5b25752}
.photography-scene:before{content:'';position:absolute;inset:17px;border:1px solid #cab17b28;z-index:-1;pointer-events:none}
.photography-scene:after{content:'';position:absolute;left:-6%;right:-6%;bottom:-65px;height:105px;border-radius:50%;background:#34544844;z-index:-1;pointer-events:none}
.photography-art{position:relative;max-width:430px;width:100%;justify-self:center;padding:20px 34px 0}
.photography-halo{position:absolute;inset:-12% -38%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse,var(--portrait-glow),transparent 65%);transition:background .5s}
.portrait-trim{position:absolute;z-index:2;top:-29px;left:-12%;right:-12%;height:110px;pointer-events:none}
.portrait-trim .drawn-garland{position:static;height:auto;width:100%}
.photography-print{position:relative;transform:rotate(-3deg);padding:12px 12px 0;background:#faf1da;box-shadow:0 22px 55px #031d1a77,0 0 0 1px #c3ab74}
.photography-print:after{content:'';position:absolute;inset:-12px 11px 10px -11px;border:1px solid #cbb47777;z-index:-1;pointer-events:none}
.photography-print img{width:100%;height:auto;max-height:465px;object-fit:contain;background:#e5dfd2}
.photography-print figcaption{padding:0 1px 15px;margin-top:13px;display:block;font-size:8px;letter-spacing:1px;color:#626347}
.photography-print figcaption em{display:block;color:#755a35;font-size:23px;line-height:1.2;letter-spacing:-.4px;margin-top:4px}
.portrait-star{position:absolute;color:#e7c385;font:32px/1 Georgia;pointer-events:none;filter:drop-shadow(0 0 8px #e7c38544);transition:color .4s}
.portrait-star-one{left:-12px;top:36%;font-size:43px}.portrait-star-two{right:0;top:22%}.portrait-star-three{right:-20px;bottom:18%;font-size:21px}
.photography-copy{max-width:560px;position:relative;padding:14px 0}
.photography-copy .eyebrow{color:#d9bd85;font-size:9px;letter-spacing:1.8px;margin-bottom:27px}
.photography-copy h2{font-size:clamp(55px,5.2vw,80px);line-height:1.01;margin-bottom:28px}
.photography-copy h2 em{color:#e2c995}
.photography-copy>p:not(.eyebrow){font-size:14px;line-height:1.9;color:#d1dac9;max-width:435px}
.photography-copy>p+p{margin-top:14px}
.photography-copy>.button{margin-top:29px;gap:25px}
.portrait-light-controls{margin-top:36px;padding-top:22px;border-top:1px solid #c3b88338}
.portrait-light-controls>span{font:italic 19px/1.3 var(--serif);color:#ddcfac}
.portrait-light-controls [role=group]{display:flex;gap:11px;flex-wrap:wrap;margin-top:14px}
.portrait-light-controls button{display:flex;align-items:center;gap:9px;min-height:44px;padding:10px 16px;border:1px solid #aeaa8166;border-radius:30px;background:#0d292566;color:#ebeadb;font-size:10px;transition:background .25s,border-color .25s}
.portrait-light-controls button>span{width:8px;height:8px;display:block;border-radius:50%;background:#e5c086;box-shadow:0 0 8px #e9b35855}
.portrait-light-controls button[data-portrait-light=snowlight]>span{background:#bddbe0;box-shadow:0 0 8px #7eccdf55}
.portrait-light-controls button[aria-pressed=true]{background:#d6ba7a26;border-color:#d7bf85}
.portrait-light-controls button:hover{background:#d6ba7a36}
.portrait-light-status{min-height:25px;margin-top:11px;font:italic 15px/1.4 var(--serif);color:#c4d2bc}
.photography-scene[data-light=snowlight]{--portrait-glow:#95dce766;background:radial-gradient(ellipse at 21% 38%,#3c667077,transparent 48%),#102e36}
[data-light=snowlight] .portrait-star{color:#c8e8f0}
[data-light=snowlight] .photography-print{box-shadow:0 22px 55px #031d1a77,0 0 0 1px #bbd9df}
.photography-fields{margin:22px 0 0;padding:20px;border:1px solid #c2b28b;background:#f1ebdc70;min-width:0}
.photography-fields legend{font-size:11px;color:#6b5540;padding:0 7px}
.photography-fields .field-grid{margin:0}
.photography-fields p{font-size:10px;line-height:1.7;color:#66705a;margin-top:10px}
.magic-paused .photography-halo,.magic-paused .portrait-star,.magic-paused .portrait-light-controls button{transition:none}
@media(min-width:1650px){.photography-scene{padding-left:max(10%,calc((100% - 1350px)/2));padding-right:max(10%,calc((100% - 1350px)/2));gap:8%}.photography-art{max-width:465px}}
@media(max-width:1050px){.photography-scene{gap:6%;padding-top:72px;padding-bottom:75px}.photography-art{padding:20px 25px 0}.photography-copy h2{font-size:57px}.photography-copy>p:not(.eyebrow){font-size:12px}.photography-copy>.button{font-size:11px;padding:14px 18px;gap:14px}.portrait-trim{top:-15px}.portrait-light-controls{margin-top:26px}}
@media(max-width:700px){.photography-scene{grid-template-columns:1fr;gap:47px;padding:65px 8% 65px}.photography-copy{grid-row:1}.photography-copy h2{font-size:clamp(48px,12vw,66px);margin-bottom:23px}.photography-copy .eyebrow{font-size:7px;letter-spacing:1.2px;margin-bottom:22px}.photography-copy>p:not(.eyebrow){font-size:13px}.photography-copy>.button{font-size:12px;gap:15px;max-width:100%}.photography-art{max-width:380px;padding:15px 32px 0}.portrait-trim{top:-24px}.portrait-light-controls{margin-top:27px;padding-top:20px}.portrait-light-controls>span{font-size:18px}.portrait-light-status{font-size:15px;min-height:25px}.portrait-star-one{left:0}.portrait-star-two{right:0}.portrait-star-three{right:-2px}.photography-fields{padding:15px 13px}.photography-fields .field-grid{gap:15px}.photography-scene:before{inset:10px}}
@media(max-width:360px){.photography-copy h2{font-size:46px}.photography-copy>.button{font-size:10px;padding:14px 15px}.portrait-light-controls>span{font-size:17px}.portrait-light-controls button{padding:10px 13px}.photography-print figcaption em{font-size:20px}}
@media(prefers-reduced-motion:reduce){.photography-halo,.portrait-star,.portrait-light-controls button{transition:none}}
