/* Final local presentation pass; retain the approved full image. */
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{overflow-x:clip}
.site-header{align-items:center;gap:18px}
.site-header a,.site-header button{flex-shrink:0}
.site-header .brand-crop{height:48px}
.products-artwork-page .site-header{position:relative;background:#fff;padding:22px 5vw;min-height:92px}
.products-artwork-page .popart-artboard{width:min(100%,1200px,calc((100svh - 265px)*1.5));height:auto;aspect-ratio:3/2}
.products-artwork-page .approved-products-artwork{padding:12px 5vw 26px}
.products-artwork-page .popart-controls{min-height:44px;margin-top:16px;color:#64556d}
.products-artwork-page .site-footer{background:#fff}
.products-artwork-page .under,.products-artwork-page .window-note{display:none!important}
.skip-link{position:fixed;left:18px;top:12px;z-index:1000;transform:translateY(-180%);padding:12px 18px;background:white;color:#49347a;border-radius:10px;text-decoration:none}
.skip-link:focus{transform:none}
button,a{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
.site-header button,.site-header>a:not(.brand-crop),.site-footer button,.popart-controls button{min-height:44px;display:inline-flex;align-items:center;justify-content:center}
dialog{max-height:calc(100svh - 40px);overflow:auto}dialog .close{min-width:44px;min-height:44px}
.contact-open:hover,.popart-controls button:hover{background:#f0eafa}
.laptop-ink-screen:focus-visible{outline:2px solid #9875b8;outline-offset:-3px}
.ink-paper{background:#fff7f0;inset:0;opacity:0}
.ink-pen{height:22%;width:3%;border-radius:2px}
.site-footer{flex-wrap:wrap}
.phone-popart{border-radius:0;clip-path:inset(0);transform:translateZ(0)}
.phone-photo-base{object-fit:fill!important}
.site-header .brand-crop{width:240px;height:70px;flex:0 0 240px;transform:none;margin:0}
.site-header .brand-crop img{width:100%;height:100%;object-fit:contain}
.aligned-mono-marks{position:absolute;left:34%;top:86%;width:54%;height:14%;display:grid;grid-template-columns:1fr 1fr;column-gap:13%;background:linear-gradient(100deg,#faf8f5,#fff);container-type:inline-size}
.mono-lockup{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:4%;min-width:0}
.mono-lockup+.mono-lockup:before{content:"";position:absolute;left:-15%;top:18%;bottom:20%;width:1px;background:#c9c2c5}
.mono-mark{position:relative;width:83%;height:65%;overflow:hidden;filter:grayscale(1) brightness(0)}
.mono-mark img{position:absolute;max-width:none;display:block;pointer-events:none}
.mono-modern img{width:102.02%;height:108.87%;left:-1.27%;top:-3.76%}
.mono-play img{width:100.81%;height:107.16%;left:0;top:-4.46%}
.mono-lockup>span{display:block;width:100%;margin-top:3%;font:400 1.02cqw/1.1 Arial,sans-serif;letter-spacing:.20cqw;white-space:nowrap;text-align:center;color:#25232a}
/* One shared, two-pane mask for all glass effects and hit testing. */
.scene .outside-focus,.scene .window-fog,.scene .window-play,.scene .window-rivulets{
 position:absolute;inset:0;width:100%;height:100%;clip-path:url(#gdavo-window-glass);
}
.scene .outside-focus{z-index:0;pointer-events:none;filter:none;opacity:0;transition:opacity 1.3s ease}
.scene .outside-focus>img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:fill;filter:contrast(1.035) saturate(1.025)}
.scene .outside-focus:after{display:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.scene .window-fog{z-index:1;pointer-events:none;background:linear-gradient(125deg,#eaf0f332,#eff3f542 48%,#e4edf330);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:1;transition:opacity 1.3s ease}
.scene.window-awake .window-fog{opacity:0}
.scene.window-awake .outside-focus{opacity:1}
.scene .window-play{z-index:2;padding:0;border:0;background:transparent;cursor:zoom-in}
.scene .window-rivulets{z-index:2;pointer-events:none}
/* Traffic keeps its road mapping but is additionally clipped by the full glass mask. */
.scene .traffic-glass{position:absolute;inset:0;pointer-events:none;z-index:1;clip-path:url(#gdavo-window-glass)}
.scene .mini-world{left:47%;top:0;width:42.5%;height:58%;clip-path:none;z-index:1}
@media(prefers-reduced-motion:reduce){.scene .window-fog,.scene .outside-focus{transition:none}}
.interaction-hint{font:11px/1.7 Arial,sans-serif;color:#67556f;text-align:center;margin:10px 0 0}
.motion-toggle{position:fixed;left:18px;right:auto;bottom:18px;z-index:30;min-height:44px;padding:10px 14px;border:1px solid #d9cde2;border-radius:24px;background:#fffef5ed;color:#5d4b68;font:11px Arial,sans-serif;box-shadow:0 3px 15px #37223a12;cursor:pointer}
body.motion-paused *,body.motion-paused *:before,body.motion-paused *:after{animation-play-state:paused!important}
@media(max-width:650px){
 .site-header{gap:10px!important;flex-wrap:wrap;padding:14px 16px!important;position:relative!important;background:#f8f6f2}
 .site-header .brand-crop{width:150px!important;height:48px!important;flex:0 0 150px;transform:none;margin:0}
 .site-header .home-nav{margin-left:auto}.site-header .products-nav{margin:0}
 .site-header .contact-open{font-size:10px;padding:9px 11px}
 .products-artwork-page .site-header{min-height:72px;background:#fff}
 .products-artwork-page .approved-products-artwork{padding:8px 8px 24px}
 .products-artwork-page .popart-artboard{width:100%;aspect-ratio:3/2}
 .popart-controls{flex-wrap:wrap;gap:8px;font-size:8px;letter-spacing:.3px}
 .site-footer{padding:24px 18px 78px;gap:16px;align-items:center}
 .site-footer .play-crop{width:112px;height:38px}.site-footer small{width:auto;margin-left:auto}
 .hero-copy{top:10%;left:6%;max-width:47%}.hero-copy h1{font-size:clamp(21px,5.9vw,38px);line-height:1.24;margin:8px 0}.hero-copy p{font-size:9px;line-height:1.45}
 .scene .hint{display:none}.under{display:flex;align-items:center;padding:12px 18px;min-height:64px}.under button{margin:0;font-size:11px;min-height:44px}.under .state{font-size:10px}
 .motion-toggle{left:12px;right:auto;bottom:12px;font-size:10px}
 .products-artwork-page .site-footer{padding-bottom:76px}
 .interaction-hint{padding:0 16px;font-size:10px}
}
@media(max-width:360px){.site-header{gap:7px!important}.site-header .brand-crop{width:126px!important;flex-basis:126px}.site-header .home-nav,.site-header .products-nav{font-size:10px}.site-header .contact-open{padding:8px}.hero-copy p{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-toggle{display:none}}

/* Feather the actual glass silhouette; never re-overlay a cut-out room image. */
.scene .outside-focus,.scene.window-awake .outside-focus{display:none;opacity:0}
.scene .window-fog{
 clip-path:none;
 background:linear-gradient(120deg,#e8eff318,#eef3f52e 60%,#e4edf31c);
 backdrop-filter:blur(1.6px);-webkit-backdrop-filter:blur(1.6px);
 mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201607%20979%22%3E%3Cdefs%3E%3Cfilter%20id%3D%22soft%22%20x%3D%22-10%25%22%20y%3D%22-10%25%22%20width%3D%22120%25%22%20height%3D%22120%25%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2216%22%2F%3E%3C%2Ffilter%3E%3ClinearGradient%20id%3D%22fade%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.43%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.65%22%20stop-color%3D%22white%22%20stop-opacity%3D%22.65%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3Cmask%20id%3D%22lower%22%3E%3Crect%20width%3D%221607%22%20height%3D%22640%22%20fill%3D%22url%28%23fade%29%22%2F%3E%3C%2Fmask%3E%3CradialGradient%20id%3D%22hairFade%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22black%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22black%22%20stop-opacity%3D%22.75%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22black%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3Cmask%20id%3D%22hairSoft%22%3E%3Crect%20width%3D%221607%22%20height%3D%22979%22%20fill%3D%22white%22%2F%3E%3Cellipse%20cx%3D%22722%22%20cy%3D%22276%22%20rx%3D%22124%22%20ry%3D%2262%22%20fill%3D%22url%28%23hairFade%29%22%2F%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Cg%20mask%3D%22url%28%23hairSoft%29%22%3E%3Cg%20fill%3D%22white%22%20filter%3D%22url%28%23soft%29%22%20mask%3D%22url%28%23lower%29%22%3E%3Cpolygon%20points%3D%22421.03%2C0.00%20798.68%2C0.00%20798.68%2C273.14%20753.68%2C276.08%20724.76%2C268.25%20676.55%2C275.10%20641.19%2C306.43%20618.70%2C361.25%20620.30%2C407.26%20605.84%2C446.42%20591.38%2C478.73%20572.09%2C519.85%20560.84%2C587.40%20421.03%2C587.40%22%2F%3E%3Cpolygon%20points%3D%22874.21%2C0.00%201447.91%2C0.00%201447.91%2C530.62%201341.85%2C530.62%201319.35%2C504.19%201272.74%2C497.33%201230.96%2C494.39%201197.21%2C520.83%201190.79%2C582.50%201097.58%2C624.60%201005.98%2C624.60%20993.13%2C584.46%20983.48%2C559.99%20969.02%2C546.28%20946.52%2C553.13%20924.02%2C566.84%20906.35%2C535.51%20887.06%2C503.21%20874.21%2C494.39%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201607%20979%22%3E%3Cdefs%3E%3Cfilter%20id%3D%22soft%22%20x%3D%22-10%25%22%20y%3D%22-10%25%22%20width%3D%22120%25%22%20height%3D%22120%25%22%3E%3CfeGaussianBlur%20stdDeviation%3D%2216%22%2F%3E%3C%2Ffilter%3E%3ClinearGradient%20id%3D%22fade%22%20x1%3D%220%22%20y1%3D%220%22%20x2%3D%220%22%20y2%3D%221%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.43%22%20stop-color%3D%22white%22%2F%3E%3Cstop%20offset%3D%22.65%22%20stop-color%3D%22white%22%20stop-opacity%3D%22.65%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22white%22%20stop-opacity%3D%220%22%2F%3E%3C%2FlinearGradient%3E%3Cmask%20id%3D%22lower%22%3E%3Crect%20width%3D%221607%22%20height%3D%22640%22%20fill%3D%22url%28%23fade%29%22%2F%3E%3C%2Fmask%3E%3CradialGradient%20id%3D%22hairFade%22%3E%3Cstop%20offset%3D%220%22%20stop-color%3D%22black%22%2F%3E%3Cstop%20offset%3D%22.45%22%20stop-color%3D%22black%22%20stop-opacity%3D%22.75%22%2F%3E%3Cstop%20offset%3D%221%22%20stop-color%3D%22black%22%20stop-opacity%3D%220%22%2F%3E%3C%2FradialGradient%3E%3Cmask%20id%3D%22hairSoft%22%3E%3Crect%20width%3D%221607%22%20height%3D%22979%22%20fill%3D%22white%22%2F%3E%3Cellipse%20cx%3D%22722%22%20cy%3D%22276%22%20rx%3D%22124%22%20ry%3D%2262%22%20fill%3D%22url%28%23hairFade%29%22%2F%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Cg%20mask%3D%22url%28%23hairSoft%29%22%3E%3Cg%20fill%3D%22white%22%20filter%3D%22url%28%23soft%29%22%20mask%3D%22url%28%23lower%29%22%3E%3Cpolygon%20points%3D%22421.03%2C0.00%20798.68%2C0.00%20798.68%2C273.14%20753.68%2C276.08%20724.76%2C268.25%20676.55%2C275.10%20641.19%2C306.43%20618.70%2C361.25%20620.30%2C407.26%20605.84%2C446.42%20591.38%2C478.73%20572.09%2C519.85%20560.84%2C587.40%20421.03%2C587.40%22%2F%3E%3Cpolygon%20points%3D%22874.21%2C0.00%201447.91%2C0.00%201447.91%2C530.62%201341.85%2C530.62%201319.35%2C504.19%201272.74%2C497.33%201230.96%2C494.39%201197.21%2C520.83%201190.79%2C582.50%201097.58%2C624.60%201005.98%2C624.60%20993.13%2C584.46%20983.48%2C559.99%20969.02%2C546.28%20946.52%2C553.13%20924.02%2C566.84%20906.35%2C535.51%20887.06%2C503.21%20874.21%2C494.39%22%2F%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E");
 mask-composite:add;-webkit-mask-composite:source-over;
 mask-size:100% 100%;-webkit-mask-size:100% 100%;
 mask-repeat:no-repeat;-webkit-mask-repeat:no-repeat;
}
.scene .window-rivulets{
 mask-image:linear-gradient(to bottom,#000 0%,#000 35%,#0009 48%,transparent 65%);
 -webkit-mask-image:linear-gradient(to bottom,#000 0%,#000 35%,#0009 48%,transparent 65%);
}



/* Hover swings the paper in place. Only a click expands the outer wrapper. */
.png-periodic-poster{position:absolute;left:91.45%;top:33.8%;width:6%;height:12%;border:0;padding:0;background:#efe4cf;z-index:8;cursor:zoom-in;box-shadow:1px 2px 4px #291b2440}
.png-chart-paper{position:absolute;right:0;top:0;display:block;width:100%;pointer-events:none;transition:width 1.5s cubic-bezier(.22,.65,.3,1);}
.png-chart-paper>img{display:block;width:100%;height:auto;max-width:none;outline:2px solid #efe4cf;box-shadow:0 2px 6px #160f2230;transform-origin:99% 0%;transform:rotate(0deg)}
.png-periodic-poster:is(:hover,:focus-visible):not(.is-pinned) .png-chart-paper>img{animation:chart-gravity-drop 2.2s cubic-bezier(.25,.1,.3,1) both,chart-gravity-rest 4.8s 2.2s ease-in-out infinite}
.png-periodic-poster.is-pinned{cursor:zoom-out}
.png-periodic-poster.is-pinned .png-chart-paper{width:750%}
.png-periodic-poster.is-pinned .png-chart-paper>img{box-shadow:0 12px 30px #160f223d}
/* Negative rotation about the upper-right pin lowers the free left edge.
   All angles stay below the original horizontal position; no upward flap. */
@keyframes chart-gravity-drop{
 0%{transform:rotate(0deg)}
 28%{transform:rotate(-15deg)}
 51%{transform:rotate(-7deg)}
 73%{transform:rotate(-11.5deg)}
 89%{transform:rotate(-9deg)}
 100%{transform:rotate(-10deg)}
}
@keyframes chart-gravity-rest{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(-11deg)}}
@media(prefers-reduced-motion:reduce){.png-chart-paper{transition:none}.png-chart-paper>img{animation:none!important}}

/* Independent pane controls; retain the approved feathered silhouette. */
.scene .window-fog-left{clip-path:inset(0 50.3% 0 0)}
.scene .window-fog-right{clip-path:inset(0 0 0 54.4%)}
.scene .window-play-left{clip-path:url(#gdavo-glass-left)}
.scene .window-play-right{clip-path:url(#gdavo-glass-right)}
.scene.window-awake .window-fog{opacity:1}
.scene.window-left-awake .window-fog-left,.scene.window-right-awake .window-fog-right{opacity:0}

.music-panel{background:#fffaf3;backdrop-filter:none;-webkit-backdrop-filter:none}

/* Static current homepage preview fitted inside the photographed laptop screen. */
.laptop-current-home{position:absolute;left:4.8%;top:33.75%;width:47.4%;height:43.2%;overflow:hidden;clip-path:polygon(1.2% 0,98.5% 0,100% 100%,0 100%);background:#fff;container-type:inline-size;pointer-events:none}
.mini-home-header{position:absolute;inset:0 0 auto;height:13.5%;background:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 5%;box-sizing:border-box}
.mini-home-header img{display:block;width:21%;height:76%;object-fit:contain}
.mini-home-header>span{font:1.2cqw/1.2 Arial,sans-serif;color:#655873}
.mini-home-scene{position:absolute;inset:13.5% 0 0;background:#e7d8c4;overflow:hidden}
.mini-home-room{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}
.mini-home-copy{position:absolute;left:7%;top:23%;color:#403562}
.mini-home-copy:before{content:'';position:absolute;inset:-25% -16%;background:radial-gradient(ellipse,#fff8edb5,transparent 70%)}
.mini-home-copy h2{position:relative;font:400 5.5cqw/1.1 Georgia,serif;letter-spacing:-.045em;margin:0 0 2.5cqw}
.mini-home-copy p{position:relative;font:1.3cqw/1.5 Arial,sans-serif;margin:0;color:#645575}
.mini-home-crystal{position:absolute;left:73.8%;top:41.5%;width:6.4%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 25% 25%,#fff,#c8f1ffba 15%,#b6a2f0a6 48%,#f1d4ffdd 70%,#f7e3bb);box-shadow:inset 0 0 2px #fff,0 0 5px #d8c7ff66}
.mini-home-chart{position:absolute;left:91.45%;top:33.8%;width:6%;height:auto;outline:1px solid #efe4cf}
.laptop-ink-screen{z-index:2}

/* Keep the original edge-to-edge laptop composition without a white header. */
.laptop-current-home .mini-home-header{display:none}
.laptop-current-home .mini-home-scene{inset:0}
.laptop-current-home{background:transparent;clip-path:polygon(1.2% 0,98.5% 0,100% 100%,0 100%)}

/* Match the original small laptop wordmark, without restoring a header strip. */
.laptop-current-home .mini-home-header{display:block;position:absolute;left:8%;top:4%;right:auto;bottom:auto;width:15%;height:8%;padding:0;background:transparent;z-index:2}
.laptop-current-home .mini-home-header img{display:block;width:100%;height:100%;object-fit:contain}
.laptop-current-home .mini-home-header>span{display:none}

/* Keep the approved lower-right mark intact; its original pink star appears once. */
.laptop-ink-logo .ink-reveal{opacity:1;clip-path:none}
.laptop-ink-logo .ink-toss-star,.laptop-ink-logo .ink-spark{display:none!important}

/* Split the existing logo into its original body and original star, with no extra glyph. */
.laptop-ink-logo .ink-reveal{display:block;overflow:visible}
.ink-logo-art{position:absolute;left:0;top:50%;width:100%;aspect-ratio:1983/793;transform:translateY(-50%)}
.ink-logo-art>img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;object-fit:fill}
.ink-mark-base{mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201983%20793%22%3E%3Cdefs%3E%3Cmask%20id%3D%22m%22%3E%3Crect%20width%3D%221983%22%20height%3D%22793%22%20fill%3D%22white%22%2F%3E%3Crect%20x%3D%22705%22%20y%3D%2224%22%20width%3D%22280%22%20height%3D%22287%22%20fill%3D%22black%22%2F%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Crect%20width%3D%221983%22%20height%3D%22793%22%20fill%3D%22white%22%20mask%3D%22url%28%23m%29%22%2F%3E%3C%2Fsvg%3E");-webkit-mask-image:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%201983%20793%22%3E%3Cdefs%3E%3Cmask%20id%3D%22m%22%3E%3Crect%20width%3D%221983%22%20height%3D%22793%22%20fill%3D%22white%22%2F%3E%3Crect%20x%3D%22705%22%20y%3D%2224%22%20width%3D%22280%22%20height%3D%22287%22%20fill%3D%22black%22%2F%3E%3C%2Fmask%3E%3C%2Fdefs%3E%3Crect%20width%3D%221983%22%20height%3D%22793%22%20fill%3D%22white%22%20mask%3D%22url%28%23m%29%22%2F%3E%3C%2Fsvg%3E");mask-size:100% 100%;-webkit-mask-size:100% 100%}
.ink-original-star{clip-path:inset(3.03% 50.33% 60.78% 35.55%);transform-origin:42.5% 21%;pointer-events:none}
.laptop-ink-screen:is(:hover,:focus-visible,.ink-active) .ink-original-star{animation:ink-star-arrive .95s 3s cubic-bezier(.2,.75,.3,1) both}
@keyframes ink-star-arrive{0%{opacity:0;transform:translate(-85%,-110%) rotate(-155deg) scale(.5)}12%{opacity:1}65%{transform:translate(-2%,-5%) rotate(10deg) scale(1.08)}84%{transform:translate(1%,1%) rotate(-4deg) scale(.96)}100%{opacity:1;transform:translate(0,0) rotate(0) scale(1)}}
@media(prefers-reduced-motion:reduce){.ink-original-star{animation:none!important}}
