/* Product demonstrations: retained interactions with a shared visual scale. */
.spotlight-media{height:300px;position:relative;overflow:hidden;border-radius:12px;background:var(--soft)}.spotlight-media>img{width:100%;height:100%;object-fit:cover;object-position:50% 42%;transition:transform .35s ease}.media-pill{position:absolute;top:14px;left:14px;max-width:calc(100% - 28px);display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;line-height:1.5;color:#fff;background:#23383bf2;border:1px solid #ffffff38;border-radius:8px;padding:8px 11px;z-index:2}.media-pill .icon{width:16px;height:16px}.media-control{position:absolute;bottom:16px;left:16px;right:16px;display:flex;gap:8px;align-items:center;padding:11px 13px;border:1px solid #ffffff80;background:#fffffff5;color:#26333c;border-radius:8px;text-align:left;font-size:14px;font-weight:600;line-height:1.6;min-height:46px;z-index:2}.media-control>.icon{width:16px;color:#a83800}.media-control>b{font-size:19px;margin-left:auto;font-weight:500;line-height:1}.media-control:hover{background:#fff}.detail-media.is-zoomed>img{transform:scale(1.75);transform-origin:49% 35%}.detail-reticle{position:absolute;left:43%;top:26%;width:21%;height:32%;pointer-events:none}.detail-reticle i{position:absolute;width:15px;height:15px;border:2px solid #ffffffd9}.detail-reticle i:nth-child(1){top:0;left:0;border-bottom:0;border-right:0}.detail-reticle i:nth-child(2){top:0;right:0;border-bottom:0;border-left:0}.detail-reticle i:nth-child(3){bottom:0;left:0;border-top:0;border-right:0}.detail-reticle i:nth-child(4){bottom:0;right:0;border-top:0;border-left:0}.is-zoomed .detail-reticle{opacity:0}.cleanup-media>img{object-position:center 57%}.selection-demo{position:absolute;top:41%;left:25%;width:52%;height:23%;border:2px dashed #fff4dc;border-radius:12px;background:#8e3700e6;color:#fff;display:flex;align-items:center;justify-content:center;transform:rotate(-5deg);box-shadow:0 0 0 6px #f3892428}.selection-demo>span{font-size:15px;font-weight:650;letter-spacing:.5px;text-shadow:0 1px 4px #0009}.selection-demo>i{position:absolute;bottom:-15px;right:-14px;width:32px;height:32px;display:grid;place-items:center;background:#cf4500;border:2px solid #fff;border-radius:50%}.selection-demo .icon{width:16px}.video-selection{top:24%;left:35%;width:51%;height:20%;transform:none}.demo-caption{font-size:14px;font-weight:500;line-height:1.75;color:var(--muted);background:var(--soft);border-radius:8px;padding:12px;margin-top:10px}
.clipping-media>img{object-position:50% 45%}.clipping-media:after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#142123ed);pointer-events:none}.clip-caption{position:absolute;left:18px;right:18px;bottom:101px;display:flex;justify-content:space-between;gap:12px;align-items:center;color:#fff;z-index:1;font-size:20px;line-height:1.5;font-weight:600}.clip-time{font-size:14px;font-weight:600;white-space:nowrap;background:#1b3037eb;padding:4px 8px;border-radius:6px}.clip-storyboard{position:absolute;bottom:18px;left:18px;right:18px;display:flex;gap:8px;z-index:2;border:1px solid #ffffff55;border-radius:10px;padding:7px;background:#203238d9;overflow:hidden}.clip-storyboard button{min-width:0;flex:1;height:51px;position:relative;background:#263834;border:2px solid transparent;border-radius:6px;padding:0;overflow:hidden;opacity:.8;transition:opacity .2s,border-color .2s}.clip-storyboard button[aria-pressed=true]{border-color:#ffb466;opacity:1}.clip-storyboard button:hover{opacity:1}.clip-storyboard img{width:100%;height:100%;object-fit:cover}.clip-storyboard button>span{position:absolute;right:4px;bottom:2px;color:#fff;background:#1b3037ed;border-radius:3px;padding:1px 5px;font-size:13px;font-weight:600}.clip-storyboard button:focus-visible{outline-offset:-4px}.timeline-sweep{position:absolute;top:5px;bottom:5px;left:5%;width:2px;background:#fff8;pointer-events:none}.clip-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:16px 3px 4px;font-size:14px;font-weight:600;line-height:1.6}.clip-steps>span{display:flex;gap:7px;align-items:center;min-width:0}.clip-steps b{display:grid;place-items:center;flex-shrink:0;width:26px;height:26px;font-size:13px;font-weight:600;background:var(--orange-soft);color:var(--orange-strong);border-radius:7px}
@media(max-width:1100px){.clip-steps>span{flex-direction:column;text-align:center}.demo-panel{min-height:448px}}
@media(max-width:900px){.demo-panel{min-height:0}.spotlight-media{height:340px}}
@media(max-width:600px){.spotlight-media{height:280px}.media-pill{left:10px;top:10px;padding:7px 9px;max-width:calc(100% - 20px)}.media-control{left:12px;right:12px;font-size:14px}.selection-demo>span{font-size:13px}.clip-caption{font-size:18px;left:14px;right:14px}.clip-time{font-size:13px}.clip-steps{gap:6px}.clip-storyboard{left:12px;right:12px;gap:6px}}
@media(prefers-reduced-motion:no-preference){[data-motion=on] .timeline-sweep{animation:timeline-travel 7s ease-in-out infinite}}
@keyframes timeline-travel{0%,15%{left:5%;opacity:0}20%{opacity:1}80%{opacity:1}95%,100%{left:94%;opacity:0}}
/* User-supplied folded-ribbon identity, adapted as a lightweight web vector. */

.brand-story{padding-top:0;padding-bottom:0;scroll-margin-top:100px}
.brand-story>.section-heading{margin-bottom:44px}.brand-story .section-heading h2{margin-top:16px}
.story-panel{display:grid;grid-template-columns:.85fr 1.15fr;border:1px solid var(--line);border-radius:var(--radius-xl);overflow:hidden;background:var(--surface)}
.story-identity{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:62px 30px;background:radial-gradient(ellipse at 50% 38%,#fffaf0 0,#fff2d5 50%,#fce5c8 100%);color:#2d3838;text-align:center}
.story-identity:before,.story-identity:after{content:'';position:absolute;z-index:-1;width:640px;height:230px;left:50%;border-radius:50%;transform:translateX(-50%) rotate(-12deg);bottom:-155px;background:#ffffff6b}
.story-identity:after{bottom:-190px;transform:translateX(-50%) rotate(12deg);background:#fffaf1}
.story-emblem{width:222px;height:222px;position:relative;display:grid;place-items:center;margin-bottom:20px}
.story-emblem:before{content:'';position:absolute;inset:17px;border:1px solid #ecb4584d;border-radius:50%;background:#fffdf466;box-shadow:0 12px 45px -20px #d5923755}
.story-emblem img{position:relative;width:130px;height:130px;filter:drop-shadow(0 7px 12px #f2a63722)}
.story-orbit{position:absolute;inset:0;border:1px solid #efc99275;border-radius:50%;transform:rotate(-30deg)}
.story-orbit:before{content:'';position:absolute;top:17px;left:28px;width:12px;height:12px;border-radius:50%;background:#ffc260;box-shadow:0 0 0 6px #fff4dd}
.story-wordmark{font-size:43px;font-weight:800;line-height:1.2;letter-spacing:-1.8px;color:#202020}[data-theme=dark] .story-wordmark{color:#f7f7f5}
.story-companion{font-size:16px;font-weight:500;line-height:1.75;margin-top:14px;color:#596052}
.story-symbol{margin-top:39px;font-size:14px;line-height:1.8;color:#805521;font-weight:500}
.story-copy{padding:40px;display:flex;flex-direction:column;justify-content:center}
.story-copy h3{font-size:var(--font-h3);line-height:1.5;letter-spacing:-.5px;margin-bottom:23px;text-align:center}
.story-copy>p{font-size:16px;line-height:1.8;color:var(--muted)}
.story-copy>p+p{margin-top:18px}.story-copy>.story-closing{color:var(--text);font-weight:600;margin-top:25px}
.story-values{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:28px;padding-top:22px;border-top:1px solid var(--line);font-size:14px;font-weight:500;line-height:1.7;color:var(--muted)}
.story-values li{display:flex;align-items:center;gap:8px}.story-values li:before{content:'';width:6px;height:6px;border-radius:50%;background:#f7a345;flex-shrink:0}
.footer-main>div>a.story-footer-link{display:inline-flex;align-items:center;gap:8px;margin-top:16px;color:var(--orange-strong);font-weight:600}.story-footer-link .icon{width:15px;height:15px}
[data-theme=dark] .story-identity{background:radial-gradient(ellipse at 50% 35%,#55422a 0,#39362b 50%,#2b3330 100%);color:#fff7e9}
[data-theme=dark] .story-emblem:before{background:#ffe3b00a;border-color:#efbd6755;box-shadow:0 12px 45px -20px #0005}
[data-theme=dark] .story-orbit{border-color:#efc99230}[data-theme=dark] .story-orbit:before{box-shadow:0 0 0 6px #493f2c}
[data-theme=dark] .story-companion{color:#ded8c9}[data-theme=dark] .story-symbol{color:#f7cb92}
[data-theme=dark] .story-identity:before{background:#ffffff06}[data-theme=dark] .story-identity:after{background:#ffffff05}
@media(prefers-reduced-motion:no-preference){[data-motion=on] .story-orbit{animation:story-orbit 24s ease-in-out infinite alternate}}
@keyframes story-orbit{from{transform:rotate(-30deg)}to{transform:rotate(35deg)}}
@media(max-width:1050px){.story-copy{padding:40px 32px}.story-copy h3{font-size:var(--font-h3)}.story-identity{padding:45px 24px}}
@media(max-width:750px){.brand img{width:40px;height:34px}.brand-wordmark{font-size:25px}.brand-story{padding-top:0;padding-bottom:0}.story-panel{grid-template-columns:1fr;border-radius:22px}.story-identity{padding:37px 23px 40px}.story-emblem{width:172px;height:172px;margin-bottom:15px}.story-emblem img{width:104px;height:104px}.story-orbit:before{top:11px;left:25px;width:10px;height:10px}.story-wordmark{font-size:36px}.story-symbol{margin-top:23px}.story-copy{padding:32px 26px}.story-copy h3{font-size:var(--font-h3)}.story-values{gap:12px 17px}.story-copy>p{font-size:16px;line-height:1.95}.story-companion{font-size:15px}}
@media(max-width:365px){.story-copy{padding:30px 21px}.story-copy h3{font-size:var(--font-h3)}.story-values{gap:12px}.story-values li{gap:6px}}

@media(max-width:900px){.story-panel{grid-template-columns:1fr}.story-identity{padding:40px 24px}.story-copy{padding:32px}.story-emblem{width:172px;height:172px}.story-emblem img{width:104px;height:104px}}

/* Keep the product portrait smile clear of the lower preview control. */
.detail-media>img{object-position:40% 42%}
.detail-media.is-zoomed>img{transform-origin:38% 44%}
.detail-media .detail-reticle{left:28%;top:28%;width:24%;height:36%}

/* Core VoriPhoto background demo: a shared cutout preserves every subject pixel. */
.background-comparison{position:relative;aspect-ratio:3/2;overflow:hidden;isolation:isolate;border-radius:12px;background:#ede5da}
.background-layer{position:absolute;inset:0;overflow:hidden}
.background-setting{position:absolute;inset:0;background:#eee9df}
.background-comparison[data-background=apricot] .background-setting{background:#f4c6a4}
.background-comparison[data-background=studio] .background-setting{background:linear-gradient(145deg,#f8e9cc 0%,#e9c9a5 65%,#dab08c 100%)}
.background-comparison[data-background=studio] .background-setting:before{content:'';position:absolute;inset:-30% 8% 8% 30%;background:repeating-linear-gradient(105deg,transparent 0 19%,#fff9e7a6 20% 31%,transparent 32% 45%);filter:blur(3px);transform:rotate(-16deg)}
.background-comparison[data-background=studio] .background-setting:after{content:'';position:absolute;left:0;right:0;bottom:0;height:25%;background:linear-gradient(#d6b18b,#e8c9a9);box-shadow:0 -1px 0 #ffffff40}
.background-original{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.background-layer:after{content:'';position:absolute;left:29%;right:25%;bottom:10%;height:5%;border-radius:50%;background:#36281c44;filter:blur(9px)}
.background-layer .background-subject{position:absolute;z-index:1;left:20%;top:12%;width:60%;height:78%;object-fit:contain;display:block}
.background-before{clip-path:inset(0 calc(100% - var(--background-position)) 0 0)}
.background-labels{position:absolute;inset:14px 14px auto;display:flex;justify-content:space-between;gap:8px;pointer-events:none;z-index:2}
.background-labels span{padding:6px 10px;border:1px solid #ffffff38;border-radius:7px;background:#1e2128ed;color:#fff;font-size:13px;font-weight:600;line-height:1.5}
.background-labels span:last-child{background:#883700ed}
.background-divider{position:absolute;z-index:2;left:var(--background-position);top:0;bottom:0;width:2px;background:#fff;pointer-events:none;box-shadow:0 0 6px #0003}
.background-divider>span{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;gap:6px;width:42px;height:42px;border-radius:50%;border:1px solid #ffcba9;background:#fff;color:#b6440b;font-size:27px;box-shadow:0 3px 14px #0003}
.background-divider i{width:1px;height:12px;background:#e2d9d2}
.background-range{position:absolute;inset:0;z-index:3;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.background-comparison:has(.background-range:focus-visible){outline:3px solid var(--orange-strong);outline-offset:3px}
.background-comparison:has(.background-range:focus-visible) .background-divider>span{outline:3px solid #ff791d;outline-offset:3px}
.background-options{display:flex;gap:8px;padding:16px 2px 0}
.background-options button{display:flex;align-items:center;justify-content:center;gap:7px;flex:1;min-width:0;min-height:44px;padding:8px 6px;border:1px solid var(--line);border-radius:8px;background:var(--soft);color:var(--text);font-size:13px;font-weight:600;cursor:pointer}
.background-options button[aria-pressed=true]{border-color:var(--orange-strong);background:var(--surface);box-shadow:inset 0 0 0 1px var(--orange-strong)}
.background-options button:focus-visible{outline:2px solid var(--orange-strong);outline-offset:3px}
.background-swatch{display:inline-block;flex-shrink:0;width:18px;height:18px;border-radius:50%;border:1px solid #0002;background:#eee9df}
.background-swatch.apricot{background:#f4c6a4}.background-swatch.studio{background:linear-gradient(125deg,#efcc9e 40%,#fff7df 41% 59%,#d6af86 60%)}
.background-hint{margin:10px 0 0;text-align:center;font-size:13px;line-height:1.6;color:var(--muted)}
.background-showcase .enhance-caption{padding-top:16px}
@media(max-width:600px){.background-labels{inset:10px 8px auto;gap:4px}.background-labels span{font-size:13px;padding:5px 7px}.background-divider>span{width:36px;height:36px;font-size:24px}.background-options{gap:6px;padding-top:12px}.background-options button{font-size:13px;gap:5px;padding:8px 4px}.background-swatch{width:14px;height:14px}}

/* Scoped to the core VoriPhoto enhancement tab; HERO comparisons stay independent. */
.enhance-comparison{position:relative;aspect-ratio:3/2;overflow:hidden;isolation:isolate;border-radius:12px;background:var(--soft)}
.enhance-layer{position:absolute;inset:0;overflow:hidden}
.enhance-layer img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
.enhance-before{clip-path:inset(0 calc(100% - var(--enhance-position)) 0 0)}
.enhance-showcase.is-illustration .enhance-before img{filter:blur(1.5px)}
.enhance-labels{position:absolute;inset:14px 14px auto;display:flex;justify-content:space-between;gap:8px;pointer-events:none}
.enhance-labels span{padding:6px 10px;border:1px solid #ffffff38;border-radius:7px;background:#1e2128e6;color:#fff;font-size:13px;font-weight:600;line-height:1.5}
.enhance-labels span:last-child{background:#883700eb}
.enhance-divider{position:absolute;left:var(--enhance-position);top:0;bottom:0;width:2px;background:#fff;pointer-events:none;box-shadow:0 0 6px #0002}
.enhance-divider>span{position:absolute;left:50%;top:58%;transform:translate(-50%,-50%);display:flex;justify-content:center;align-items:center;gap:6px;width:42px;height:42px;border-radius:50%;border:1px solid #ffe2cd;background:#fff;color:#b6440b;font-size:27px;box-shadow:0 3px 14px #0003}
.enhance-divider i{width:1px;height:12px;background:#e2d9d2}
.enhance-range{position:absolute;inset:0;z-index:2;width:100%;height:100%;margin:0;opacity:0;cursor:ew-resize;touch-action:pan-y}
.enhance-comparison:has(.enhance-range:focus-visible){outline:3px solid var(--orange-strong);outline-offset:3px}
.enhance-comparison:has(.enhance-range:focus-visible) .enhance-divider>span{outline:3px solid #ff791d;outline-offset:3px}
.enhance-caption{padding:20px 12px 0}
.enhance-caption h4{font-size:20px;line-height:1.45;font-weight:650;letter-spacing:-.3px;color:var(--text);margin:0}
.enhance-caption p{font-size:15px;line-height:1.7;color:var(--muted);margin:8px 0 0}
.enhance-details{margin:16px 12px 0;border-top:1px solid var(--line)}
.enhance-details summary{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;padding:10px 0;font-size:14px;font-weight:600;color:var(--text);cursor:pointer}
.enhance-details summary>span{font-size:20px;color:var(--orange-strong)}
.enhance-details[open] summary>span{transform:rotate(45deg)}
.enhance-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:4px 0 12px}
.enhance-detail-grid figure{min-width:0;margin:0}
.enhance-crop{height:145px;overflow:hidden;border-radius:8px;background:var(--soft)}
.enhance-crop img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(2.25);transform-origin:50% 34%}
.enhance-showcase.is-illustration .enhance-crop-before img{filter:blur(1.2px)}
.enhance-detail-grid figcaption{font-size:13px;font-weight:600;line-height:1.5;color:var(--muted);margin-top:8px;text-align:center}
.enhance-evidence{font-size:13px;line-height:1.7;color:var(--muted);padding:0 12px;margin:10px 0 0}
@media(max-width:600px){.enhance-labels{inset:10px 9px auto;gap:4px}.enhance-labels span{font-size:13px;padding:5px 7px}.enhance-divider>span{width:36px;height:36px;font-size:24px}.enhance-showcase.is-illustration .enhance-before img{filter:blur(1.15px)}.enhance-caption{padding:18px 8px 0}.enhance-caption h4{font-size:19px}.enhance-caption p{font-size:14px}.enhance-details{margin-inline:8px}.enhance-details summary{font-size:13px}.enhance-evidence{padding-inline:8px}.enhance-crop{height:116px}}
