/* DECT — 06 Nov 2026: focused home, project previews, and guided inquiry.
   Intentionally scoped; existing navbar and design system remain unchanged. */

/* DECT hero — native navy/blue/cream/champagne palette.
   Layered moving aurora ribbons, with a dark vignette behind the typography. */
.hero.dect-glow-hero{
 position:relative;isolation:isolate;display:grid;place-items:center;
 min-height:clamp(580px,76svh,780px)!important;
 padding:102px 0 115px!important;
 background:#0b1727!important;color:#f7f5ef!important;
 border:0!important;overflow:hidden!important;
}
.hero.dect-glow-hero::before,.hero.dect-glow-hero::after{display:none!important}
.dect-glow-field{
 position:absolute;inset:-16%;z-index:0;overflow:hidden;pointer-events:none;
 background:#081323;
}
/* The moving conic layer blends the colors instead of displaying separate blobs. */
.dect-glow-field::before{
 content:"";position:absolute;inset:-2%;
 background:url('dect-aurora.svg') center center / 100% 100% no-repeat;
 mix-blend-mode:screen;opacity:1;filter:contrast(160%) saturate(150%);
 animation:dect-aurora-turn 38s ease-in-out infinite alternate;
}
.dect-glow-field>span{position:absolute;display:block;border-radius:48% 52% 62% 38%;mix-blend-mode:screen;will-change:transform;pointer-events:none}
/* Four overlapping light ribbons: cobalt, blue-teal, champagne and steel-blue. */
.dect-glow-field .glow-a{
 width:108%;height:40%;left:-34%;top:33%;
 background:linear-gradient(100deg,transparent 4%,#1a5c9800 15%,#1c5b9d8c 31%,#1687b7e6 49%,#4ba5bdb5 64%,transparent 85%);
 filter:blur(26px);transform:rotate(-17deg);
 animation:dect-aurora-wave-a 21s ease-in-out infinite alternate;
}
.dect-glow-field .glow-b{
 width:100%;height:43%;left:12%;top:11%;
 background:linear-gradient(112deg,transparent 7%,#234e7600 19%,#3a70aac0 40%,#6a9dbb8f 58%,#2a749c4d 68%,transparent 83%);
 filter:blur(36px);opacity:.85;transform:rotate(21deg);
 animation:dect-aurora-wave-b 28s ease-in-out infinite alternate;
}
.dect-glow-field .glow-c{
 width:65%;height:53%;right:-16%;top:47%;
 background:radial-gradient(ellipse at 47% 44%,#c5a879a0 0%,#bfa47561 28%,#785d4028 48%,transparent 72%);
 filter:blur(46px);opacity:.60;
 animation:dect-aurora-wave-c 25s ease-in-out infinite alternate;
}
.dect-glow-field .glow-d{
 width:92%;height:37%;left:1%;bottom:-2%;
 background:linear-gradient(104deg,transparent 5%,#1c54847a 24%,#346faba8 46%,#337f9495 68%,transparent 89%);
 filter:blur(31px);opacity:.8;transform:rotate(11deg);
 animation:dect-aurora-wave-d 32s ease-in-out infinite alternate;
}
.dect-glow-field>span{opacity:.23!important}
.dect-glow-field .glow-c{opacity:.29!important}
/* Gentle continuous shifts, not flashing color or rapid movement. */
@keyframes dect-aurora-turn{
 0%{transform:translate3d(-6%,0,0) rotate(-12deg) scale(1)}
 50%{transform:translate3d(5%,-6%,0) rotate(6deg) scale(1.07)}
 100%{transform:translate3d(6%,5%,0) rotate(18deg) scale(1.03)}
}
@keyframes dect-aurora-wave-a{
 0%{transform:translate3d(-10%,3%,0) rotate(-20deg) scale(1)}
 50%{transform:translate3d(9%,-4%,0) rotate(-11deg) scale(1.09)}
 100%{transform:translate3d(17%,7%,0) rotate(-24deg) scale(1.02)}
}
@keyframes dect-aurora-wave-b{
 0%{transform:translate3d(8%,-8%,0) rotate(20deg) scale(1)}
 50%{transform:translate3d(-11%,9%,0) rotate(9deg) scale(1.14)}
 100%{transform:translate3d(-15%,-3%,0) rotate(26deg) scale(1.03)}
}
@keyframes dect-aurora-wave-c{
 0%{transform:translate3d(5%,7%,0) rotate(-6deg) scale(1)}
 50%{transform:translate3d(-17%,-10%,0) rotate(11deg) scale(1.16)}
 100%{transform:translate3d(-10%,5%,0) rotate(-3deg) scale(1.03)}
}
@keyframes dect-aurora-wave-d{
 0%{transform:translate3d(-10%,2%,0) rotate(11deg) scale(1)}
 50%{transform:translate3d(13%,-9%,0) rotate(4deg) scale(1.12)}
 100%{transform:translate3d(4%,4%,0) rotate(17deg) scale(1.04)}
}
.dect-glow-field::after{
 content:"";position:absolute;inset:0;
 background:
  radial-gradient(ellipse 49% 32% at 51% 44%,#081321ca,transparent 97%),
  linear-gradient(0deg,#07101ded,transparent 32%,transparent 75%,#07101dbc);
}
.dect-glow-content{position:relative;z-index:1;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;width:min(100% - 40px,1200px)}
.hero.dect-glow-hero h1{
 color:#faf8f3!important;margin:0 auto!important;max-width:960px!important;
 font-size:clamp(3.05rem,6vw,6.5rem)!important;line-height:1.1!important;
 letter-spacing:-.058em!important;font-weight:650!important;text-wrap:balance;
 text-shadow:0 4px 25px #09131e45;
}
.hero.dect-glow-hero h1 span{display:block;color:#e5dfd3!important}
.dect-glow-lead{max-width:630px;margin:27px auto 0!important;color:#e5eaf0!important;font-size:clamp(1.02rem,1.4vw,1.18rem);line-height:1.7;text-wrap:pretty;text-shadow:0 2px 14px #09131e52}
.dect-glow-actions{display:flex!important;align-items:center;justify-content:center;gap:14px!important;margin-top:34px!important;flex-wrap:wrap}
.dect-glow-actions .button{min-width:0!important;margin:0!important;min-height:55px!important;padding:15px 25px!important;font-size:.86rem!important;letter-spacing:0!important;white-space:normal}
.dect-glow-actions .button span{font-size:1.16rem}
.dect-glow-actions .dect-hero-primary{
 background:linear-gradient(145deg,#faf8f3,#e8e4db)!important;color:#142639!important;
 border-color:#fffaf1!important;box-shadow:inset 0 1px 0 #fff,0 10px 28px #020b1644!important;
}
.dect-glow-actions .dect-hero-secondary{
 background:linear-gradient(135deg,#ffffff14,#ffffff09),#132334a8!important;
 border-color:#ffffff65!important;color:#f9f7f3!important;
 box-shadow:inset 0 1px 0 #ffffff29,0 8px 22px #02081255!important;
}
@media(hover:hover) and (pointer:fine){
 .dect-glow-actions .dect-hero-primary:hover{background:#fff!important;color:#172537!important;border-color:#fff!important;box-shadow:0 14px 34px #0006!important;transform:translateY(-2px)}
 .dect-glow-actions .dect-hero-secondary:hover{background:linear-gradient(145deg,#ffffff25,#ffffff12),#21394ca8!important;border-color:#fffcf1b0!important;box-shadow:0 12px 28px #0005!important;transform:translateY(-2px)}
}
@media(max-width:700px){
 .hero.dect-glow-hero{min-height:590px!important;padding:95px 0 100px!important}
 .dect-glow-field{inset:-14% -35%}
 .dect-glow-field::before{filter:contrast(150%) saturate(145%)}
 .dect-glow-field .glow-a,.dect-glow-field .glow-b,.dect-glow-field .glow-c,.dect-glow-field .glow-d{filter:blur(42px)}
 .hero.dect-glow-hero h1{font-size:clamp(2.85rem,10.8vw,5.2rem)!important;letter-spacing:-.053em!important;line-height:1.1!important}
 .dect-glow-lead{font-size:1rem;max-width:520px;margin-top:24px!important}
 .dect-glow-actions{gap:10px!important;max-width:100%;margin-top:28px!important}
 .dect-glow-actions .button{min-height:52px!important;padding:13px 19px!important;font-size:.81rem!important}
}
@media(max-width:420px){
 .hero.dect-glow-hero{padding:86px 0 94px!important;min-height:580px!important}
 .dect-glow-content{width:min(100% - 34px,1200px)}
 .hero.dect-glow-hero h1{font-size:clamp(2.55rem,11.1vw,3.25rem)!important}
 .dect-glow-actions{width:100%;display:grid!important;grid-template-columns:1fr;gap:11px!important}
 .dect-glow-actions .button{width:100%!important;justify-content:center!important}
}
[dir=rtl] .hero.dect-glow-hero h1{letter-spacing:0!important;line-height:1.32!important;font-size:clamp(3rem,6.7vw,6rem)!important}
[dir=rtl] .dect-glow-actions .button{gap:15px}
@media(max-width:700px){[dir=rtl] .hero.dect-glow-hero h1{font-size:clamp(2.5rem,9.4vw,4.6rem)!important;line-height:1.35!important}}

/* Real project screenshots presented inside a desktop + phone composition.
   Phone screens are cropped previews from the provided project screenshots,
   not claimed to be separately captured mobile pages. */
.project-card .project-art.dect-device-art{
 position:relative!important;display:block!important;isolation:isolate;
 background:linear-gradient(150deg,#e9e7e2 0%,#d8d9d9 65%,#cdd8df 100%)!important;
 border:1px solid #d8d6d0!important;overflow:hidden!important;
 padding:0!important;
}
.project-card .dect-device-art:before,.project-card .dect-device-art:after{display:none!important}
.project-card .dect-device-art .device-scene{
 width:100%;height:100%;display:flex;align-items:center;justify-content:center;
 position:relative;overflow:hidden;direction:ltr;
 background:radial-gradient(ellipse at 43% 49%,#ffffffa0,transparent 67%);
}
.device-desktop{
 position:absolute;width:75%;height:51%;left:9%;top:22%;border:5px solid #292e32;
 border-bottom-width:6px;border-radius:9px 9px 4px 4px;overflow:hidden;
 background:#ece8de;box-shadow:0 18px 26px #22364939,0 2px 3px #ffffff77;
 transform:perspective(900px) rotateY(-3deg);transition:transform .4s ease;
}
.device-desktop-chrome{height:22px;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:0 9px;background:#faf8f3;color:#73777b;font-size:9px;line-height:1;white-space:nowrap}
.device-desktop-chrome>span:last-child{max-width:64%;overflow:hidden;text-overflow:ellipsis}
.device-chrome-dots{display:flex;gap:4px}.device-chrome-dots i{display:block;width:5px;height:5px;background:#b6bfc4;border-radius:50%}
.device-desktop-screen{height:calc(100% - 22px);overflow:hidden;background:#f3f1eb}
.device-desktop-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transform:none!important;filter:none!important}
.device-stand{position:absolute;top:74%;left:36%;width:22%;height:17%;background:linear-gradient(90deg,#89939b,#c1c8cb 46%,#8a939a);clip-path:polygon(39% 0,62% 0,70% 83%,100% 95%,100% 100%,0 100%,0 95%,30% 83%);filter:drop-shadow(0 5px 3px #253e4c35)}
.device-phone{
 position:absolute;z-index:2;width:21%;height:48%;right:8%;bottom:10%;
 border:5px solid #222a30;border-radius:18px;background:#f9f7f3;overflow:hidden;
 box-shadow:0 16px 24px #24344355,0 0 0 1px #ffffffa0;
 transform:rotate(4deg);transition:transform .4s ease;
}
.device-phone-speaker{position:absolute;top:5px;left:50%;transform:translateX(-50%);width:30%;height:4px;border-radius:8px;background:#3a4147;z-index:3}
.device-phone-screen{position:absolute;inset:13px 2px 3px;overflow:hidden;border-radius:5px;background:#e9e8e3}
.device-phone-screen img{display:block;width:100%;height:100%;object-fit:cover;object-position:center top;transform:none!important;filter:none!important}
.project-card .dect-device-art .preview-indicator{position:absolute!important;z-index:4;inset:12px 12px auto auto!important;background:#fbfaf7eb!important;color:#283847!important;font-size:.58rem!important;padding:8px 11px!important;box-shadow:0 5px 14px #1628381b!important}
@media(hover:hover) and (pointer:fine){
 .project-card:hover .device-desktop{transform:perspective(900px) rotateY(0deg) translateY(-3px)}
 .project-card:hover .device-phone{transform:rotate(0deg) translateY(-4px)}
}
@media(max-width:650px){
 .device-desktop{width:75%;left:8%;height:49%;top:23%}
 .device-phone{width:20%;height:47%;right:7%;bottom:11%}
 .device-desktop-chrome{height:19px}
 .device-desktop-screen{height:calc(100% - 19px)}
 .device-stand{top:72%}
}

/* Contact: single submission, three clearly grouped sections. */
.contact-layout:has(.dect-guided-form){grid-template-columns:minmax(0,.76fr) minmax(0,1.24fr);gap:clamp(38px,5vw,82px);align-items:start}
.contact-form.dect-guided-form{min-width:0;scroll-margin-top:108px;padding:clamp(24px,3.2vw,43px)!important}
.dect-guided-form .form-heading{margin-bottom:26px}
.dect-guided-form .form-heading .eyebrow{margin-bottom:10px}
.dect-guided-form .form-heading h2{font-size:clamp(2rem,3vw,3.35rem)!important;line-height:1.14;margin:0 0 12px}
.dect-guided-form .form-intro{font-size:.9rem;color:#67615a;line-height:1.6;margin:0;max-width:45ch}
.dect-guided-form .form-guided-layout{display:block;border-top:1px solid #e6ded3;padding-top:28px}
.dect-guided-form .form-step-section{min-inline-size:0;border:0;border-bottom:1px solid #e6ded3;padding:0 0 18px;margin:0 0 22px}
.dect-guided-form .form-step-section:last-of-type{border-bottom:0;margin-bottom:0;padding-bottom:0}
.dect-guided-form .form-step-section legend{font-size:.85rem;font-weight:750;color:#30465c;margin:0 0 12px;padding:0}
.dect-guided-form .form-step-section label{display:block;margin:0 0 17px!important;font-size:.79rem!important;color:#4e4943!important;min-width:0}
.dect-guided-form .form-step-section input,
.dect-guided-form .form-step-section select,
.dect-guided-form .form-step-section textarea{
 width:100%;min-width:0;box-sizing:border-box;display:block;margin:8px 0 0;padding:12px 13px;
 border:1px solid #d1c8bd!important;border-radius:9px;background:#fdfcf9!important;
 color:#2e2a24;font:inherit;font-size:.9rem;line-height:1.45;
 transition:border-color .2s,box-shadow .2s;
}
.dect-guided-form .form-step-section input:focus,
.dect-guided-form .form-step-section select:focus,
.dect-guided-form .form-step-section textarea:focus{
 outline:0;border-color:#3273a6!important;box-shadow:0 0 0 3px #3273a61c
}
.dect-guided-form .form-step-section textarea{resize:vertical;min-height:112px}
.dect-guided-form .form-step-section select{appearance:auto;cursor:pointer}
.dect-guided-form .form-step-section textarea::placeholder{color:#99948c}
.dect-guided-form .form-button{min-height:52px!important;margin-top:7px;max-width:100%}
.dect-guided-form .form-note{font-size:.77rem;color:#827c74;margin-top:14px;line-height:1.55}
.dect-guided-form .form-status{font-size:.86rem}
@media(max-width:1080px){
 .contact-layout:has(.dect-guided-form){grid-template-columns:1fr;gap:45px}
 .contact-layout .dect-guided-form{max-width:800px;width:100%;box-sizing:border-box}
}
@media(max-width:600px){
 .contact-form.dect-guided-form{padding:25px 20px!important}
 .dect-guided-form .form-step-section{margin-bottom:16px;padding-bottom:11px}
}
@media(prefers-reduced-motion:reduce){
 .dect-glow-field>span{animation:none!important;will-change:auto}
 .device-desktop,.device-phone{transition:none!important}
}

/* DECT Library entry: slightly deeper champagne tint, without changing nav geometry. */
.dock a.dock-library{
 background-color:rgba(169,134,80,.30)!important;
 color:#473724!important;
 box-shadow:inset 0 1px 1px #ffffff7d,0 3px 12px #6d51252b!important;
}
.dock a.dock-library:hover,.dock a.dock-library:focus-visible{
 background-color:rgba(169,134,80,.45)!important;
 color:#2a2118!important;
}
/* Off-screen spam trap must not create a 10,000px scroll area in RTL. */
.dect-guided-form .form-honeypot{
 position:absolute!important;top:0!important;left:auto!important;right:auto!important;
 inset-inline-start:0!important;width:1px!important;height:1px!important;
 opacity:0!important;clip-path:inset(50%);overflow:hidden;pointer-events:none!important;
}

/* The sections remain visible, so it is still a single quick form. */
.dect-guided-form .form-step-section:focus-within legend{color:#1d5079}
.dect-guided-form .form-step-section:focus-within{border-bottom-color:#c7b18d}

@media(prefers-reduced-motion:reduce){
 .dect-glow-field::before,.dect-glow-field>span{animation:none!important;will-change:auto!important}
}
