:root{color-scheme:dark;--bg:#050507;--text:#f5f5f7;--muted:#86868f;--blue:#2997ff;--font:-apple-system,BlinkMacSystemFont,'Helvetica Neue',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,[tabindex]:focus-visible{outline:2px solid #64b4ff;outline-offset:6px}::selection{background:#3768a8;color:white}.header{max-width:1120px;margin:auto;height:82px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff0c;position:relative;z-index:3}.wordmark{font-size:24px;font-weight:650;letter-spacing:-1.2px}.wordmark span{color:#85858b}nav{display:flex;align-items:center;gap:35px;font-size:12px;color:#b7b7bd}.nav-contact{background:#ffffff0e;border:1px solid #ffffff16;border-radius:30px;padding:10px 17px;color:#e7e7eb}.nav-contact span{margin-left:12px}nav a:hover{color:white}.hero{position:relative;overflow:hidden}.hero-copy{padding:70px 20px 0;text-align:center;position:relative;z-index:2}.eyebrow{font-size:10px;letter-spacing:2.2px;color:#a8a8b2;font-weight:500;display:flex;gap:13px;justify-content:center;align-items:center;margin:0 0 28px}.eyebrow span{width:3px;height:3px;border-radius:50%;background:#52525b}h1{font-size:clamp(48px,6.1vw,88px);line-height:1.06;letter-spacing:-5px;margin:0;font-weight:650}h1>span{background:linear-gradient(110deg,#f0f2fa 10%,#c5d4f3 48%,#739fe9 90%);-webkit-background-clip:text;background-clip:text;color:transparent}.intro{font-size:20px;font-weight:500;line-height:1.6;letter-spacing:-.3px;margin:25px 0 26px}.intro span{color:#85858f;font-size:17px;font-weight:400}.primary-button{display:inline-flex;align-items:center;gap:20px;padding:14px 22px;border-radius:30px;background:#0071e3;color:white;font-size:13px;font-weight:500;box-shadow:0 0 30px #0071e30a;transition:background .2s,box-shadow .2s}.primary-button:hover{background:#1685f2;box-shadow:0 0 35px #0071e32b}.primary-button span{font-size:19px}.device-stage{height:490px;max-width:1040px;margin:43px auto 0;position:relative;isolation:isolate;perspective:1400px}.ambient{position:absolute;border-radius:50%;filter:blur(70px);z-index:-1;pointer-events:none}.ambient-blue{width:480px;height:230px;background:#123c9b50;left:10%;top:80px}.ambient-purple{width:400px;height:230px;background:#4936993b;right:8%;top:100px}.floor-glow{position:absolute;bottom:36px;left:7%;width:87%;height:22px;border-radius:50%;background:#8a9ed524;filter:blur(19px)}.device{position:absolute;transition:filter .65s,transform .65s,opacity .65s}.laptop{width:674px;left:50%;top:15px;transform:translateX(-50%);z-index:1}.laptop-display{height:394px;border-radius:19px 19px 6px 6px;padding:10px 10px 15px;background:linear-gradient(145deg,#777982,#25252b 7%,#080809 45%,#32323c 96%,#797b87);border:1px solid #8e8f9a;box-shadow:0 0 0 1px #0c0c10,0 18px 60px #0007;position:relative}.desktop-screen{height:100%;border-radius:10px 10px 2px 2px;background:#071124;position:relative;overflow:hidden}.camera{position:absolute;top:9px;left:44%;width:12%;height:15px;border-radius:0 0 8px 8px;background:#050507;z-index:5}.camera:after{content:'';position:absolute;width:4px;height:4px;top:4px;left:50%;background:#10213a;border-radius:50%}.wallpaper{position:absolute;inset:0;overflow:hidden;background:radial-gradient(ellipse at 55% 5%,#14358c,transparent 52%),linear-gradient(145deg,#02030c,#07132c 65%,#1c0f36)}.wallpaper:after{content:'';position:absolute;width:100%;height:150%;top:21%;left:37%;border-radius:45%;transform:rotate(-37deg);background:linear-gradient(90deg,#162769 0%,#224cdd 29%,#93b8ff 44%,#cdd8ff 46%,#5a59f6 49%,#202d7c 55%,#060b20 70%);box-shadow:-17px 0 55px #3242b266,inset 14px 0 40px #ffffff27}.wallpaper i{position:absolute;z-index:1;top:36%;left:-45%;width:125%;height:130%;border-radius:50%;transform:rotate(-28deg);background:linear-gradient(120deg,#071120 30%,#0d163f 49%,#3750bd 66%,#7892ed 72%,#2a3d81 74%,#080e21 80%);box-shadow:16px 0 35px #121c6966}.wallpaper b{position:absolute;z-index:2;width:90%;height:100%;top:75%;left:45%;transform:rotate(30deg);border-radius:50%;background:linear-gradient(100deg,#02070f 20%,#1c286a 59%,#7455c9 63%,#a999e2 66%,#202348 69%)}.desktop-menubar{position:relative;z-index:3;display:flex;align-items:center;gap:14px;height:23px;padding:0 13px;background:#04071240;font-size:7px;color:#d9e3ffb3}.mini-mark{font-weight:800;font-size:13px}.menubar-right{margin-left:auto}.desktop-content{position:relative;z-index:3;text-align:center;padding-top:64px}.screen-eyebrow{font-size:6px;letter-spacing:2.8px;color:#c2d1f7}.screen-hello{font-size:83px;line-height:1.3;letter-spacing:-5px;font-weight:600;color:#f3f6ff;text-shadow:0 1px 20px #0003}.screen-subtitle{font-size:9px;color:#d0d9ee}.dock{position:absolute;z-index:3;bottom:9px;left:50%;transform:translateX(-50%);padding:5px 7px;display:flex;gap:6px;border:1px solid #ffffff2e;border-radius:12px;background:#cdd8ff1a;backdrop-filter:blur(20px)}.dock-icon{display:grid;place-items:center;width:28px;height:28px;border-radius:7px;font-size:17px;box-shadow:inset 0 1px 1px #fff7,0 2px 5px #0003}.finder{background:linear-gradient(90deg,#2184e5 50%,#c4e1fa 50%);color:#073359}.safari{background:linear-gradient(#7cdef8,#126ce1);color:white}.mail{background:linear-gradient(#4cc1ff,#006ce3);color:white}.photos{background:linear-gradient(145deg,#ffe054,#ef476c 50%,#a65ae6);color:white}.code{background:linear-gradient(#6455a9,#201d46);color:white;font-size:12px}.laptop-base{position:relative;left:-6%;width:112%;height:14px;background:linear-gradient(90deg,#62646e,#b1b3bc 6%,#6b6d75 24%,#9b9da8 50%,#636570 80%,#b0b2bc 96%,#5e606a);border-radius:2px 2px 50% 50% / 2px 2px 12px 12px;box-shadow:0 4px 4px #0009,inset 0 1px #ddd8}.laptop-base span{position:absolute;width:15%;height:5px;left:42.5%;background:#383a42;border-radius:0 0 8px 8px;box-shadow:inset 0 1px 2px #000}.laptop-foot{height:2px;background:#303038;margin:0 2%;border-radius:0 0 20px 20px}.phone{left:68px;top:100px;width:176px;height:349px;background:linear-gradient(110deg,#aaa9b2,#4c4c58 7%,#1a1b23 44%,#8e8e9b 94%,#34343e);padding:5px;border:1px solid #9798a5;border-radius:35px;transform:rotate(-8deg);z-index:3;box-shadow:12px 24px 30px #0008,-1px 0 0 #e0e3f955}.phone-screen{position:relative;overflow:hidden;border:4px solid #050507;border-radius:29px;width:100%;height:100%}.phone .wallpaper:after{left:23%;width:150%;top:10%}.phone .wallpaper i{top:55%}.dynamic-island{position:absolute;top:8px;left:28%;width:44%;height:15px;border-radius:15px;background:#020205;z-index:5}.phone-status{position:relative;z-index:4;display:flex;justify-content:space-between;padding:13px 11px 0;font-size:7px;font-weight:600}.phone-content{position:relative;z-index:3;display:flex;align-items:center;flex-direction:column;padding-top:22px}.phone-date{font-size:9px;color:#d9e1ff}.phone-clock{font-size:43px;letter-spacing:-1px;font-weight:550;line-height:1.2;color:#d5e1ff}.phone-hello{font-size:36px;letter-spacing:-2px;font-weight:600;margin-top:42px}.phone-subtitle{font-size:9px;line-height:1.6;color:#e2e6ff;text-align:center;margin-top:7px}.phone-bottom{position:absolute;bottom:19px;width:100%;display:flex;justify-content:space-between;padding:0 15px;z-index:3}.phone-bottom span{display:grid;place-items:center;border-radius:50%;width:22px;height:22px;background:#7d8bb530;font-size:13px;backdrop-filter:blur(5px)}.home-bar{position:absolute;bottom:5px;left:32%;width:36%;height:3px;border-radius:4px;background:#fff;z-index:5}.phone-buttons{position:absolute;left:-3px;top:75px;width:2px;height:33px;background:#8d8b98;border-radius:2px;box-shadow:0 42px #8d8b98}.watch{width:153px;height:245px;right:77px;top:210px;transform:rotate(11deg);z-index:3;filter:drop-shadow(9px 16px 18px #0008)}.watch-band{position:absolute;left:26px;width:101px;background:linear-gradient(90deg,#242630,#515462 10%,#30333f 30%,#242631 75%,#424551 93%,#1b1d26);border:1px solid #52545d;border-radius:20px}.band-top{height:120px;top:-25px;transform:perspective(200px) rotateX(35deg);box-shadow:inset 0 8px 15px #0007}.band-bottom{height:130px;bottom:0;transform:perspective(200px) rotateX(-30deg);background:repeating-linear-gradient(0deg,transparent 0 9px,#07080d55 10px 11px),linear-gradient(90deg,#161923,#474c5b 10%,#242936 60%,#4d5260 93%,#1b1e26)}.watch-crown{position:absolute;right:-6px;top:63px;width:9px;height:27px;background:repeating-linear-gradient(0deg,#91939b 0 1px,#30333e 1px 3px);border-radius:3px}.watch-body{position:relative;top:24px;height:177px;padding:7px;border-radius:40px;background:linear-gradient(135deg,#afb0b7,#525563 20%,#30333e 50%,#888b99 87%,#d6d7df);border:1px solid #989ca6;box-shadow:inset 0 0 0 2px #525661}.watch-screen{position:relative;height:100%;border-radius:33px;background:#020204;border:2px solid #11121a;overflow:hidden}.watch-time{position:absolute;right:12px;top:11px;font-size:14px}.watch-date{position:absolute;left:12px;top:14px;font-size:7px;color:#fe6574}.activity-rings{position:absolute;width:103px;height:103px;top:37px;left:16px}.watch-caption{position:absolute;bottom:9px;left:0;right:0;font-size:5px;letter-spacing:1.3px;color:#9399a5;text-align:center}.work{text-align:center;padding:32px 24px 80px;max-width:1000px;margin:auto}.section-kicker{font-size:9px;color:#6d6d7c;letter-spacing:2px;font-weight:500;margin:0 0 18px}.work h2{font-size:32px;line-height:1.2;font-weight:600;letter-spacing:-1.1px;margin:0 0 26px}.service-tabs{display:inline-flex;align-items:center;gap:3px;padding:5px;background:#141417;border:1px solid #ffffff0c;border-radius:40px}.service-tabs button{border:0;background:transparent;color:#909098;padding:11px 20px;border-radius:30px;cursor:pointer;font-size:12px;transition:color .2s,background .2s}.service-tabs button[aria-selected=true]{background:#e9e9ee;color:#151518;box-shadow:0 2px 7px #0004}.service-tabs button:hover:not([aria-selected=true]){color:white}.service-panels{min-height:117px;margin-top:28px}.service-panels h3{font-size:18px;font-weight:500;letter-spacing:-.4px;margin:0 0 10px}.service-panels p{font-size:14px;line-height:1.7;color:#85858f;margin:0}.contact{position:relative;overflow:hidden;text-align:center;padding:76px 24px 75px;border-top:1px solid #ffffff09;background:linear-gradient(#09090d,#060609)}.contact-light{position:absolute;pointer-events:none;top:-100px;left:50%;transform:translateX(-50%);width:650px;height:230px;border-radius:50%;background:radial-gradient(ellipse,#26386a24,transparent 65%)}.contact h2{font-size:46px;line-height:1.15;font-weight:600;letter-spacing:-1.8px;margin:25px 0}.contact h2 span{color:#85858f}.contact-link{color:#72b7ff;font-size:21px;letter-spacing:-.3px;display:table;margin:0 auto}.contact-link span{margin-left:13px;font-size:24px}.contact-link:hover{color:#add6ff}.copy-email{display:flex;align-items:center;gap:6px;margin:20px auto 0;padding:7px;border:0;color:#6e6e7a;background:transparent;font-size:10px;cursor:pointer}.copy-email:hover{color:#c3c3cd}.copy-email svg{width:13px;height:13px;stroke:currentColor;stroke-width:1.2}footer{max-width:1120px;margin:auto;border-top:1px solid #ffffff0a;min-height:84px;display:flex;align-items:center;gap:25px;color:#62626d;font-size:10px}.footer-brand{font-size:15px;font-weight:600;color:#9b9ba4;letter-spacing:-.7px}.footer-note{margin-left:auto}.back-top{margin-left:15px;color:#9999a5}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:-80px;left:20px;z-index:99;background:#0071e3;color:white;padding:12px 20px}.skip-link:focus{top:15px}
@media(min-width:800px){.hero-copy{animation:rise-in .8s ease-out both}}@keyframes rise-in{from{translate:0 15px}to{translate:0 0}}
@media(max-width:1200px){.header,footer{margin-left:6%;margin-right:6%}.device-stage{max-width:930px}.phone{left:35px}.watch{right:38px}}
@media(max-width:950px){h1{font-size:66px;letter-spacing:-3.5px}.device-stage{width:900px;left:50%;margin-left:-450px;transform:scale(.8);transform-origin:top center;margin-bottom:-100px}.work{padding-top:20px}.hero-copy{padding-top:60px}.intro{font-size:19px}.intro span{font-size:16px}.work h2{font-size:29px}}
@media(max-width:700px){.header{height:72px;margin:0 6%}.wordmark{font-size:23px}nav{gap:20px;font-size:11px}.nav-contact{padding:9px 12px}.hero-copy{padding:53px 18px 0}.eyebrow{font-size:8px;letter-spacing:1.45px;gap:9px;margin-bottom:23px}h1{font-size:clamp(34px,7.7vw,53px);letter-spacing:-1.8px;line-height:1.12}.intro{font-size:16px;line-height:1.65;margin:22px 0 23px}.intro span{font-size:12px}.primary-button{font-size:12px;padding:12px 19px;gap:16px}.device-stage{transform:scale(.59);margin-top:42px;margin-bottom:-198px}.work{padding:24px 20px 49px}.work h2{font-size:24px;letter-spacing:-.8px;margin-bottom:22px}.section-kicker{font-size:7px;letter-spacing:1.6px}.service-tabs{gap:0;padding:4px;max-width:100%}.service-tabs button{font-size:10px;padding:10px 15px}.service-panels{margin-top:24px;min-height:125px}.service-panels h3{font-size:17px}.service-panels p{font-size:13px;max-width:390px;margin:auto}.desktop-break{display:none}.contact{padding:54px 20px 48px}.contact h2{font-size:33px;letter-spacing:-1.2px}.contact-link{font-size:20px}footer{margin:0 6%;gap:15px;min-height:74px;font-size:8px}.footer-brand{font-size:13px}.footer-note{display:none}.back-top{margin-left:auto}}
@media(max-width:480px){.device-stage{transform:scale(.43);margin-bottom:-275px;margin-top:37px}.service-tabs button{padding:10px 12px}.work h2{font-size:22px}.work{padding-top:18px}.contact h2{font-size:30px}.service-panels{min-height:137px}.phone{left:37px}.watch{right:45px}}
@media(max-width:360px){nav{gap:13px}h1{font-size:31px}.eyebrow{font-size:7px}.device-stage{transform:scale(.37);margin-bottom:-305px}.service-tabs button{padding:10px}.contact h2{font-size:27px}.intro{font-size:15px}.intro span{font-size:11px}.work h2{font-size:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

/* Scroll motion is progressive enhancement; the default page stays fully visible. */
@media (prefers-reduced-motion: no-preference) {
  .scroll-motion .device { transition: none; }
  .scroll-motion .laptop {
    transform: translateX(-50%) translateY(calc((1 - var(--device-progress, 1)) * 34px))
      rotateX(calc((1 - var(--device-progress, 1)) * 5deg))
      scale(calc(.97 + var(--device-progress, 1) * .03));
  }
  .scroll-motion .phone {
    transform: translate(calc((1 - var(--device-progress, 1)) * -14px), calc((1 - var(--device-progress, 1)) * 68px))
      rotate(calc(-8deg - (1 - var(--device-progress, 1)) * 5deg));
  }
  .scroll-motion .watch {
    transform: translate(calc((1 - var(--device-progress, 1)) * 12px), calc((1 - var(--device-progress, 1)) * 88px))
      rotate(calc(11deg + (1 - var(--device-progress, 1)) * 6deg));
  }
  .scroll-motion .device { opacity: calc(.78 + var(--device-progress, 1) * .22); }
  .scroll-motion .ambient { opacity: calc(.45 + var(--device-progress, 1) * .55); }
  .scroll-motion .floor-glow { opacity: calc(.4 + var(--device-progress, 1) * .6); }
  .scroll-reveal {
    transition: opacity .8s cubic-bezier(.22,1,.36,1), translate .8s cubic-bezier(.22,1,.36,1);
  }
  .scroll-reveal.reveal-pending { opacity: 0; translate: 0 22px; }
  .scroll-reveal:focus-within { opacity: 1; translate: 0 0; }
}
@media (prefers-reduced-motion: reduce) {
  .scroll-reveal { opacity: 1; translate: none; }
}

/* Resolution-independent screen details, drawn to a shared icon grid. */
.dock { gap:6px; padding:6px 7px 8px; border-radius:13px; background:linear-gradient(135deg,#d6e5ff30,#a7b4dc1a); box-shadow:inset 0 1px 0 #ffffff18,0 4px 14px #0003; }
.dock-icon { position:relative; width:29px; height:29px; border-radius:7px; overflow:visible; box-shadow:inset 0 1px 1px #fffa,0 1px 3px #0004; }
.dock-icon svg { width:24px; height:24px; display:block; }
.dock-icon.finder { background:linear-gradient(90deg,#39a9fa 50%,#e1f4ff 50%); }
.dock-icon.finder:after { content:''; position:absolute; bottom:-5px; left:13px; width:3px; height:3px; border-radius:50%; background:#eef3ffa3; }
.dock-icon.safari,.dock-icon.photos { background:linear-gradient(#fff,#e9edf4); }
.dock-icon.safari svg { width:27px; height:27px; }
.dock-icon.photos svg { width:25px; height:25px; }
.dock-icon.code { background:linear-gradient(145deg,#7774bd,#282948); }
.dock-icon.code svg { width:21px; height:21px; }
.desktop-menubar { gap:13px; font-size:6px; color:#eff3ffc9; }
.menu-active { font-weight:650; }
.menubar-right,.mac-status-icons { display:flex; align-items:center; gap:8px; }
.mac-status-icons { gap:6px; }
.mac-status-icons svg { width:10px; height:10px; }
.mac-status-icons .status-battery { width:13px; }
.phone-indicators { display:flex; align-items:center; gap:2px; }
.phone-indicators svg { width:8px; height:8px; }
.phone-indicators .status-battery { width:12px; height:9px; }
.phone-indicators .status-signal { width:8px; height:7px; }
.phone-status { padding:13px 9px 0; font-variant-numeric:tabular-nums; }
.dynamic-island:after { content:''; position:absolute; right:7px; top:5px; width:5px; height:5px; border-radius:50%; background:radial-gradient(circle at 35% 35%,#1c3150,#05080e 65%); }
.phone-bottom span { width:24px; height:24px; background:#c7d6ff24; border:1px solid #ffffff08; }
.phone-bottom svg { width:13px; height:13px; color:#f1f5ff; }
.phone-clock,.watch-time { font-variant-numeric:tabular-nums; }
.watch-time { right:12px; top:12px; font-size:13px; font-weight:500; }
.watch-date { left:12px; top:15px; font-size:7px; font-weight:600; letter-spacing:.3px; }
.activity-rings { width:106px; height:106px; top:33px; left:14px; }
.watch-caption { display:flex; justify-content:center; gap:11px; bottom:10px; font-size:8px; font-weight:600; letter-spacing:0; font-variant-numeric:tabular-nums; }
.watch-caption span:nth-child(1){color:#ff5d92}.watch-caption span:nth-child(2){color:#c7fa32}.watch-caption span:nth-child(3){color:#60eaff}

/* Quiet contact form: personal, spacious and consistent with the device palette. */
.contact { padding-bottom:65px; }
.contact-intro { color:#91919d; font-size:15px; line-height:1.7; margin:0 auto 36px; }
.contact-form { max-width:610px; margin:0 auto; text-align:left; }
.form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.form-field { margin-bottom:22px; }
.form-field label { display:block; color:#c8c8d1; font-size:12px; font-weight:500; margin:0 0 10px 2px; }
.form-field input,.form-field textarea { width:100%; border:1px solid #ffffff15; border-radius:12px; background:#ffffff04; color:#f5f5f7; font:400 14px var(--font); line-height:1.6; padding:15px 17px; outline:none; transition:border-color .2s,box-shadow .2s,background .2s; }
.form-field input { height:53px; }
.form-field textarea { min-height:139px; resize:vertical; }
.form-field input::placeholder,.form-field textarea::placeholder { color:#656570; opacity:1; }
.form-field input:hover,.form-field textarea:hover { border-color:#ffffff29; }
.form-field input:focus,.form-field textarea:focus { border-color:#4c8de2; box-shadow:0 0 0 3px #2997ff13; background:#151b2b45; }
.form-field input:user-invalid,.form-field textarea:user-invalid { border-color:#e6868d; }
.form-field input:autofill { box-shadow:0 0 0 100px #151722 inset; -webkit-text-fill-color:#f5f5f7; }
.form-actions { display:flex; align-items:center; justify-content:space-between; gap:20px; padding-top:1px; }
.form-actions p { margin:0; font-size:11px; line-height:1.65; color:#747480; }
.submit-button { cursor:pointer; border:0; min-width:178px; justify-content:center; padding:14px 20px; }
.submit-button .submit-label { font-size:13px; line-height:1.4; }
.submit-button svg { width:18px; height:18px; }
.submit-button:disabled { cursor:not-allowed; opacity:.65; }
.contact-form[aria-busy=true] .submit-button { cursor:wait; }
.form-preview-note { margin:19px 0 0; color:#7b7b88; font-size:10px; line-height:1.6; text-align:right; }
.form-preview-note[hidden] { display:none; }
.form-status { margin:16px 0 0; font-size:12px; line-height:1.65; color:#a6bddc; }
.form-status:empty { display:none; }
.form-status[data-state=error] { color:#eeb2b7; }
.form-status[data-state=success] { color:#a6d8c0; }
.form-status a { color:#72b7ff; }
.contact-alternatives { max-width:610px; margin:36px auto 0; padding-top:27px; border-top:1px solid #ffffff0e; }
.phone-contacts { display:grid; grid-template-columns:1fr 1fr; gap:20px; text-align:left; }
.phone-contacts>a { display:flex; gap:12px; align-items:center; padding:5px 0; }
.phone-contacts>a>svg { width:21px; height:21px; color:#6e85a9; flex-shrink:0; }
.phone-label { display:block; color:#82828f; font-size:10px; margin-bottom:7px; }
.phone-number { display:block; color:#cccdd8; font-size:17px; letter-spacing:-.25px; white-space:nowrap; transition:color .2s; }
.phone-contacts a:hover .phone-number { color:#72b7ff; }
.direct-email { color:#696975; font-size:11px; margin:29px 0 0; }
.direct-email a { color:#a1a1b1; margin-left:5px; }
.direct-email a:hover { color:#72b7ff; }
@media(max-width:700px){.contact-intro{font-size:13px;margin-bottom:29px}.form-row{gap:14px}.form-field input,.form-field textarea{font-size:16px;padding:13px 14px}.form-field label{font-size:11px}.form-field{margin-bottom:18px}.phone-number{font-size:15px}.phone-label{font-size:9px}.phone-contacts>a{gap:9px}.phone-contacts>a>svg{width:18px;height:18px}.contact{padding-bottom:45px}}
@media(max-width:480px){.form-row{grid-template-columns:1fr;gap:0}.form-field textarea{min-height:145px}.form-actions{align-items:flex-start;flex-direction:column;gap:16px}.form-actions p br{display:none}.submit-button{width:100%;padding:15px}.form-preview-note{text-align:center;font-size:9px}.phone-contacts{grid-template-columns:1fr;gap:19px}.phone-contacts>a{justify-content:flex-start;gap:14px}.phone-label{font-size:10px}.phone-number{font-size:18px}.phone-contacts>a>svg{width:21px;height:21px}.direct-email{font-size:10px}.contact-alternatives{margin-top:28px;padding-top:23px}}

/* One direct phone contact; AI stays within the existing service selector. */
.phone-contacts { grid-template-columns:1fr; justify-items:center; }
@media(max-width:700px) { .ai-tab-detail { display:none; } }
@media(max-width:480px) { .service-tabs button { padding:10px 10px; } }
@media(max-width:360px) { .service-tabs button { padding:10px 8px; font-size:9px; } }

/* Final legibility and interaction pass. Decorative device UI retains its scale. */
.section-kicker { color:#8b8b9a; font-size:10px; }
.form-actions p,.form-preview-note,.phone-label,.direct-email { color:#92929f; }
.form-preview-note { font-size:11px; }
.form-field input::placeholder,.form-field textarea::placeholder { color:#8b8b97; }
.form-field input,.form-field textarea { border-color:#ffffff25; }
.form-field input[readonly],.form-field textarea[readonly] { opacity:.75; }
.service-tabs button { min-height:44px; min-width:44px; }
nav>a { display:inline-flex; align-items:center; min-height:44px; }
footer { color:#898995; font-size:11px; }
footer a { display:inline-flex; align-items:center; min-height:44px; }
.back-top { margin-right:20px; }
.direct-email a { display:inline-block; padding:10px 0; }
.direct-email { margin-top:19px; }

/* Scale the whole scene to keep the phone and watch inside narrow screens. */
@media(max-width:950px) {
  .device-stage { --stage-scale:.8; transform:scale(var(--stage-scale)); margin-bottom:calc(490px * (var(--stage-scale) - 1)); }
}
@media(max-width:750px) { .device-stage { --stage-scale:.68; } }
@media(max-width:650px) { .device-stage { --stage-scale:.57; } }
@media(max-width:550px) { .device-stage { --stage-scale:.48; } }
@media(max-width:480px) { .device-stage { --stage-scale:.4; } }
@media(max-width:400px) { .device-stage { --stage-scale:.36; } }
@media(max-width:360px) { .device-stage { --stage-scale:.32; } }
@media(max-width:700px) {
  .section-kicker { font-size:9px; letter-spacing:1.35px; }
  .form-field label { font-size:12px; }
  .form-preview-note { font-size:11px; }
  .phone-label { font-size:11px; }
  .direct-email { font-size:12px; }
}
@media(max-width:480px) {
  .service-tabs { max-width:calc(100% + 24px); margin-inline:-12px; padding:3px; }
  .service-tabs button { padding:10px 6px; font-size:10px; flex-shrink:0; }
  footer { display:grid; grid-template-columns:1fr auto; gap:0 16px; padding:12px 0 20px; font-size:10px; }
  .footer-brand { grid-column:1; grid-row:1; }
  .back-top { grid-column:2; grid-row:1; margin:0; justify-self:end; }
  footer>span:not(.footer-note) { grid-column:1 / -1; grid-row:2; }
}

/* All services remain readable if scripting is unavailable. */
.no-js .service-tabs { display:none; }
.no-js .service-panels [role=tabpanel] { display:block; margin:26px auto; }
@media print {
  .scroll-reveal.reveal-pending { opacity:1; translate:none; }
  .service-tabs { display:none; }
  .service-panels [role=tabpanel] { display:block; margin:20px 0; }
  .device-stage { break-inside:avoid; }
}
@media(max-width:700px) {
  .eyebrow { font-size:9px; letter-spacing:1.2px; }
  .intro span { font-size:13px; }
  .service-panels p { font-size:14px; }
  .service-panels { min-height:156px; }
}

/* Contact endpoint: a honeypot invisible to visitors and assistive technology. */
.form-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;pointer-events:none}
.form-privacy-note{font-size:12px;line-height:1.7;color:#a1a1aa;text-align:left;margin:22px 0 0;max-width:620px}
