/* DoDelivery: a little extraordinary in the everyday. */
:root { --world-accent: #ff7900; }
.header { background: #0b0d0ee8; backdrop-filter: blur(18px); }
.header::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; background: var(--orange); transform: scaleX(var(--page-progress,0)); transform-origin: left; }
.hero h1 { font-size: clamp(64px, 6.1vw, 100px); line-height: .98; letter-spacing: -.065em; }
.hero .lead { max-width: 430px; }
.hero h1 .orange { display: inline-block; color: var(--orange); }
.delivery-world { position: absolute; inset: -8% -18%; width: 136%; height: 116%; z-index: 2; pointer-events: none; opacity: 0; transition: opacity .7s; }
.world-ready .delivery-world { opacity: 1; }
.world-ready .orbit, .world-ready .scene-plus { opacity: 0; }
.world-ready .scene-word { opacity: .25; font-size: clamp(90px,13vw,190px); transform: rotate(-90deg) translateX(var(--word-shift,0px)); color: transparent; -webkit-text-stroke: 1px #ffffff24; }
.world-ready .phone { z-index: 3; transform: translate3d(var(--phone-x,0px),var(--phone-y,0px),0) rotateX(var(--phone-rx,0deg)) rotateY(var(--phone-ry,0deg)) rotateZ(var(--phone-rz,-8deg)) scale(var(--phone-scale,.88)) !important; box-shadow: 0 0 0 2px #696c6e, 0 0 0 5px #101416, 18px 30px 70px #000b, -12px 0 65px #ff790012; }
.world-ready .phone::after { content: ''; pointer-events: none; position: absolute; inset: 0; z-index: 6; background: linear-gradient(115deg,transparent 30%,#ffffff0b 48%,transparent 65%); transform: translateX(var(--glint,0%)); }
.world-ready .floating-card { z-index: 4; backdrop-filter: blur(14px); background: #202326dc; transition: opacity .4s, transform .5s; }
.world-ready .floating-top { transform: translate(-12px,var(--float-y,0px)) rotate(-7deg) scale(.85); top: 25%; }
.world-ready .floating-bottom { transform: translate(12px,var(--float-y,0px)) rotate(6deg) scale(.85); bottom: 12%; }
.world-controls { display: flex; justify-content: center; gap: 5px; position: relative; z-index: 6; padding: 5px; margin: 2px auto 0; border: 1px solid #ffffff18; background: #151819; border-radius: 99px; }
.world-controls button { border: 0; color: #858b8e; background: transparent; padding: 10px 15px; border-radius: 99px; cursor: pointer; font-family: inherit; font-size: 9px; font-weight: 600; line-height: 1.3; transition: color .2s,background .2s,transform .2s; }
.world-controls button span { font-size: 12px; margin-left: 5px; }
.world-controls button[aria-pressed=true] { color: #131414; background: #ff8a2c; }
.world-controls button:hover { transform: translateY(-2px); color: #fff; }
.world-controls button[aria-pressed=true]:hover { color: #131414; }
.world-controls button:focus-visible { outline: 2px solid white; outline-offset: 3px; }
.world-hint { text-align: center; font-size: 10px; color: #a9abad; margin: 11px 0 16px; }
.world-hint span { display: block; margin-top: 3px; font-size: 9px; color: #767b7e; }
.stage-caption { margin-top: 0; font-size: 8px; }
.device-stage { min-height: 720px; }
.scene { height: 600px; max-height: calc(100% - 150px); }
.step { position: relative; }
.step h2 { transition: opacity .4s; }
.motion-enhanced .step { opacity: var(--section-opacity,1); transform: translateY(var(--section-y,0px)); }
.possibilities { position: relative; padding: 120px max(40px,calc((100vw - 1280px)/2)) 100px; overflow: hidden; background: #e9e7df; color: #141718; }
.possibilities .eyebrow { color: #68695f; }
.possibilities h2 { font-size: clamp(48px,7.6vw,112px); line-height: 1.02; letter-spacing: -.065em; margin: 40px 0 64px; }
.possibilities h2 span { color: #d95c00; }
.category-stories { display: grid; grid-template-columns: repeat(3,1fr); gap: 40px; }
.category-stories article { border-top: 1px solid #14171840; padding-top: 23px; }
.category-number { font-size: 10px; font-weight: 700; letter-spacing: .08em; }
.category-stories h3 { font-size: clamp(24px,2.5vw,35px); line-height: 1.1; margin: 26px 0 15px; letter-spacing: -.04em; }
.category-stories p { color: #565954; font-size: 16px; line-height: 1.7; max-width: 340px; }
.category-tags { display: block; font-size: 11px; margin-top: 24px; color: #8a491c; }
.range-note { font-size: 12px; color: #696b65; margin: 40px 0 70px; }
.type-ribbon { display: flex; width: max-content; gap: 40px; color: #171919; font-size: clamp(50px,7vw,100px); line-height: 1; font-weight: 800; letter-spacing: -.055em; transform: translateX(var(--ribbon-x,0px)); }
.type-ribbon span { white-space: nowrap; }
.button { transition: transform .25s,box-shadow .25s,background .2s; }
.button:hover { transform: translateY(-4px); box-shadow: 0 12px 36px #ff790029; }
.reviews figure { transition: transform .35s,border-color .35s; }
.reviews figure:hover { transform: translateY(-8px) rotate(-1deg); border-color: #ff790080; }
@media(min-width:761px) and (max-height:820px) { .device-stage { min-height: 590px; height: calc(100svh - 105px); } .scene { height: 480px; } .world-hint { margin-bottom: 10px; } }
@media(max-width:1100px) { .world-controls button { padding: 9px 10px; } .category-stories { gap: 25px; } }
@media(max-width:760px) {
 .hero h1 { font-size: clamp(58px,12.7vw,91px); }
 .device-stage { height: 730px; min-height: 0; }
 .scene { height: 580px; max-height: none; }
 .delivery-world { inset: -3% -14%; width: 128%; height: 106%; }
 .world-ready .phone { --phone-scale: .87; }
 .world-ready .floating-top { left: -18px; top: 20%; transform: rotate(-7deg) scale(.75); transform-origin: left; }
 .world-ready .floating-bottom { right: -20px; bottom: 10%; transform: rotate(6deg) scale(.72); transform-origin: right; }
 .world-hint span { display: none; }
 .possibilities { padding: 70px 24px; }
 .possibilities h2 { margin: 30px 0 42px; }
 .category-stories { grid-template-columns: 1fr; gap: 35px; }
 .category-stories h3 { margin: 18px 0 12px; }
 .range-note { margin-bottom: 50px; }
}
@media(prefers-reduced-motion:reduce) {
 .delivery-world { display: none; }
 .motion-enhanced .step { transform: none; opacity: 1; }
 .button:hover,.reviews figure:hover { transform: none; }
 .type-ribbon { transform: none; }
}
.world-ready .floating-top { display: none; }
.world-ready .floating-bottom { opacity: var(--story-depth,0); }
.world-hint .world-description { display: inline; color: #a9abad; font-size: 10px; }
.world-spin { border: 0; background: none; color: #ff943d; cursor: pointer; display: block; margin: 7px auto 0; padding: 2px 10px; font: inherit; }
.world-spin span { display: inline; color: inherit; font-size: 15px; }
.world-spin:focus-visible { outline: 1px solid #ff943d; border-radius: 4px; }
@media(prefers-reduced-motion:reduce) { .world-spin { display: none; } }
.world-ready .phone { position: absolute; left: 50%; top: 50%; margin: 0; transform: translate(-50%,-50%) translate3d(var(--phone-x,0px),var(--phone-y,0px),0) rotateX(var(--phone-rx,0deg)) rotateY(var(--phone-ry,0deg)) rotateZ(var(--phone-rz,-8deg)) scale(var(--phone-scale,.88)) !important; }
.world-controls[hidden], .world-spin { display: none; }
.world-ready .world-spin { display: block; }
