/* Dazzy Pro contact form and cinematic visual polish */
#dazzy-contact-dialog{
  box-sizing:border-box;position:fixed;width:min(560px,calc(100% - 28px));max-width:560px;
  max-height:min(88dvh,820px);overflow:auto;margin:auto;padding:0;border:1px solid rgba(255,191,35,.34);
  border-radius:24px;color:#f8f7f4;background:linear-gradient(145deg,rgba(20,20,23,.985),rgba(7,8,12,.99));
  font:15px/1.55 Inter,system-ui,sans-serif;box-shadow:0 30px 110px rgba(0,0,0,.78),0 0 60px rgba(255,191,35,.11)
}
#dazzy-contact-dialog::backdrop{background:rgba(2,4,10,.78);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px)}
.dazzy-contact-head{position:relative;padding:28px 30px 22px;border-bottom:1px solid rgba(255,255,255,.08);background:radial-gradient(ellipse at 10% 0,rgba(255,191,35,.16),transparent 58%)}
.dazzy-contact-kicker{margin:0 42px 8px 0;color:#f2cf7e;font-size:11px;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
#dazzy-contact-title{margin:0 40px 7px 0;color:#fff;font-size:clamp(24px,5vw,30px);font-weight:850;line-height:1.15}
.dazzy-contact-intro{margin:0;color:#b8b8c2;font-size:14px}
#dazzy-contact-close{position:absolute;top:18px;right:18px;display:grid;place-items:center;width:42px;height:42px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.05);color:#fff;font:26px/1 Inter,system-ui,sans-serif;cursor:pointer}
#dazzy-contact-form{display:grid;gap:14px;padding:22px 30px 28px}
.dazzy-contact-field{display:grid;gap:7px}
.dazzy-contact-field label,.dazzy-contact-label{color:#f3f0e9;font-size:13px;font-weight:700}
#dazzy-contact-form input,#dazzy-contact-form select,#dazzy-contact-form textarea{
  box-sizing:border-box;width:100%;min-height:46px;padding:11px 13px;border:1px solid rgba(255,255,255,.14);
  border-radius:12px;background:#17171b;color:#fff;font:inherit;line-height:1.45
}
#dazzy-contact-form textarea{min-height:96px;resize:vertical}
#dazzy-contact-form input::placeholder,#dazzy-contact-form textarea::placeholder{color:#8d8b91}
#dazzy-contact-form select option{background:#17171b;color:#fff}
.dazzy-contact-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.dazzy-contact-choice{position:relative;display:flex;align-items:center;gap:10px;min-height:54px;padding:10px 12px;border:1px solid rgba(255,255,255,.11);border-radius:13px;background:rgba(255,255,255,.035);color:#eee;text-align:left;font:600 13px/1.3 Inter,system-ui,sans-serif;cursor:pointer;transition:border-color .18s ease,background .18s ease,transform .18s ease}
.dazzy-contact-choice:hover{border-color:rgba(255,191,35,.48);background:rgba(255,191,35,.07)}
.dazzy-contact-choice:active{transform:scale(.985)}
.dazzy-contact-choice[aria-pressed="true"]{border-color:#f3cc70;background:linear-gradient(130deg,rgba(255,191,35,.18),rgba(255,191,35,.06));box-shadow:inset 0 0 0 1px rgba(255,191,35,.12)}
.dazzy-contact-choice-icon{display:grid;place-items:center;flex:0 0 30px;width:30px;height:30px;border:1px solid rgba(255,207,112,.32);border-radius:10px;background:rgba(255,191,35,.09);color:#f4d17c}
.dazzy-contact-choice-icon svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
.dazzy-contact-choice:focus-visible,#dazzy-contact-close:focus-visible,#dazzy-contact-form :focus-visible,#dazzy-contact-submit:focus-visible{outline:3px solid #ffe09c;outline-offset:3px}
#dazzy-contact-submit{display:flex;align-items:center;justify-content:center;gap:9px;width:100%;min-height:50px;margin-top:2px;border:0;border-radius:13px;background:linear-gradient(135deg,#22c66d,#0c9d50);color:#fff;font:800 15px Inter,system-ui,sans-serif;box-shadow:0 10px 28px rgba(12,157,80,.22);cursor:pointer}
#dazzy-contact-submit svg{width:19px;height:19px;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.dazzy-contact-note{margin:0;color:#93929b;font-size:11px;line-height:1.55}
@media(max-width:480px){
 #dazzy-contact-dialog{width:calc(100% - 20px);max-height:calc(100dvh - 20px);border-radius:20px}
 .dazzy-contact-head{padding:23px 20px 18px}
 #dazzy-contact-form{gap:12px;padding:18px 20px 22px}
 .dazzy-contact-choices{gap:7px}
 .dazzy-contact-choice{min-height:52px;padding:8px;font-size:12px}
 .dazzy-contact-choice-icon{flex-basis:27px;width:27px;height:27px}
}
@media(max-width:350px){.dazzy-contact-choices{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.dazzy-contact-choice{transition:none}}

/* Cinematic ambient background using the site's existing imagery. */
body{
  background-color:#030408!important;
  background-image:
    linear-gradient(180deg,rgba(3,4,8,.56),rgba(3,4,8,.82) 42%,rgba(3,4,8,.94)),
    radial-gradient(ellipse at 50% 0,rgba(199,142,40,.13),transparent 50%),
    url('/images/cinema-background-v1.webp')!important;
  background-position:center top,center top,center 20%!important;
  background-size:cover,cover,cover!important;
  background-attachment:fixed,fixed,fixed!important;
}
#root{position:relative}
#root .glass-card,#root .spc-card,#root .dazzy-app-art{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
#root svg.lucide{stroke-width:2.15;filter:drop-shadow(0 2px 8px rgba(255,191,35,.22))}
#root .dazzy-app-art{border-color:rgba(255,205,105,.42);box-shadow:0 12px 34px rgba(0,0,0,.3)}
#root .dazzy-app-art__image{opacity:.9;filter:saturate(1.08) contrast(1.06)}
@media(prefers-reduced-motion:reduce){#root svg.lucide{filter:none}}

.dazzy-step-app-emblem{box-sizing:border-box;width:min(220px,100%);height:100px;border-color:rgba(255,205,105,.48);border-radius:14px;background:linear-gradient(0deg,rgba(5,5,7,.65),rgba(5,5,7,.1)),url('/images/pexels-freestockpro-12956039.jpg') center 52%/cover no-repeat;box-shadow:0 10px 28px rgba(0,0,0,.38),0 0 24px rgba(255,191,35,.1)}
.dazzy-step-app-emblem svg{display:none}
.dazzy-device-art{overflow:hidden;border:1px solid rgba(255,205,105,.25);border-radius:14px;background:radial-gradient(ellipse at 50% 40%,rgba(255,191,35,.17),transparent 70%),linear-gradient(145deg,#201c12,#090a0d);box-shadow:inset 0 1px rgba(255,255,255,.07),0 8px 22px rgba(0,0,0,.28)}
.dazzy-device-hardware{border-color:rgba(255,222,151,.9);box-shadow:0 0 28px rgba(255,191,35,.24),inset 0 0 16px rgba(255,191,35,.08)}

/* Let the cinematic backdrop breathe between content panels. */
#root .dazzy-pricing-color,
#root .dazzy-devices-section,
#root .dazzy-steps,
#root .dazzy-entertainment{
  background:
    linear-gradient(180deg,rgba(4,5,9,.72),rgba(4,5,9,.86)),
    radial-gradient(ellipse at 50% 20%,rgba(193,141,48,.085),transparent 58%)!important;
}
#root .dazzy-step{background:linear-gradient(145deg,rgba(28,27,28,.91),rgba(9,10,13,.91))}
#root .spc-card{backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}
@media(max-width:767px){body{background-attachment:scroll,scroll,scroll!important}}

/* Clear, Dazzy-branded device illustrations for the device cards. */
#root .dazzy-device-art{height:124px;margin:1.05rem 0 .9rem;border:1px solid rgba(232,196,125,.27);border-radius:14px;background-color:rgba(10,11,14,.72);background-position:center;background-repeat:no-repeat;background-size:contain;box-shadow:inset 0 1px rgba(255,255,255,.045),0 8px 22px rgba(0,0,0,.24)}
#root .dazzy-device-halo,#root .dazzy-device-hardware,#root .dazzy-device-remote{display:none!important}
#root .dazzy-device-tv .dazzy-device-art{background-image:url('/images/device-icons/smart-tv.svg')}
#root .dazzy-device-android .dazzy-device-art{background-image:url('/images/device-icons/android.svg')}
#root .dazzy-device-apple .dazzy-device-art{background-image:url('/images/device-icons/apple.svg')}
#root .dazzy-device-fire .dazzy-device-art{background-image:url('/images/device-icons/fire-tv.svg')}
@media(max-width:720px){#root .dazzy-device-art{height:136px}}

/* Replace the third setup card's empty play box with a clear activation illustration. */
#root .dazzy-step-watch .dazzy-step-mini-screen{
  box-sizing:border-box;width:min(220px,100%);height:100px;border:1px solid rgba(255,205,105,.42);
  border-radius:14px;background:#101114 url('/images/device-icons/activate.svg') center/cover no-repeat;
  box-shadow:0 10px 28px rgba(0,0,0,.34),0 0 22px rgba(255,191,35,.11)
}
#root .dazzy-step-watch .dazzy-step-play{display:none}
@media(max-width:480px){#root .dazzy-step-watch .dazzy-step-mini-screen{height:96px}}
