/* Give every world a clear foreground, without obscuring its monitor. */
#evidence.world-stage .world-prop-diamond{left:-32px;right:auto;top:auto;bottom:8%;width:280px}
#evidence.world-stage .world-prop-rack{left:auto;right:-24px;top:18%;bottom:auto;width:280px}
#evidence.world-stage .world-prop-rose{width:270px;right:12px;top:18%}
#evidence.world-stage .world-prop-dancers{width:280px;left:-40px;bottom:12%}
#evidence.world-stage .world-prop-zombie{width:285px;left:-30px}
/* A small, legible invitation within each screen; the whole screen is the link. */
#evidence.desk-worlds.world-stage .screen-open{display:inline-flex;align-items:center;gap:13px;right:2.5%;bottom:4%;padding:7px 8px 7px 12px;min-height:43px;min-width:140px;border:1px solid #d8bc7a;border-radius:8px;background:#fff5df;color:#443329;box-shadow:0 5px 15px #09060655,inset 0 1px 0 #fff;backdrop-filter:none;font-family:'DM Sans',sans-serif;transition:background .2s,translate .2s,box-shadow .2s}
.world-visit-label{display:flex;flex-direction:column;gap:4px;flex:1;text-align:left}.world-visit-label small{font-size:5px;line-height:1;letter-spacing:.13em;color:#98743b}.world-visit-label strong{font-size:10px;line-height:1.2;font-weight:600;letter-spacing:0}
.world-visit-icon{display:grid;place-items:center;width:29px;height:29px;background:#3e3028;border:1px solid #7b6240;border-radius:5px;color:#f9dc97}.world-visit-icon svg{width:16px;height:16px;stroke:currentColor;stroke-width:1.5;fill:none;transition:translate .2s}
#evidence.desk-worlds.world-stage .screen-project:is(:hover,:focus-visible) .screen-open{background:#fffbed;translate:0 -2px;box-shadow:0 7px 18px #09060666}
#evidence .screen-project:is(:hover,:focus-visible) .world-visit-icon svg{translate:1px -1px}
/* Native gold reflection follows the exact shape of the top-left P. */
#top .p-gold-sweep{animation:balanced-p-gloss 9s ease-in-out infinite;pointer-events:none}
@keyframes balanced-p-gloss{0%,28%{translate:0 0;opacity:0}31%{opacity:.9}52%{translate:650px 0;opacity:.95}56%,100%{translate:650px 0;opacity:0}}
#services .partner-handwritten .care-red-heart{color:#ed5557;text-shadow:0 1px 1px #64101f88;font-style:normal}
/* Only the backdrop is cropped; the guardian and flyby can leave the frame. */
#idea.composed-contact.framed-contact.contact-finale{border:0;background:none}
#idea.composed-contact.framed-contact.contact-finale::before,#idea.composed-contact.framed-contact.contact-finale::after{content:none;display:none}
#idea.contact-finale .contact-atmosphere{border-radius:27px 27px 0 0;clip-path:inset(0 round 27px 27px 0 0);transform:translateZ(0)}
#idea .contact-atmosphere::after{content:'';position:absolute;inset:0;z-index:3;pointer-events:none;background:linear-gradient(90deg,#193752aa,#274e6b45 55%,#8f92731a),linear-gradient(#213f5b33,transparent 40%,#3d5d7120)}
#idea.contact-finale .signature-footer.composed-footer.site-footer{overflow:hidden;clip-path:inset(0 round 0 0 27px 27px);border-radius:0 0 27px 27px}
/* Twelve seconds in flight, five seconds fully off-screen, then another pass. */
#idea.contact-finale .patrick-flight{height:auto;opacity:0;visibility:hidden;pointer-events:none}
#idea.contact-finale .patrick-flight .sky-patrick{opacity:1}
#idea.contact-finale .contact-performance .patrick-flight{animation:balanced-flight-cycle 17s linear 5s infinite both}
#idea.contact-finale.flight-loop-active .contact-performance .patrick-flight{visibility:visible;animation-play-state:running!important}
#idea.contact-finale:not(.flight-loop-active) .patrick-flight{visibility:hidden!important;animation-play-state:paused!important}
@keyframes balanced-flight-cycle{
 0%{opacity:1;transform:translateX(var(--flight-entry,calc(100vw + 80px))) translateY(0) rotate(1deg)}
 70.588%{opacity:1;transform:translateX(var(--flight-exit,calc(-100vw - 100%))) translateY(18px) rotate(-2deg)}
 70.6%,100%{opacity:0;transform:translateX(var(--flight-exit,calc(-100vw - 100%))) translateY(18px) rotate(-2deg)}
}
/* Section stops stay gentle; long sections and the note retain normal scrolling. */
html{scroll-snap-type:y proximity;scroll-padding-top:24px}
#top,#services,#creative-partner,#evidence,#idea{scroll-snap-align:start;scroll-margin-top:24px}
#record,.signature-footer{scroll-snap-align:none}
html:has(#idea-form :focus){scroll-snap-type:none}
@media(min-width:701px) and (max-width:1100px){
 #evidence.world-stage .world-prop-diamond{width:225px;left:-26px;bottom:8%}
 #evidence.world-stage .world-prop-rack{width:230px;right:-21px;top:19%}
 #evidence.world-stage .world-prop-rose{width:220px}#evidence.world-stage .world-prop-dancers{width:215px}#evidence.world-stage .world-prop-zombie{width:225px}
 #evidence.desk-worlds.world-stage .screen-open{min-width:115px;min-height:36px;gap:9px;padding:6px 7px 6px 9px}.world-visit-label strong{font-size:8px}.world-visit-icon{width:25px;height:25px}
}
@media(max-width:700px){
 #evidence.world-stage .world-prop-diamond{width:153px;left:-22px;right:auto;top:auto;bottom:18%}
 #evidence.world-stage .world-prop-rack{width:140px;right:-16px;left:auto;top:34%;bottom:auto}
 #evidence.world-stage .world-prop-rose{width:148px;right:8px;top:27%}#evidence.world-stage .world-prop-dancers{width:130px;right:-1%;left:auto;bottom:22%}#evidence.world-stage .world-prop-zombie{width:142px;left:-17px}
 #evidence.desk-worlds.world-stage .screen-open{gap:6px;min-width:86px;min-height:28px;padding:4px 4px 4px 6px;border-radius:5px;bottom:3%}.world-visit-label{gap:3px}.world-visit-label small{font-size:3px;letter-spacing:.08em}.world-visit-label strong{font-size:6px}.world-visit-icon{width:20px;height:20px;border-radius:3px}.world-visit-icon svg{width:11px;height:11px}
 #idea.contact-finale .contact-atmosphere{border-radius:21px 21px 0 0;clip-path:inset(0 round 21px 21px 0 0)}
 #idea.contact-finale .signature-footer.composed-footer.site-footer{border-radius:0 0 21px 21px;clip-path:inset(0 round 0 0 21px 21px)}
 #idea.contact-finale .contact-performance .patrick-flight{animation-name:balanced-flight-cycle}
}
@media(prefers-reduced-motion:reduce){
 html{scroll-snap-type:none;scroll-behavior:auto}
 #top .p-gold-sweep{animation:none;display:none}
 #idea.contact-finale .contact-performance .patrick-flight{animation:none!important;display:none}
 #evidence.desk-worlds.world-stage .screen-open{transition:none}
}
@media print{#top .p-gold-sweep{display:none}html{scroll-snap-type:none}}
