:root {
  --color-void:#000; --color-bone-white:#fff; --color-ash-gray:#9a9a9a;
  --color-silver-mist:#bdbdbd; --color-electric-iris:#8052ff;
  --color-saffron-spark:#ffb829; --color-deep-verdant:#15846e;
  --font-ppneuemontreal:'PPNeueMontreal',Arial,Helvetica,ui-sans-serif,system-ui,sans-serif;
  --color-copy:#d6d3d0; --color-line:#ffffff1c;
  --page-max-width:1360px; --gutter:clamp(24px,8.3vw,140px); color-scheme:dark;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; scroll-padding-top:100px; }
body { margin:0; background:#000; color:#fff; font-family:var(--font-ppneuemontreal); -webkit-font-smoothing:antialiased; }
button,input,textarea,select { font:inherit; }
button,a,input,textarea,select { -webkit-tap-highlight-color:transparent; }
button,a { touch-action:manipulation; }
button { cursor:pointer; color:inherit; }
a { color:inherit; text-decoration:none; }
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible { outline:2px solid #ffb829; outline-offset:6px; }
::selection { background:#8052ff; color:#fff; }
[hidden] { display:none!important; }
.universe { position:fixed; inset:0; z-index:0; pointer-events:none; overflow:hidden; background:#010102; }
.universe::before { content:""; position:absolute; inset:0; background:radial-gradient(ellipse at var(--glow-x,74%) var(--glow-y,54%),#17130f 0%,#080705 26%,#010101 55%,#000 76%); }
.universe::after { content:""; position:absolute; inset:0; opacity:.065; pointer-events:none; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='256' height='256'%3E%3Cfilter id='n' color-interpolation-filters='sRGB'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='linear' slope='8' intercept='-3.85'/%3E%3CfeFuncG type='linear' slope='8' intercept='-3.85'/%3E%3CfeFuncB type='linear' slope='8' intercept='-3.85'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Cpath fill='white' filter='url(%23n)' d='M0 0h256v256H0z'/%3E%3C/svg%3E"); mix-blend-mode:screen; }
#particle-world { position:relative; display:block; width:100%; height:100%; }
.header { position:fixed; inset:0 0 auto; z-index:10; height:100px; padding:0 clamp(24px,3.1vw,54px); display:flex; justify-content:space-between; align-items:center; background:linear-gradient(#000b,#0000); transition:background .25s; }
.header.scrolled { background:#080706c9; backdrop-filter:blur(16px); box-shadow:0 1px 0 var(--color-line); }
.brand { display:inline-flex; gap:12px; align-items:center; min-height:44px; font-size:25px; font-weight:500; letter-spacing:-1.1px; }
.brand img { width:58px; height:39px; object-fit:contain; }
.header nav { display:flex; align-items:center; gap:34px; }
.header nav>a { position:relative; display:flex; align-items:center; min-height:44px; color:#bdbdbd; font-size:11px; letter-spacing:.8px; text-transform:uppercase; padding:12px 0; transition:color .2s; }
.header nav>a::after { content:""; position:absolute; inset:auto 0 4px; height:1px; background:#ffb829; transform:scaleX(0); transform-origin:left; transition:transform .25s; }
.header nav>a:hover,.header nav>a:focus-visible,.header nav>a[aria-current] { color:#fff; }
.header nav>a:hover::after,.header nav>a:focus-visible::after,.header nav>a[aria-current]::after { transform:scaleX(1); }
.button { background:#8052ff; border:1px solid #ffffff17; border-radius:999px; min-height:48px; display:inline-flex; align-items:center; justify-content:center; gap:16px; padding:13px 20px 13px 24px; color:#fff; font-size:13px; line-height:1.3; font-weight:600; box-shadow:inset 0 1px 0 #ffffff0d; transition:background .2s,transform .2s,box-shadow .2s; }
.button:hover { background:#8c63ff; transform:translateY(-2px); box-shadow:0 6px 24px #8052ff24; }
.button:active { transform:translateY(0); }
.button-arrow { display:inline-flex; align-items:center; justify-content:center; flex:none; width:24px; height:24px; border:1px solid #ffffff40; border-radius:50%; font-size:15px; line-height:1; font-weight:400; transition:transform .2s,border-color .2s; }
.button:hover .button-arrow { transform:rotate(45deg); border-color:#ffffff80; }
.button.small { font-size:12px; min-height:44px; gap:12px; padding:10px 15px 10px 20px; }
.button.small .button-arrow { width:22px; height:22px; font-size:14px; }
.menu-toggle { display:none; }
.scene { position:relative; z-index:1; min-height:820px; min-height:max(820px,100svh); isolation:isolate; overflow:clip; }
.scene-inner { position:relative; max-width:1600px; width:100%; margin:auto; min-height:inherit; padding:140px var(--gutter) 120px; display:flex; align-items:center; }
.copy { position:relative; width:36%; max-width:470px; z-index:2; }
.copy h2 { margin-bottom:28px; }
h1,h2,h3,p { margin-top:0; }
h1 { font-size:clamp(78px,7.7vw,123px); line-height:1.015; letter-spacing:-.065em; font-weight:400; margin-bottom:33px; }
h2 { font-weight:400; font-size:clamp(38px,3.3vw,54px); line-height:1.12; letter-spacing:-.044em; }
h3 { font-weight:400; }
.hero-copy { width:42%; max-width:560px; padding-top:14px; }
.eyebrow { font-size:11px; line-height:1.6; letter-spacing:1.15px; font-weight:500; color:#9a9a9a; margin:0 0 25px; }
.hero-copy .eyebrow { display:flex; align-items:center; gap:10px; font-size:10px; letter-spacing:1.4px; margin-bottom:23px; }
.hero-copy .eyebrow::before { content:""; width:18px; height:1px; flex:none; background:currentColor; }
.amber { color:#ffb829; }
.body-copy { font-size:18px; line-height:1.65; letter-spacing:-.2px; font-weight:400; margin-bottom:25px; color:var(--color-copy); }
.hero-copy .body-copy { max-width:400px; margin-bottom:29px; }
.secondary { color:#bdbdbd; }
.hero-copy .button { margin-top:1px; }
.art-space { position:absolute; pointer-events:none; width:65%; height:86%; right:-5%; top:7%; }
.right-copy .scene-inner { justify-content:flex-end; }
.right-copy .copy { width:33%; }
.right-copy .art-space { left:-9%; right:auto; }
.scene-foot { position:absolute; left:var(--gutter); right:var(--gutter); bottom:28px; display:flex; align-items:center; justify-content:space-between; gap:20px; color:#9a9a9a; font-size:9px; letter-spacing:1.2px; }
.discover { display:flex; align-items:center; gap:18px; font-size:11px; letter-spacing:.3px; min-height:44px; }
.scroll-line { display:block; width:1px; height:26px; background:#9a9a9a; transform-origin:top; animation:scrollHint 2.4s ease-in-out infinite; }
@keyframes scrollHint { 0%,100%{transform:scaleY(.55);opacity:.45}50%{transform:scaleY(1);opacity:1} }
.service-options { display:flex; gap:18px; margin-top:34px; flex-wrap:wrap; border-bottom:1px solid var(--color-line); }
.service-options button { position:relative; border:0; border-bottom:2px solid transparent; margin-bottom:-1px; padding:12px 0; background:none; color:#aaa6a2; font-size:12px; line-height:1.5; min-height:46px; transition:color .2s,border-color .2s; }
.service-options button:hover { color:#fff; border-bottom-color:#ffffff60; }
.service-options button[aria-selected=true] { color:#ffb829; border-bottom-color:#ffb829; }
.service-options button:focus-visible { outline-offset:3px; border-radius:2px; }
#service-panel { margin-top:23px; min-height:96px; padding:0 0 0 18px; border-left:1px solid #8052ff80; background:linear-gradient(90deg,#8052ff06,transparent 80%); }
#service-panel p { color:#c2bfbb; font-size:14px; line-height:1.75; margin-bottom:0; }
.interlude { min-height:115svh; }
.interlude .scene-inner { justify-content:center; }
.centered { text-align:center; width:100%; max-width:920px; margin-inline:auto; }
.interlude h2 { font-size:clamp(37px,4vw,64px); }
.interlude em { font-style:normal; color:#ffb829; }
.interlude .body-copy { margin-top:35px; line-height:1.8; }
.interlude-answer { margin-top:38px; font-size:19px; color:#fff; letter-spacing:-.3px; }
.interlude .art-space,.process .art-space,.finale .art-space { left:0; right:0; width:100%; height:100%; top:0; }
.interlude .centered { padding:40px 20px; background:radial-gradient(ellipse,#000b 25%,#0000 75%); }
.text-button { display:inline-block; border:0; background:none; padding:12px 0; font-size:14px; line-height:1.6; color:#fff; text-align:left; text-decoration:underline; text-underline-offset:7px; text-decoration-thickness:1px; text-decoration-color:#8052ff; min-height:44px; transition:color .2s,text-decoration-color .2s; }
.text-button .text-arrow { display:inline-block; margin-left:8px; color:#ffb829; text-decoration:none; }
.text-button:hover { color:#ffb829; text-decoration-color:#ffb829; }
.process .scene-inner { justify-content:space-between; gap:80px; }
.process-intro { width:40%; position:relative; z-index:2; }
.process-intro h2 { font-size:clamp(42px,4.5vw,68px); }
.process-intro .body-copy { margin-top:30px; }
.steps { width:43%; z-index:2; position:relative; }
.steps article { display:grid; grid-template-columns:35px 1fr; gap:25px; padding-top:24px; border-top:1px solid var(--color-line); margin-bottom:28px; }
.steps article:last-child { margin-bottom:0; }
.step-no { color:#ffb829; font-size:11px; letter-spacing:1px; font-variant-numeric:tabular-nums; padding-top:7px; }
.steps h3 { font-size:26px; letter-spacing:-.6px; margin-bottom:12px; }
.steps p { font-size:16px; line-height:1.75; color:#bdbdbd; margin:0; max-width:370px; }
.finale .scene-inner { justify-content:center; }
.finale .centered { max-width:1120px; padding:32px 0; background:radial-gradient(ellipse,#000d 0%,#0009 40%,#0000 72%); }
.finale h2 { font-size:clamp(40px,4.25vw,68px); text-shadow:0 2px 22px #000; margin-bottom:30px; }
.finale .eyebrow { color:#bdbdbd; text-shadow:0 1px 10px #000; }
.finale-note { font-size:14px; line-height:1.7; margin:23px 0 0; color:#bdbdbd; text-shadow:0 1px 8px #000; }
.footer { position:relative; z-index:2; min-height:100px; display:flex; justify-content:space-between; align-items:center; padding:26px clamp(24px,3.1vw,54px); background:#000; border-top:1px solid var(--color-line); color:#9a9a9a; font-size:11px; gap:25px; }
.footer-links { display:flex; align-items:center; gap:30px; }
.footer a { min-height:44px; display:flex; align-items:center; gap:9px; transition:color .2s; }
.footer .footer-email { color:#d6d3d0; }
.footer a:hover { color:#ffb829; }
.motion-control { position:fixed; left:23px; bottom:22px; z-index:7; display:flex; align-items:center; gap:9px; min-width:44px; min-height:44px; background:#0009; border:1px solid #ffffff25; border-radius:99px; padding:11px 12px; color:#bdbdbd; backdrop-filter:blur(8px); }
.motion-control svg { width:14px; height:14px; stroke:currentColor; fill:none; stroke-width:1.5; }
.motion-label { font-size:11px; display:none; }
.motion-control:hover .motion-label,.motion-control:focus-visible .motion-label { display:inline; }
.play-icon { display:none; }
.motion-control[aria-pressed=true] .pause-icon { display:none; }
.motion-control[aria-pressed=true] .play-icon { display:block; }
body.motion-paused .scroll-line { animation-play-state:paused; }
.skip { position:fixed; top:-100px; left:20px; padding:15px; background:#8052ff; z-index:100; }
.skip:focus { top:10px; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
dialog { position:fixed; width:min(760px,calc(100% - 32px)); max-height:calc(100dvh - 32px); overflow:auto; overscroll-behavior:contain; border:1px solid #ffffff24; border-radius:24px; padding:42px; background:linear-gradient(135deg,#17131e 0%,#10100f 48%,#13110e 100%); color:#fff; box-shadow:0 24px 100px #0009; scrollbar-color:#5e5568 #141211; }
dialog::backdrop { background:#000b; backdrop-filter:blur(12px); }
.dialog-heading { padding-right:26px; }
dialog h2 { font-size:42px; line-height:1.1; margin-bottom:15px; }
dialog .eyebrow { font-size:10px; letter-spacing:1.5px; margin-bottom:17px; }
.close-dialog { position:absolute; right:17px; top:17px; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border:1px solid #ffffff1a; border-radius:50%; background:#ffffff03; font-size:27px; line-height:1; color:#c2bfbb; transition:color .2s,background .2s; }
.close-dialog:hover { color:#fff; background:#ffffff0b; }
.dialog-intro { font-size:14px; line-height:1.75; color:#c2bfbb; margin-bottom:0; max-width:550px; }
form { display:grid; gap:28px; margin-top:29px; }
.form-section { min-width:0; padding:20px 0 0; margin:0; border:0; border-top:1px solid var(--color-line); }
.form-section legend { padding:0 14px 0 0; color:#aaa5b0; font-size:10px; letter-spacing:1.2px; line-height:1.6; }
.form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
form label { display:grid; min-width:0; gap:9px; color:#d6d3d0; font-size:13px; line-height:1.5; }
input,select,textarea { display:block; width:100%; min-height:48px; padding:13px 14px; border:1px solid #ffffff26; background:#08080766; border-radius:9px; color:#fff; font-size:16px; line-height:1.4; transition:border-color .2s,background .2s,box-shadow .2s; }
input::placeholder,textarea::placeholder { color:#96918d; opacity:1; }
input:hover,select:hover,textarea:hover { border-color:#ffffff42; }
input:focus-visible,select:focus-visible,textarea:focus-visible { outline:2px solid #b89bff; outline-offset:2px; border-color:#8052ff; background:#15121b; box-shadow:0 0 0 4px #8052ff14; }
select { padding-right:30px; }
select option { background:#17131e; color:#fff; }
textarea { resize:vertical; line-height:1.65; }
.form-footer { display:flex; align-items:center; gap:24px; padding-top:4px; }
.form-note { flex:1; font-size:11px; line-height:1.75; color:#aaa5a0; margin:0; }
form .button { flex:none; margin:0; }
.form-error,.form-status { font-size:13px; line-height:1.6; color:#ffb829; margin:0; }
.form-error:empty,.form-status:empty { display:none; }
.form-error:not(:empty) { padding:13px 15px; border-left:2px solid #ffb829; background:#ffb82909; }
.form-trap { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
form[aria-busy=true] { cursor:progress; }
form .button:disabled { opacity:.65; cursor:wait; transform:none; box-shadow:none; }
input[aria-invalid=true],textarea[aria-invalid=true] { border-color:#ffb829; }
#brief-result { margin-top:28px; padding-top:26px; border-top:1px solid var(--color-line); }
#brief-result h3 { color:#ffb829; font-size:23px; letter-spacing:-.5px; margin-bottom:14px; }
#brief-result .dialog-intro { margin-bottom:20px; }
#brief-output { font-size:14px; line-height:1.7; }
.result-actions { display:flex; gap:12px; margin-top:20px; }
.result-actions>* { flex:1; }
.outline-button { border:1px solid #ffffff40; border-radius:99px; min-height:48px; background:none; color:#fff; font-size:13px; padding:12px 16px; transition:background .2s,border-color .2s; }
.outline-button:hover { background:#ffffff07; border-color:#b89bff; }
#edit-brief { margin-top:12px; margin-bottom:10px; }
.no-js-note { position:relative; z-index:5; padding:20px 30px; background:#141414; font-size:14px; text-align:center; }
@media(min-width:1800px) { .copy{max-width:520px}.scene{min-height:100svh}.scene-inner{max-width:1800px} }
@media(max-width:1100px) and (min-width:901px) {
  :root{--gutter:6vw}.header{height:90px}.header nav{gap:22px}.scene{min-height:max(760px,100svh)}
  .copy,.right-copy .copy{width:40%}.hero-copy{width:46%}h1{font-size:clamp(65px,6.65vw,76px)}h2{font-size:39px}
  .body-copy{font-size:16px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.1px}.service-options{gap:13px}.service-options button{font-size:11px}
  .process .scene-inner{gap:40px}.steps{width:48%}.steps article{gap:16px}.steps h3{font-size:24px}
}
@media(max-width:900px) {
  :root{--gutter:26px}html{scroll-padding-top:86px}.header{height:80px;padding:0 24px}.brand{font-size:24px}.brand img{width:49px;height:34px}
  .menu-toggle{display:flex;width:44px;height:44px;flex-direction:column;justify-content:center;align-items:center;gap:7px;border:0;background:none}
  .menu-toggle span{width:23px;height:1px;background:#fff;transition:transform .2s}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
  .header nav{display:none;position:absolute;top:72px;left:16px;right:16px;background:#111;padding:20px 24px 24px;border:1px solid #292929;border-radius:18px;align-items:stretch;gap:10px}
  .header nav.open{display:flex;flex-direction:column}.header nav>a{font-size:14px;min-height:44px;padding:14px 0}.header nav .button{margin-top:8px;min-height:48px}
  /* Copy and sculpture share a viewport rather than two stacked content blocks. */
  .scene{min-height:max(740px,100svh)}
  .scene-inner{display:flex;flex-direction:column;align-items:stretch;justify-content:center;min-height:inherit;padding:130px var(--gutter) 110px;gap:0}
  .scene-inner::before{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(90deg,#080706b0 0%,#08070665 42%,#08070600 92%)}
  .right-copy .scene-inner::before{background:linear-gradient(270deg,#080706c2 0%,#08070675 52%,#08070600 100%)}
  .hero .scene-inner{justify-content:flex-start;padding-top:clamp(124px,17svh,170px);padding-bottom:140px}
  .hero .scene-inner::before{background:linear-gradient(90deg,#08070670 0%,#08070625 56%,#08070600 100%)}
  .copy,.hero-copy,.right-copy .copy{width:100%;max-width:440px;padding:0;margin:0; text-shadow:0 2px 22px #0009}
  .right-copy .copy{width:88%;margin-left:auto}
  .digital .copy{width:90%}
  h1{font-size:clamp(58px,15.9vw,64px);line-height:1.03;letter-spacing:-.064em;margin-bottom:25px}
  h2{font-size:clamp(34px,9.9vw,43px);line-height:1.12;letter-spacing:-.04em}.copy h2{margin-bottom:22px}
  .eyebrow{font-size:10px;letter-spacing:1.05px;margin-bottom:20px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.1px;margin-bottom:21px;max-width:300px}
  .body-copy{font-size:16px;line-height:1.65;margin-bottom:23px;max-width:420px}
  .hero-copy .body-copy{max-width:300px;position:relative}
  .hero-copy .body-copy::before{content:"";position:absolute;z-index:-1;inset:-19px -70px -21px calc(-1 * var(--gutter));pointer-events:none;background:linear-gradient(90deg,#080706c2 0%,#080706ac 58%,#08070600 100%)}
  .agents .body-copy,.automation .body-copy,.digital .body-copy,.agents .eyebrow,.automation .eyebrow,.digital .eyebrow,#service-panel{position:relative}
  .agents .body-copy::before,.automation .body-copy::before,.digital .body-copy::before,.agents .eyebrow::before,.automation .eyebrow::before,.digital .eyebrow::before,#service-panel::before{content:"";position:absolute;z-index:-1;inset:-16px -65px -18px calc(-1 * var(--gutter));pointer-events:none;background:linear-gradient(90deg,#080706dc 0%,#080706d4 65%,#08070600 100%)}
  .right-copy .body-copy::before,.right-copy .eyebrow::before,.right-copy #service-panel::before{left:-75px;right:calc(-1 * var(--gutter));background:linear-gradient(270deg,#080706e0 0%,#080706d4 68%,#08070600 100%)}
  .agents .eyebrow,.automation .eyebrow,.digital .eyebrow{color:#c2bfbb}
  .button{min-height:48px;font-size:13px;padding:13px 19px 13px 23px}
  .art-space,.right-copy .art-space,.hero .art-space,.finale .art-space{position:absolute;inset:0;width:100%;height:100%;margin:0;pointer-events:none}
  .scene-foot{position:absolute;left:var(--gutter);right:var(--gutter);bottom:72px;margin:0;padding:0;font-size:8px;letter-spacing:1px;gap:12px}.scene-count{display:none}
  .discover{font-size:11px;gap:13px}.scroll-line{height:20px}
  .service-options{margin-top:27px;gap:8px 18px}.service-options button{font-size:12px;min-height:44px}#service-panel{min-height:96px;margin-top:20px;padding-left:15px}#service-panel p{font-size:14px}
  .agents .scene-inner{padding-top:145px;padding-bottom:115px}
  .interlude{min-height:max(740px,105svh)}.interlude .scene-inner{width:100%;padding-block:120px;min-height:inherit;justify-content:center}
  .interlude .scene-inner::before,.finale .scene-inner::before{background:radial-gradient(ellipse at center,#0807067a 10%,#08070638 48%,#08070600 85%)}
  .interlude .centered{width:100%;padding:25px 0;background:none}.interlude h2{font-size:clamp(31px,8.6vw,44px)}.interlude .eyebrow{font-size:9px;line-height:1.7;letter-spacing:.7px}.interlude .body-copy{margin-top:27px;line-height:1.9}.interlude-answer{font-size:17px;line-height:1.6;max-width:270px;margin:29px auto 0}
  .process .scene-inner{gap:36px;padding-block:120px 110px}.process .scene-inner::before{background:linear-gradient(90deg,#0807069c,#08070635)}.process-intro,.steps{width:100%;max-width:530px;margin-inline:auto}.process-intro h2{font-size:43px}.process-intro .body-copy{margin-top:24px;margin-bottom:0}.steps article{gap:17px;padding-top:21px;margin-bottom:25px}.steps h3{font-size:24px}.steps p{font-size:16px}.step-no{padding-top:6px}
  .finale .scene-inner{padding-block:120px 110px}.finale h2{font-size:clamp(32px,8.8vw,44px);margin-bottom:25px}.finale .centered{width:100%;max-width:570px;margin:0 auto;padding:35px 0;background:none}.finale-note{font-size:13px}
  .footer{padding:24px 26px 85px;flex-wrap:wrap;gap:6px 16px;font-size:11px}.footer-manifesto{display:none}.footer-links{margin-left:auto;gap:20px}
  .motion-control{left:16px;bottom:16px;background:#080808d9}.motion-label{display:none!important}
  dialog{padding:35px 24px 26px}dialog h2{font-size:33px}.dialog-heading{padding-right:32px}.dialog-intro{font-size:14px}.result-actions{flex-direction:column}form{gap:25px}
}
@media(max-width:360px) {
  :root{--gutter:22px}.header{padding-inline:20px}.hero-copy .eyebrow{font-size:9px}.service-options{gap:8px 13px}.service-options button{font-size:11px}
  .right-copy .copy{width:92%}.digital .copy{width:96%}.scene-foot>span:first-child{max-width:150px;line-height:1.7}
}
@media(min-width:601px) and (max-width:900px) {
  :root{--gutter:6vw}.scene-inner{flex-direction:row;align-items:center;padding-block:130px 110px}
  .copy,.hero-copy,.right-copy .copy,.digital .copy{width:48%;max-width:440px}.right-copy .copy{margin-left:auto}
  .hero .scene-inner{align-items:center;padding-top:130px}.hero-copy .body-copy{max-width:340px}
  h1{font-size:clamp(62px,8.4vw,76px)}h2{font-size:clamp(35px,5.2vw,46px)}
  .interlude .centered{max-width:670px;margin-inline:auto}.interlude h2{font-size:44px}
  .process .scene-inner{align-items:flex-start;gap:45px}.process-intro{width:43%;margin:0}.steps{width:48%;margin:0}.process-intro h2{font-size:45px}.steps article{grid-template-columns:24px 1fr;gap:13px}.steps h3{font-size:23px}
  .finale h2{font-size:46px}
}
@media(max-width:900px) and (max-height:520px) and (orientation:landscape) {
  .hero .scene-inner{padding-top:110px;align-items:flex-start}.hero h1{font-size:clamp(48px,7.4vw,62px)}
  .hero-copy .eyebrow{margin-bottom:15px}.hero-copy .body-copy{font-size:15px}.scene-foot{bottom:54px}
}
@media(prefers-reduced-motion:reduce) {
  html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}
}

.renderer-unavailable .scroll-line { animation:none; }

@media(max-width:600px) {
  .form-grid { grid-template-columns:1fr; gap:18px; }
  dialog { padding:32px 22px 26px; border-radius:20px; }
  .dialog-heading { padding-right:21px; }
  dialog h2 { font-size:30px; }
  .close-dialog { top:12px; right:12px; }
  .form-section { padding-top:18px; }
  .form-footer { flex-direction:column; align-items:stretch; gap:18px; }
  .form-note { font-size:12px; }
  .result-actions { flex-wrap:wrap; }
  .result-actions>* { flex:1 1 auto; }
  .footer-links { width:100%; margin-left:0; justify-content:space-between; gap:14px; }
}
