/* ROVENTA.AI interactive inquiry — self-contained, responsive, accessible */
#contact.contact-constellation{position:relative;isolation:isolate;overflow:hidden;padding:115px 0 125px;background:radial-gradient(ellipse at 18% 24%,#122c62 0%,#08162d 45%,#050b19 100%)!important}
#contact .contact-depth{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
#contact .contact-depth span{position:absolute;border-radius:50%;filter:blur(50px);opacity:.23;animation:contactDrift 15s ease-in-out infinite alternate}
#contact .contact-depth span:nth-child(1){width:370px;height:370px;left:-130px;top:-120px;background:#208bff}
#contact .contact-depth span:nth-child(2){width:460px;height:460px;right:-180px;top:25%;background:#835eff;animation-delay:-7s}
#contact .contact-depth span:nth-child(3){width:270px;height:270px;left:36%;bottom:-130px;background:#23dfff;animation-delay:-11s}
#contact .contact-depth i{position:absolute;width:550px;height:550px;border:1px solid #7bd4ff21;border-radius:50%;left:5%;top:12%;transform:rotateX(60deg);animation:contactOrbit 23s linear infinite}
#contact .contact-depth i:nth-of-type(2){left:auto;right:-8%;top:-24%;width:620px;height:620px;border-style:dashed;animation-direction:reverse;animation-duration:33s}
@keyframes contactDrift{to{transform:translate3d(100px,-70px,0) scale(1.22);opacity:.13}}
@keyframes contactOrbit{to{transform:rotateX(60deg) rotateZ(360deg)}}
#contact .contact-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(22px,5vw,75px);align-items:start}
#contact .contact-narrative{position:sticky;top:115px;min-width:0;padding:18px 0}
#contact .contact-narrative h2{font-size:clamp(35px,4vw,62px);line-height:1.12;letter-spacing:-2.5px;margin:18px 0 24px}
#contact .contact-lead{font-size:15px;line-height:1.9;color:#b9cce7;max-width:530px}
#contact .contact-direct-actions{display:flex;flex-wrap:wrap;gap:11px;margin:26px 0 6px}
#contact .contact-direct{min-width:190px;max-width:100%;flex:1;display:flex;align-items:center;gap:12px;border:1px solid #70c9ff59;background:linear-gradient(135deg,#18345a8a,#0b1c33c2);border-radius:15px;padding:14px 15px;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease;overflow:hidden}
#contact .contact-direct:hover{transform:translateY(-3px);border-color:#78e6ff;box-shadow:0 16px 35px #0005,0 0 25px #44a4ff2a}
#contact .contact-direct>span:first-child{width:38px;height:38px;flex:none;display:grid;place-items:center;border-radius:11px;background:#295a91;color:#adf3ff;font-size:19px}
#contact .contact-direct strong,#contact .contact-direct small{display:block}
#contact .contact-direct strong{font-size:12px;color:#f3faff;margin-bottom:4px}
#contact .contact-direct small{font-size:11px;color:#a8d9fb;white-space:normal;overflow-wrap:anywhere}
#contact .contact-phone-link{display:inline-flex;gap:7px;align-items:center;margin-top:14px;color:#b7d8fb;font-size:12px;text-decoration:none;transition:color .25s ease}
#contact .contact-phone-link:hover{color:#75f2ff}
#contact .contact-phone-link strong{color:#ecf9ff;font-weight:800}
#contact .contact-value-list{display:grid;gap:17px;margin:32px 0}
#contact .contact-value{display:flex;align-items:center;gap:14px}
#contact .contact-value-icon{width:46px;height:46px;flex:none;display:grid;place-items:center;border-radius:14px;border:1px solid #69b8ff55;background:linear-gradient(145deg,#1b477d,#10233e);color:#72e7ff;font-size:20px;box-shadow:0 11px 28px #0004;transition:transform .4s ease,box-shadow .4s ease}
#contact .contact-value:hover .contact-value-icon{transform:perspective(300px) rotateY(-19deg) translateY(-4px);box-shadow:0 12px 32px #319dff4d}
#contact .contact-value strong,#contact .contact-value small{display:block}
#contact .contact-value strong{font-size:14px;color:#f1f7ff;margin-bottom:4px}
#contact .contact-value small{font-size:12px;color:#95aecf;line-height:1.5}
#contact .contact-jump{margin-top:27px;min-height:47px}
#contact .live-brief{position:relative;isolation:isolate;overflow:hidden;margin-top:38px;background:linear-gradient(135deg,#19345ed9,#091833dd);border:1px solid #76bfff6b;border-radius:19px;padding:22px;box-shadow:0 20px 52px #0006,inset 0 1px #ffffff17;transform:perspective(900px) rotateY(5deg);transition:transform .65s,box-shadow .65s}
#contact .live-brief:hover{transform:perspective(900px) rotateY(0) translateY(-5px);box-shadow:0 26px 68px #0008,0 0 40px #3b8fff30}
#contact .live-brief-head{display:flex;align-items:center;gap:9px;color:#89caff;font-size:10px;font-weight:800;letter-spacing:1.5px;margin-bottom:20px}
#contact .live-pulse{width:8px;height:8px;border-radius:50%;background:#58f1cf;box-shadow:0 0 14px #58f1cf;animation:contactPulse 2s ease-in-out infinite}
#contact .live-brief>strong{font-family:Manrope,sans-serif;font-size:clamp(17px,2.2vw,23px);display:block;max-width:95%;word-break:break-word;position:relative;z-index:1}
#contact .live-brief-meta{display:flex;flex-wrap:wrap;gap:9px;margin-top:20px;position:relative;z-index:1}
#contact .live-brief-meta span{font-size:10px;padding:8px 11px;color:#bcdefa;border-radius:20px;border:1px solid #68bfff45;background:#0a2348bb}
#contact .live-brief-orbit{position:absolute;width:250px;height:250px;border-radius:50%;top:-140px;right:-75px;background:#3785ff3c;filter:blur(42px);animation:contactFloat 9s ease-in-out infinite alternate}
@keyframes contactFloat{to{transform:translate(-60px,55px) scale(1.25)}}
@keyframes contactPulse{50%{opacity:.35;transform:scale(.7)}}

#contact .inquiry-card{position:relative;min-width:0;overflow:hidden;scroll-margin-top:92px;border-radius:25px;border:1px solid #90c9ff58;background:linear-gradient(155deg,#142847f5,#0a172df8 45%,#09142bf9);box-shadow:0 36px 100px #000a,0 0 80px #256aff24,inset 0 1px #ffffff28;transform-style:preserve-3d}
#contact .inquiry-card::before{content:"";position:absolute;inset:-1px;z-index:0;pointer-events:none;border-radius:inherit;background:radial-gradient(390px circle at var(--inquiry-x,80%) var(--inquiry-y,0%),#7cdfff20,transparent 75%)}
#contact .inquiry-card>*{position:relative;z-index:1}
#contact .inquiry-card-top{min-height:59px;padding:16px 23px;border-bottom:1px solid #ffffff18;background:#0e2544b3;display:flex;align-items:center;gap:14px}
#contact .window-dots{display:flex;gap:6px;flex:none}
#contact .window-dots i{width:9px;height:9px;display:block;border-radius:50%;background:#fb788e}
#contact .window-dots i:nth-child(2){background:#ffcc77}#contact .window-dots i:nth-child(3){background:#66ecc6}
#contact .inquiry-card-top>span:nth-of-type(1){font-size:10px;color:#b7cae5;letter-spacing:1px;font-weight:800;flex:1;min-width:0}
#contact .card-active{color:#69eaca;font-size:9px;letter-spacing:1px;font-weight:800;display:flex;align-items:center;gap:7px}
#contact .card-active i{width:6px;height:6px;background:#65eccc;border-radius:50%;box-shadow:0 0 12px #65eccc}
#contact .inquiry-progress{display:flex;align-items:center;gap:10px;padding:27px 30px 5px}
#contact .inquiry-progress-item{display:flex;flex-direction:column;gap:8px;align-items:center;color:#7892b6;min-width:55px}
#contact .inquiry-progress-item span{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:#12233d;border:1px solid #567fa757;font-size:11px;font-weight:900;transition:all .35s ease}
#contact .inquiry-progress-item small{font-size:10px;font-weight:700;letter-spacing:.5px}
#contact .inquiry-progress-item.current,#contact .inquiry-progress-item.done{color:#e3f7ff}
#contact .inquiry-progress-item.current span{border-color:#7af1ff;background:linear-gradient(130deg,#2779c7,#343d9f);box-shadow:0 0 28px #4aa7ff6d}
#contact .inquiry-progress-item.done span{background:#1a615e;border-color:#60efcc;color:#baffed}
#contact .inquiry-progress-line{height:2px;flex:1;border-radius:6px;background:#34506e;margin-bottom:22px;overflow:hidden}
#contact .inquiry-progress-line i{width:0;height:100%;display:block;background:linear-gradient(90deg,#57deff,#6df9d5);transition:width .55s ease}
#contact .inquiry-progress-line.done i{width:100%}
#contact #project-inquiry{padding:17px 30px 18px}
#contact .inquiry-step[hidden],#contact .inquiry-controls [hidden]{display:none!important}
#contact .inquiry-step{animation:inquiryEnter .45s cubic-bezier(.2,.75,.25,1) both}
@keyframes inquiryEnter{from{opacity:0;transform:translateY(16px) scale(.985)}to{opacity:1;transform:none}}
#contact .step-eyebrow{font-size:10px;color:#70defb;letter-spacing:1.7px;font-weight:900}
#contact .inquiry-step-heading h3{font-family:Manrope,sans-serif;font-size:clamp(23px,2.4vw,30px);letter-spacing:-1px;margin:9px 0}
#contact .inquiry-step-heading p{font-size:12px;color:#9db5d4;line-height:1.65;margin:0 0 24px}
#contact .service-picks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;margin-bottom:22px}
#contact .service-pick{display:flex;align-items:flex-start;flex-direction:column;min-width:0;gap:6px;text-align:left;position:relative;isolation:isolate;padding:16px;min-height:116px;border-radius:14px;border:1px solid #ffffff20;background:linear-gradient(145deg,#162b4b,#0d1c35);color:#d9ebff;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease,background .28s ease}
#contact .service-pick::after{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(125deg,transparent 35%,#ffffff13 50%,transparent 65%);background-size:240% 100%;opacity:0;pointer-events:none}
#contact .service-pick:hover{transform:translateY(-4px);border-color:#7bcaff8c;box-shadow:0 15px 35px #0005,0 0 24px #4dabff1d}
#contact .service-pick:hover::after{opacity:1;animation:inquirySheen 1s ease-out forwards}
@keyframes inquirySheen{to{background-position:-240% 0}}
#contact .service-pick[aria-pressed=true]{background:linear-gradient(145deg,#18547b,#273880);border-color:#7beaff;box-shadow:0 0 0 1px #60e5ff44,0 13px 33px #1c67ee3d}
#contact .service-pick[aria-pressed=true]::before{content:"✓";position:absolute;right:13px;top:13px;color:#67f2ce;font-weight:900}
#contact .service-pick>span{font-size:23px;line-height:1.1;color:#8deaff}
#contact .service-pick strong{font-size:13px}
#contact .service-pick small{font-size:10px;color:#9ab4d3;line-height:1.3}
#contact .service-pick:last-child{grid-column:1/-1;min-height:88px}
#contact .inquiry-label{display:block;margin:18px 0 8px;font-size:12px;font-weight:750;color:#cfe3f9}
#contact .inquiry-label span{color:#70e2ff}
#contact .inquiry-label em{font-size:10px;font-style:normal;color:#8da3c0;font-weight:400}
#contact .inquiry-input{width:100%;min-width:0;background:#081a34e8;color:#edf8ff;border:1px solid #6386aa69;border-radius:11px;padding:13px 14px;outline:0;font:inherit;font-size:13px;line-height:1.5;transition:border-color .25s,box-shadow .25s,background .25s;appearance:auto}
#contact .inquiry-input::placeholder{color:#7890af}
#contact .inquiry-input:focus{background:#10274b;border-color:#7deaff;box-shadow:0 0 0 3px #45bdff27,0 0 28px #398aff1c}
#contact .inquiry-input[aria-invalid=true]{border-color:#ff8899;box-shadow:0 0 0 2px #ff69841a}
#contact textarea.inquiry-input{resize:vertical;min-height:110px}
#contact .character-count{display:flex;justify-content:space-between;gap:12px;color:#7d99ba;font-size:10px;margin-top:8px}
#contact .inquiry-fields-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#contact .inquiry-info{display:flex;align-items:start;gap:10px;margin-top:23px;padding:13px;border:1px solid #65adff24;border-radius:10px;background:#22497c20}
#contact .inquiry-info span{color:#6ce9ff}
#contact .inquiry-info p{margin:0;font-size:11px;line-height:1.6;color:#a5b9d2}
#contact .inquiry-review{display:grid;gap:9px;border:1px solid #74bafc4a;border-radius:14px;background:linear-gradient(145deg,#0f294b,#0a1b34);padding:19px;word-break:break-word}
#contact .inquiry-review p{font-size:12px;color:#b0c6df;margin:0;white-space:pre-wrap;line-height:1.65}
#contact .review-row{display:grid;grid-template-columns:100px minmax(0,1fr);gap:9px;padding:8px 0;border-bottom:1px solid #ffffff10}
#contact .review-row:last-child{border-bottom:0}
#contact .review-row small{color:#85a7cf;font-size:11px}
#contact .review-row strong{color:#e6f5ff;font-size:12px;font-weight:650;white-space:pre-wrap}
#contact .inquiry-consent{display:flex;align-items:flex-start;gap:12px;margin-top:21px;font-size:11px;line-height:1.6;color:#b2c5dc;cursor:pointer}
#contact .inquiry-consent input{accent-color:#5bd9ff;width:17px;height:17px;flex:none;margin-top:2px}
#contact .inquiry-share-actions{display:grid;grid-template-columns:1fr 1fr;gap:11px;margin-top:20px}
#contact .inquiry-option{border:1px solid #65b7ff54;border-radius:12px;background:#102a4b;color:#dbedff;display:grid;grid-template-columns:auto 1fr;column-gap:10px;row-gap:2px;text-align:left;padding:13px;align-items:center;transition:transform .28s,border-color .28s,background .28s}
#contact .inquiry-option:hover{transform:translateY(-3px);background:#1a3a66;border-color:#8ee4ff}
#contact .inquiry-option[hidden]{display:none!important}
#contact .inquiry-option>span{grid-row:span 2;font-size:24px;color:#78dbff}
#contact .inquiry-option strong{font-size:12px}
#contact .inquiry-option small{font-size:10px;color:#9ab2cf}
#contact .inquiry-error{color:#ff9fb1;font-size:12px;margin:14px 0 0;min-height:0;line-height:1.5}
#contact .inquiry-error:empty{display:none}
#contact .inquiry-controls{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #ffffff17;padding-top:23px;margin-top:26px}
#contact .inquiry-controls .btn{min-height:46px;font-size:12px;white-space:nowrap}
#contact .inquiry-controls .btn.primary{margin-left:auto}
#contact .inquiry-step-count{font-size:11px;letter-spacing:1.4px;color:#94b0d0;font-weight:800}
#contact .inquiry-feedback{margin:0 30px;min-height:0;font-size:12px;line-height:1.6;color:#76ecd0}
#contact .inquiry-feedback:not(:empty){margin-bottom:17px;padding:12px 14px;border:1px solid #5bd8b53f;background:#18634e2a;border-radius:10px}
#contact .inquiry-trust{display:flex;gap:10px;align-items:start;border-top:1px solid #ffffff12;padding:15px 30px 19px;color:#879fbd;font-size:10px;line-height:1.6}
#contact .inquiry-trust>span:first-child{font-size:16px;color:#76d5ff}
@media(max-width:980px){#contact .contact-layout{grid-template-columns:1fr;gap:32px}#contact .contact-narrative{position:relative;top:auto;max-width:700px}#contact .inquiry-card{width:100%;max-width:780px;margin:auto}#contact .live-brief{max-width:570px;transform:none}}
@media(max-width:620px){
  #contact.contact-constellation{padding:72px 0 78px}
  #contact .contact-narrative{padding:0}
  #contact .contact-narrative h2{font-size:clamp(34px,9.8vw,45px);letter-spacing:-1.7px}
  #contact .contact-lead{font-size:13px;line-height:1.8}
  #contact .contact-value-list{gap:15px;margin:23px 0}
  #contact .live-brief{margin-top:23px;padding:18px}
  #contact .inquiry-card{border-radius:18px}
  #contact .inquiry-card-top{padding:14px 16px;gap:8px}
  #contact .inquiry-card-top>span:nth-of-type(1){font-size:9px}
  #contact .card-active{font-size:8px}
  #contact .inquiry-progress{padding:21px 18px 0;gap:8px}
  #contact .inquiry-progress-item{min-width:50px}
  #contact #project-inquiry{padding:17px 17px 15px}
  #contact .service-picks{gap:9px}
  #contact .service-pick{min-height:112px;padding:12px}
  #contact .service-pick strong{font-size:12px}
  #contact .service-pick small{font-size:9px}
  #contact .inquiry-fields-two{grid-template-columns:1fr;gap:0}
  #contact .inquiry-input{font-size:16px}
  #contact .inquiry-step-heading p{margin-bottom:16px}
  #contact .review-row{grid-template-columns:82px minmax(0,1fr)}
  #contact .inquiry-feedback{margin:0 17px}
  #contact .inquiry-trust{padding:15px 17px 19px}
}
@media(max-width:380px){#contact .inquiry-progress-item{min-width:42px}#contact .service-pick{padding:11px}#contact .inquiry-controls{gap:7px}#contact .inquiry-controls .btn{padding:12px 11px}#contact .inquiry-step-count{font-size:9px}}
@media(prefers-reduced-motion:reduce){#contact .contact-depth *,#contact .live-brief-orbit,#contact .live-pulse,#contact .service-pick::after{animation:none!important}#contact .inquiry-step{animation:none}#contact .live-brief,#contact .service-pick{transition:none}}
