:root{color-scheme:dark;--background:#101513;--text:#f4f4ec;--secondary:#9da69e;--accent:#d3f58b;--ease:cubic-bezier(.22,1,.36,1)}
*{box-sizing:border-box}body{margin:0;background:var(--background);color:var(--text);font-family:Inter,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}body{position:relative;isolation:isolate}.header,main,footer{width:min(1320px,calc(100% - 112px));margin:auto}.header{display:flex;align-items:center;justify-content:space-between;padding:32px 0;border-bottom:1px solid #ffffff14}.brand{display:flex;align-items:center;font-size:24px;font-weight:650;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;background:var(--accent);color:#182014;width:36px;height:36px;border-radius:10px;font-size:28px;margin-right:11px;padding-bottom:4px}.brand-dot{color:var(--accent)}.header-contact{font-size:13px;color:#ccd2cb;display:flex;gap:28px;align-items:center}.header-contact span{color:var(--accent);font-size:22px}.hero{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;min-height:650px;padding:80px 0 90px;gap:20px}.eyebrow{font-size:10px;letter-spacing:2.5px;font-weight:600;display:flex;align-items:center;gap:10px;margin:0 0 28px;color:#c0c9bd}.eyebrow span,.footer-dot{display:inline-block;width:6px;height:6px;background:var(--accent);border-radius:50%;box-shadow:0 0 16px #d3f55044}h1{font-size:clamp(48px,5.6vw,80px);line-height:1.06;letter-spacing:-4px;font-weight:500;margin:0}h1 em{font-style:normal;color:var(--accent)}.mobile-break{display:none}.intro{font-size:16px;line-height:1.8;color:var(--secondary);margin:27px 0 32px}.contact-button{display:inline-flex;align-items:center;gap:32px;background:var(--accent);color:#192116;padding:17px 21px;border-radius:6px;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.contact-button:hover{background:#e1ffa7;transform:translateY(-3px)}.contact-button span{font-size:21px;line-height:1}.email{display:block;width:fit-content;font-size:12px;color:var(--secondary);margin-top:18px}.email:hover{color:var(--accent)}.commerce-art{height:430px;position:relative;perspective:900px;background:radial-gradient(ellipse,#c3f28810,transparent 67%)}.orbit{position:absolute;width:360px;height:360px;border:1px solid #d3f58b1a;border-radius:50%;left:50%;top:50%;transform:translate(-50%,-50%) rotate(-25deg) scaleY(.7)}.orbit-two{width:440px;height:440px;transform:translate(-50%,-50%) rotate(40deg) scaleY(.7);border-style:dashed;border-color:#d3f58b14}.art-label{position:absolute;top:12px;left:50%;transform:translateX(-50%);font-size:9px;white-space:nowrap;letter-spacing:2px;color:#73806e}.object{position:absolute;width:190px;height:210px;left:50%;top:48%;transform:translate(-50%,-50%) rotate(-9deg);filter:drop-shadow(0 35px 35px #0007);animation:float 7s ease-in-out infinite}.object-front{position:absolute;inset:40px 25px 0 0;background:linear-gradient(135deg,#dfffa6,#a2cc61);clip-path:polygon(0 0,100% 15%,100% 100%,0 82%);display:grid;place-items:center}.object-front span{font-size:95px;font-weight:650;letter-spacing:-9px;color:#223919;transform:rotate(7deg);padding-bottom:20px}.object-top{position:absolute;top:0;left:0;width:100%;height:66px;background:linear-gradient(120deg,#f0ffcc,#cdeb9c);clip-path:polygon(0 61%,27% 0,100% 35%,87% 100%)}.object-side{position:absolute;right:0;top:23px;width:26px;height:187px;background:linear-gradient(90deg,#87a955,#698844);clip-path:polygon(0 23%,100% 0,100% 82%,0 100%)}.float-tag{position:absolute;display:flex;gap:12px;align-items:center;border:1px solid #ffffff16;background:linear-gradient(120deg,#263027ef,#182019ef);padding:15px 18px;border-radius:10px;font-size:12px;box-shadow:0 12px 35px #0003}.float-tag small{display:block;font-size:9px;color:#98a392;margin-top:5px}.tag-icon{background:#d3f58b12;color:var(--accent);display:grid;place-items:center;width:32px;height:32px;border-radius:8px;font-size:22px}.tag-top{top:75px;right:0;transform:rotate(4deg)}.tag-bottom{bottom:65px;left:0;transform:rotate(-4deg)}.coordinate{position:absolute;bottom:9px;right:26px;font-size:8px;letter-spacing:1.5px;color:#687564}.spark{position:absolute;color:var(--accent);font-size:22px;font-weight:200}.spark-one{top:100px;left:30px}.spark-two{right:45px;bottom:110px}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #ffffff19;border-bottom:1px solid #ffffff19;padding:30px 0 34px;gap:30px}.principle+.principle{border-left:1px solid #ffffff14;padding-left:30px}.number{color:var(--accent);font-size:10px;letter-spacing:1px}h2{font-size:16px;font-weight:500;margin:16px 0 8px;letter-spacing:-.3px}.principle p{font-size:12px;color:var(--secondary);margin:0;line-height:1.6}footer{display:flex;justify-content:space-between;padding:27px 0;font-size:10px;color:#7f8a7e}footer>span:last-child{display:flex;align-items:center;gap:12px}.art{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.glow{position:absolute;width:850px;height:850px;right:-320px;top:-300px;background:radial-gradient(ellipse,#a5cc6610,transparent 65%);transform:translate(var(--px,0px),var(--py,0px))}@keyframes float{50%{translate:0 -12px}}@media(min-width:1500px){.hero{min-height:740px}}@media(max-width:900px){.header,main,footer{width:calc(100% - 56px)}h1{letter-spacing:-2.8px}.hero{gap:0}.commerce-art{transform:scale(.85);margin-inline:-25px}.float-tag{padding:12px}.tag-top{right:-8px}.principles{gap:18px}.principle+.principle{padding-left:18px}}@media(max-width:640px){.header,main,footer{width:calc(100% - 40px)}.header{padding:22px 0}.brand{font-size:21px}.brand-mark{width:32px;height:32px;font-size:25px}.header-contact{gap:15px}.hero{grid-template-columns:1fr;padding:47px 0 32px;min-height:0}.eyebrow{margin-bottom:22px;font-size:9px}h1{font-size:clamp(45px,10.5vw,66px);letter-spacing:-2.8px;line-height:1.08}.intro{font-size:14px;margin:23px 0 26px}.contact-button{padding:16px 19px}.commerce-art{height:320px;transform:none;margin:30px 0 0;overflow:hidden}.object{scale:.8}.orbit{width:280px;height:280px}.orbit-two{width:340px;height:340px}.tag-top{top:49px;right:2px}.tag-bottom{bottom:45px;left:2px}.float-tag{font-size:10px;padding:11px 12px;gap:9px}.float-tag small{font-size:8px}.tag-icon{width:27px;height:27px;font-size:19px}.art-label{top:7px;font-size:8px}.coordinate{bottom:4px;right:4px;font-size:7px}.spark-one{left:13px;top:88px}.spark-two{right:15px;bottom:91px}.principles{grid-template-columns:1fr;padding:0;gap:0}.principle{padding:22px 0;position:relative}.principle+.principle{padding:22px 0;border-left:0;border-top:1px solid #ffffff14}.number{position:absolute;top:27px;left:0}.principle h2,.principle p{margin-left:42px}.principle h2{margin-top:0;font-size:15px}.principle p{font-size:11px}footer{font-size:9px;gap:15px;line-height:1.6;padding:23px 0}.glow{right:-500px}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}

/* A continuous notification rhythm: arrive, linger, then softly leave. */
.float-tag{--tilt:4deg;transform-origin:center;opacity:0;will-change:transform,opacity;animation:notification 12s var(--ease) infinite;backdrop-filter:blur(16px)}
.tag-top{animation-delay:.6s}
.tag-bottom{--tilt:-4deg;animation-delay:6.6s}
.float-tag>div{min-width:0}
.notification-meta{display:flex;justify-content:space-between;gap:25px;margin-bottom:7px;color:#b0baaa;font-size:7px;letter-spacing:1.2px;text-transform:uppercase}
.notification-meta time{color:#819079;letter-spacing:0;text-transform:none}
.float-tag::after{content:"";position:absolute;left:12px;right:12px;bottom:0;height:2px;border-radius:2px;background:var(--accent);transform:scaleX(0);transform-origin:left;opacity:.45;animation:notification-progress 12s linear infinite;animation-delay:inherit}
.tag-icon{animation:notification-icon 12s var(--ease) infinite;animation-delay:inherit}
.spark{animation:spark-breathe 5s ease-in-out infinite}.spark-two{animation-delay:2.5s}
.orbit-one{animation:orbit-breathe 9s ease-in-out infinite}
.orbit-two{animation:orbit-breathe 9s 4.5s ease-in-out infinite}
@keyframes notification{0%,3%{opacity:0;transform:translateY(20px) scale(.9) rotate(calc(var(--tilt) - 3deg));filter:blur(3px)}9%{opacity:1;transform:translateY(-3px) scale(1.015) rotate(var(--tilt));filter:blur(0)}13%,39%{opacity:1;transform:translateY(0) scale(1) rotate(var(--tilt));filter:blur(0)}47%,100%{opacity:0;transform:translateY(-14px) scale(.97) rotate(var(--tilt));filter:blur(3px)}}
@keyframes notification-progress{0%,9%{transform:scaleX(0);opacity:0}13%{transform:scaleX(1);opacity:.45}39%{transform:scaleX(0);opacity:.45}47%,100%{transform:scaleX(0);opacity:0}}
@keyframes notification-icon{0%,9%{transform:scale(.75)}16%,100%{transform:scale(1)}}
@keyframes spark-breathe{0%,100%{opacity:.35;scale:.8}50%{opacity:1;scale:1.1}}
@keyframes orbit-breathe{0%,100%{opacity:.45}50%{opacity:1}}
@media(prefers-reduced-motion:reduce){.float-tag{opacity:1;transform:rotate(var(--tilt));filter:none;will-change:auto}.float-tag::after{display:none}}
.principle p{max-width:34ch;line-height:1.85}
@media(max-width:640px){.principle p{max-width:none;line-height:1.8}}

/* Fit the complete composition to the available screen, without clipping text. */
body{min-height:100vh;min-height:100svh;display:grid;grid-template-rows:auto minmax(0,1fr) auto}
.header{padding-block:clamp(12px,2.5svh,25px)}
main{display:grid;grid-template-rows:minmax(0,1fr) auto;min-height:0}
.hero{min-height:0;padding-block:clamp(16px,3svh,40px)}
.hero-copy{min-width:0}
h1{font-size:clamp(38px,min(5.2vw,8svh),76px);letter-spacing:-.05em}
.eyebrow{margin-bottom:clamp(12px,2svh,24px)}
.intro{margin:clamp(12px,2.5svh,24px) 0 0;font-size:clamp(13px,1.8svh,16px);line-height:1.65}
.commerce-art{height:clamp(220px,43svh,420px);max-height:100%;margin-block:0;overflow:clip}
.principles{padding-block:clamp(12px,2.3svh,25px);gap:clamp(16px,2.5vw,30px)}
.principle p{max-width:none;font-size:clamp(11px,1.55svh,12px);line-height:1.65}
h2{margin:clamp(8px,1.5svh,14px) 0 7px;font-size:clamp(14px,1.9svh,16px)}
footer{padding-block:clamp(12px,2svh,20px)}
@media(min-width:641px) and (max-height:600px){
 .header{padding-block:10px}.brand{font-size:20px}.brand-mark{width:28px;height:28px;font-size:24px}
 .hero{padding-block:12px}.commerce-art{height:160px;transform:scale(.65);margin-block:-25px}
 h1{font-size:clamp(28px,6.7svh,42px)}.eyebrow{font-size:8px;margin-bottom:8px}.intro{font-size:11px;margin-top:10px}
 .principles{padding-block:10px;gap:16px}.principle+.principle{padding-left:16px}.number{font-size:8px}
 h2{font-size:12px;margin:6px 0}.principle p{font-size:10px;line-height:1.45}footer{padding-block:9px;font-size:9px}
}
@media(max-width:640px){
 .header,main,footer{width:calc(100% - 36px)}.header{padding-block:10px}.brand{font-size:20px}.brand-mark{width:28px;height:28px;font-size:24px}
 .hero{position:relative;display:flex;align-items:center;padding-block:clamp(14px,2.5svh,24px);gap:0}
 .hero-copy{position:relative;z-index:1}.mobile-break{display:none}
 h1{font-size:clamp(27px,5.3svh,43px);line-height:1.08;letter-spacing:-.05em}
 .eyebrow{font-size:8px;letter-spacing:2px;margin-bottom:10px}.intro{font-size:clamp(11px,1.8svh,14px);line-height:1.5;margin-top:12px}
 .commerce-art{position:absolute;right:-12px;top:50%;width:180px;height:180px;max-height:none;transform:translateY(-50%) scale(.65);transform-origin:right center;opacity:.14;margin:0;overflow:clip;pointer-events:none}
 .float-tag,.art-label,.coordinate,.spark{display:none}
 .principles{grid-template-columns:1fr;gap:0;padding-block:0}
 .principle,.principle+.principle{padding:clamp(8px,1.4svh,14px) 0;border-left:0;position:relative}
 .principle+.principle{border-top:1px solid #ffffff14}
 .number{position:absolute;top:clamp(10px,1.7svh,17px);left:0;font-size:8px}
 .principle h2,.principle p{margin-left:30px}
 .principle h2{font-size:clamp(12px,1.9svh,15px);margin-top:0;margin-bottom:5px}
 .principle p{font-size:clamp(10px,1.7svh,12px);line-height:1.5}
 footer{padding-block:11px;font-size:8px;gap:12px}footer>span:last-child{gap:7px}
}

body{min-height:calc(100vh - 2px);min-height:calc(100svh - 2px)}
@media(max-width:640px){
 .hero{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);align-items:stretch;padding-block:clamp(8px,1.6svh,14px)}
 h1{font-size:clamp(25px,4.7svh,35px)}
 .eyebrow{margin-bottom:8px}.intro{font-size:clamp(10px,1.6svh,12px);margin-top:8px;line-height:1.45}
 .commerce-art{position:relative;inset:auto;width:100%;height:100%;min-height:64px;max-height:140px;transform:none;opacity:1;margin:4px 0 0;overflow:clip;align-self:center}
 .object{scale:1;top:50%;transform:translate(-50%,-50%) scale(.26) rotate(-9deg);animation:mobile-float 7s ease-in-out infinite}
 .orbit{width:160px;height:160px}.orbit-two{width:190px;height:190px}
 .float-tag{display:flex;padding:6px 8px;font-size:8px;gap:6px;max-width:145px;border-radius:7px}
 .float-tag small{font-size:7px;margin-top:2px}.tag-icon{width:20px;height:20px;font-size:15px;border-radius:5px}
 .notification-meta{font-size:5px;margin-bottom:3px;gap:15px}
 .tag-top{top:5px;right:1px}.tag-bottom{bottom:5px;left:1px}
 .float-tag::after{left:6px;right:6px;height:1px}
 .principle p{font-size:clamp(10px,1.65svh,11.5px);line-height:1.45}
 .principle,.principle+.principle{padding-block:clamp(7px,1.3svh,12px)}
 .principle h2{font-size:clamp(11px,1.8svh,14px)}
 footer{padding-block:9px}
}
@keyframes mobile-float{50%{translate:0 -3px}}

/* Droventa identity: geometric D with a forward-facing cut. */
.brand{gap:11px;font-size:25px;font-weight:600;letter-spacing:-1.15px;line-height:1}
.brand-symbol{display:block;flex:none;width:38px;height:38px;color:var(--accent)}
.brand-wordmark{display:block;padding-bottom:2px}.brand-dot{margin-left:1px}
@media(max-width:640px){.brand{gap:9px;font-size:22px;letter-spacing:-.9px}.brand-symbol{width:32px;height:32px}}
@media(min-width:641px) and (max-height:600px){.brand{font-size:21px}.brand-symbol{width:30px;height:30px}}

/* Refined capitalized wordmark and two-tone geometric monogram. */
.brand{gap:13px;font-size:27px;font-weight:600;letter-spacing:-1px;line-height:1}
.brand-symbol{width:40px;height:40px}
.brand-wordmark{padding-bottom:1px}
@media(max-width:640px){.brand{gap:10px;font-size:23px;letter-spacing:-.7px}.brand-symbol{width:34px;height:34px}}
@media(min-width:641px) and (max-height:600px){.brand{gap:10px;font-size:22px}.brand-symbol{width:30px;height:30px}}

/* Custom vector lettering; independent of system fonts. */
.brand{display:inline-flex;gap:0;width:fit-content}
.brand-lockup{display:block;width:204px;height:auto;overflow:visible}
@media(max-width:640px){.brand-lockup{width:178px}}
@media(min-width:641px) and (max-height:600px){.brand-lockup{width:174px}}

.brand-image{position:relative;display:block;width:230px;height:48px;overflow:hidden}
.brand-image img{position:absolute;display:block;width:250px;height:auto;max-width:none;left:-9px;top:-16px}
@media(max-width:640px){.brand-image{width:200px;height:40px}.brand-image img{width:220px;left:-8px;top:-15px}}
@media(min-width:641px) and (max-height:600px){.brand-image{width:190px;height:38px}.brand-image img{width:210px;left:-8px;top:-14px}}

.package-monogram{display:block;width:92px;height:92px;fill:#101513;transform:rotate(7deg) translate(-3px,-9px)}
