/* UPMD / AI production. Neutral surfaces, photographic examples, native controls. */
.ai-page{--ai-measure:var(--collection-width,102.5rem);background:var(--ink);color:var(--paper)}
.ai-page>.breadcrumbs,.ai-hero,.ai-options,.ai-image-note,.ai-format,.ai-process,.ai-questions,.ai-related,.ai-closing{padding-inline:max(var(--gutter),calc((100% - var(--ai-measure))/2))}
.ai-hero{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:4vw;align-items:center;padding-top:3rem;padding-bottom:4rem;overflow:hidden}
.ai-hero-copy{position:relative;z-index:1}
.ai-hero .v-kicker{font-size:.8125rem;letter-spacing:.09em;line-height:1.6;margin-bottom:1.6rem}
.ai-hero h1{font:700 clamp(3.8rem,6.5vw,7.3rem)/.95 var(--display);letter-spacing:-.045em;margin:0 0 .5rem}
.ai-hero-statement{font:600 clamp(2.4rem,3.9vw,4.6rem)/1.04 var(--display);letter-spacing:-.03em;max-width:14ch;color:#bcbcbc}
.ai-hero-intro{font-size:1rem;line-height:1.8;max-width:35rem;margin:1.6rem 0 1.8rem;color:#d1d1d1}
.ai-hero .v-button{font-size:1rem;min-height:56px;padding:1.1rem 1.4rem}
.ai-location{font-size:.8125rem;line-height:1.6;letter-spacing:.06em;color:#a7a7a7;margin-top:1.8rem}
.ai-hero-image{align-self:stretch;position:relative;margin:0;min-height:31rem;background:#191919;overflow:hidden}
.ai-hero-image img{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:55% 50%}
.ai-hero-image:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0b0b0b30,transparent 38%),linear-gradient(0deg,#0b0b0baf,transparent 40%);pointer-events:none}
.ai-hero-image figcaption{position:absolute;z-index:1;bottom:1.5rem;left:1.5rem;right:1.5rem;font-size:.8125rem;line-height:1.5;letter-spacing:.06em;color:white}
.ai-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding-block:1.5rem;border-top:1px solid #ffffff28;border-bottom:1px solid #ffffff28;gap:1.5rem}
.ai-options a{display:grid;grid-template-columns:2rem 1fr;gap:.65rem 1rem;padding:1.1rem;min-width:0;color:inherit;text-decoration:none;border:1px solid #ffffff22;transition:border-color .4s,transform .4s}
.ai-options a>span{font-size:.8125rem;color:#9a9a9a;grid-row:1/3;padding-top:.45rem}
.ai-options strong{font:600 clamp(1.5rem,2.2vw,2.5rem)/1.08 var(--display)}
.ai-options small{font-size:.875rem;color:#bcbcbc}
.ai-options a:hover,.ai-options a:focus-visible{border-color:#ffffff8f}
.ai-image-note{font-size:.8125rem;line-height:1.8;color:#a7a7a7;padding-top:1.5rem;padding-bottom:2.2rem;margin:0}
.ai-format{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,6vw,7rem);padding-block:5rem;border-top:1px solid #ffffff25;scroll-margin-top:6rem}
.ai-format--1,.ai-format--3{background:var(--paper);color:var(--ink);color-scheme:light;border-color:#0002}
.ai-format--1{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}
.ai-format--2 .ai-format-copy{grid-column:2;grid-row:1}
.ai-format--2 .ai-comparison{grid-column:1;grid-row:1}
.ai-format-copy .v-kicker{font-size:.8125rem;letter-spacing:.08em;line-height:1.5;margin:0 0 1.5rem;opacity:.7}
.ai-format h2{font:600 clamp(2.7rem,4vw,4.6rem)/1.02 var(--display);letter-spacing:-.035em;max-width:19ch;margin:0 0 1.6rem}
.ai-format-copy p:not(.v-kicker){font-size:1rem;line-height:1.8;max-width:38rem;margin:0 0 1rem}
.ai-format-copy p.ai-format-line{font-size:1.15rem;font-weight:600;line-height:1.5;margin-bottom:1.2rem}
.ai-format-detail{opacity:.72}
.ai-uses{display:flex;flex-wrap:wrap;list-style:none;gap:.5rem;padding:0;margin:1.8rem 0 0}
.ai-uses li{font-size:.875rem;line-height:1.5;border:1px solid currentColor;padding:.4rem .7rem;opacity:.78}
.ai-campaign{margin:0;min-width:0}
.ai-campaign img{width:100%;height:auto;display:block;aspect-ratio:16/9;object-fit:cover}
.ai-campaign figcaption{font-size:.8125rem;line-height:1.6;letter-spacing:.04em;padding-top:.9rem;opacity:.7}
.ai-comparison{margin:0 auto;width:100%;max-width:34rem;min-width:0}
.ai-comparison-media{position:relative;overflow:hidden;background:#242424;border:1px solid #8883}
.ai-comparison-media>.ai-comparison-source{display:block;width:100%;height:auto;max-width:none}
.ai-comparison-after,.ai-comparison-line{display:none}
.ai-comparison.is-ready .ai-comparison-media{aspect-ratio:793/992;cursor:ew-resize;touch-action:pan-y;user-select:none;-webkit-user-select:none}
.ai-comparison.is-ready .ai-comparison-media img{pointer-events:none}
.ai-comparison.is-ready .ai-comparison-source{position:absolute;inset:0;width:200%;height:100%;object-fit:fill}
.ai-comparison.is-ready .ai-comparison-after{display:block;position:absolute;inset:0;clip-path:inset(0 0 0 var(--compare-split,50%));overflow:hidden}
.ai-comparison-after img{position:absolute;left:0;top:0;width:200%;height:100%;max-width:none;object-fit:fill;transform:translateX(-50%)}
.ai-comparison.is-ready .ai-comparison-line{display:block;position:absolute;top:0;bottom:0;left:var(--compare-split,50%);width:2px;background:#fff;transform:translateX(-1px);box-shadow:0 0 12px #0005;pointer-events:none}
.ai-comparison-line i{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:2.7rem;height:2.7rem;border-radius:50%;background:#ededed;color:#101010;border:1px solid #0003;font-size:1rem;font-style:normal;box-shadow:0 3px 20px #0003}
.ai-comparison figcaption{display:flex;justify-content:space-between;gap:1rem;font-size:.875rem;line-height:1.5;padding-block:1rem;border-bottom:1px solid #8885}
.ai-comparison figcaption>span:last-child{text-align:right}
.ai-comparison-controls[hidden]{display:none}
.ai-comparison-controls{margin-top:1rem}
.ai-comparison-controls label{display:block;font-size:.875rem;line-height:1.6;opacity:.8}
.ai-comparison-controls input{display:block;width:100%;min-height:44px;margin:.3rem 0 0;padding:0;accent-color:#aaa;cursor:ew-resize}
.ai-comparison-controls input:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.ai-comparison:focus-within .ai-comparison-media{outline:2px solid currentColor;outline-offset:4px}
.ai-comparison:active{filter:none}
.ai-comparison-note{font-size:.8125rem;line-height:1.6;opacity:.68;margin:.7rem 0 0}
.ai-process{padding-block:5rem;background:#171717}
.ai-process header{max-width:58rem}
.ai-process .v-kicker{font-size:.8125rem;color:#aaa;margin-bottom:1.3rem}
.ai-process h2{font:600 clamp(2.5rem,4vw,4.5rem)/1.04 var(--display);letter-spacing:-.03em}
.ai-process ol{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem;list-style:none;padding:0;margin:3rem 0 0}
.ai-process li{padding-top:1.2rem;border-top:1px solid #ffffff45}
.ai-process li>span{font-size:.875rem;color:#aaa}
.ai-process h3{font:600 clamp(1.8rem,2.5vw,2.7rem)/1.15 var(--display);margin:1.2rem 0 .8rem}
.ai-process li>p{font-size:1rem;line-height:1.8;color:#bcbcbc;max-width:28rem}
.ai-questions{padding-block:4.5rem;background:var(--paper);color:var(--ink);color-scheme:light}
.ai-questions .editorial-faq{max-width:100%}
.ai-questions .editorial-faq h2{font-size:clamp(2.7rem,4vw,4.5rem);line-height:1.1;margin-bottom:2.5rem}
.ai-questions .editorial-faq details{border-color:#0003}
.ai-questions .editorial-faq summary{font-size:1.0625rem;line-height:1.6;padding-block:1.4rem}
.ai-questions .editorial-faq details p{font-size:1rem;line-height:1.85;max-width:58rem;color:#414141}
.ai-questions [data-spotlight] .cursor-light{background:#ffffff85;border-color:#00000018}
.ai-related{background:var(--paper);color:var(--ink);border-top:1px solid #0002;gap:1.3rem;padding-block:2rem}
.ai-related>a{font-size:1rem}
.ai-closing{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:3rem;align-items:center;padding-block:5rem}
.ai-closing .v-kicker{font-size:.8125rem;color:#aaa;margin-bottom:1.5rem}
.ai-closing h2{font:600 clamp(3rem,5vw,5rem)/1 var(--display);letter-spacing:-.035em}
.ai-closing p:not(.v-kicker){font-size:1rem;line-height:1.8;max-width:40rem;margin-top:1.2rem;color:#bcbcbc}
.ai-closing p.ai-coverage{font-size:.875rem;color:#8f8f8f}
.ai-closing .v-button{white-space:normal;font-size:1rem;max-width:22rem}
.ai-page .v-button{transition:background .3s,transform .4s}
.ai-page .v-button:hover{background:#fff}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){html:not(.reduced-motion) .ai-options a:hover,html:not(.reduced-motion) .ai-page .v-button:hover{transform:translateY(-3px)}}
@media(max-width:1050px){
 .ai-hero{grid-template-columns:1fr 1fr;gap:2rem}
 .ai-hero h1{font-size:4.5rem}.ai-hero-statement{font-size:3.1rem}
 .ai-hero-image{min-height:32rem}
 .ai-format{gap:2rem}.ai-format h2{font-size:3rem}
 .ai-options{gap:.7rem}.ai-options a{grid-template-columns:1fr;gap:.5rem}.ai-options a>span{grid-row:auto}
 .ai-closing{grid-template-columns:1fr;gap:2rem}
}
@media(max-width:700px){
 .ai-hero{grid-template-columns:1fr;padding-top:1.5rem;padding-bottom:2rem;gap:2rem}
 .ai-hero h1{font-size:clamp(3.7rem,13vw,5rem)}.ai-hero-statement{font-size:3rem;max-width:17ch}
 .ai-hero .v-kicker{margin-bottom:1rem}.ai-hero-image{min-height:0;aspect-ratio:16/10}
 .ai-hero-image img{object-position:50% 50%}.ai-hero-image figcaption{left:1rem;bottom:1rem;font-size:.75rem}
 .ai-options{grid-template-columns:1fr;padding-block:1.2rem;gap:.65rem}
 .ai-options a{grid-template-columns:1.8rem 1fr;padding:1rem}.ai-options a>span{grid-row:1/3}
 .ai-options strong{font-size:1.8rem}.ai-options small{font-size:.875rem}
 .ai-image-note{padding-bottom:1.5rem}
 .ai-format,.ai-format--1{grid-template-columns:1fr;padding-block:3rem;gap:2rem}
 .ai-format--2 .ai-format-copy,.ai-format--2 .ai-comparison{grid-column:auto;grid-row:auto}
 .ai-format h2{font-size:2.9rem;max-width:21ch}.ai-format-copy .v-kicker{margin-bottom:1rem}
 .ai-comparison{max-width:29rem}.ai-process,.ai-questions,.ai-closing{padding-block:3rem}
 .ai-process ol{grid-template-columns:1fr;gap:2rem;margin-top:2rem}.ai-process h2{font-size:2.8rem}
 .ai-process h3{font-size:2.3rem}.ai-process li>p{max-width:none}
 .ai-related{align-items:start}.ai-closing{gap:1.5rem}.ai-closing .v-button{max-width:none;justify-content:center}
}
@media print{
 .ai-hero,.ai-format,.ai-process,.ai-questions,.ai-closing{background:#fff;color:#000;break-inside:avoid}
 .ai-options,.ai-comparison-controls,.ai-comparison-line{display:none!important}
 .ai-comparison.is-ready .ai-comparison-media{aspect-ratio:auto}
 .ai-comparison.is-ready .ai-comparison-source{position:static;width:100%;height:auto}
 .ai-comparison.is-ready .ai-comparison-after{display:none}
}
