*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:#090a0d;color:#f4f3f1;font-family:Inter,Arial,sans-serif;font-size:13px;line-height:1.7;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}.wrap{width:min(1200px,calc(100% - 9vw));margin:auto}.grid-bg{background-color:#090a0d;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:46px 46px}.loader{position:fixed;inset:0;background:#08090b;z-index:9999;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:20px;transition:opacity .65s,visibility .65s}.loader.done{opacity:0;visibility:hidden}.loader-brand{font-family:'Barlow Condensed',sans-serif;font-weight:800;font-size:48px;letter-spacing:-2px}.loader-brand span,.brand-mark span{color:#ed792f}.loader-track{height:2px;width:180px;background:#242529;overflow:hidden}.loader-track i{display:block;height:100%;width:35%;background:#ed792f;animation:load 1.1s ease-in-out infinite}.loader small{font-size:8px;letter-spacing:3px;color:#96969b}@keyframes load{from{transform:translateX(-110%)}to{transform:translateX(330%)}}.progress{position:fixed;z-index:2000;top:0;left:0;height:2px;width:0;background:#ee792e}.header{height:76px;padding:0 4.5vw;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:1000;background:#090a0dea;border-bottom:1px solid #ffffff12;backdrop-filter:blur(16px);transition:height .3s}.header.scrolled{height:64px}.brand{display:flex;align-items:center;gap:8px;min-width:190px}.brand-mark{font-size:30px;line-height:1;font-family:'Barlow Condensed';font-weight:800;letter-spacing:-3px}.brand-name{font-family:'Barlow Condensed';font-size:20px;letter-spacing:1.4px;font-weight:700;line-height:1.05}.brand-name small{display:block;font-family:Inter;font-size:7px;letter-spacing:1.2px;color:#a5a5a8;margin-top:5px;font-weight:500}.header nav{display:flex;gap:clamp(14px,2vw,30px);align-items:center}.header nav a{font-size:9px;letter-spacing:1px;color:#c6c6c9;transition:color .2s}.header nav a:hover{color:#f08237}.header nav b{color:#ef792f}.contact-btn{border:1px solid #bd642e;padding:10px 14px;font-size:9px;letter-spacing:1px;white-space:nowrap}.contact-btn span{color:#f0833a;margin-left:8px}.menu{display:none;background:none;color:white;border:0;font-size:22px}.hero{min-height:600px;height:calc(100vh - 76px);max-height:780px;position:relative;display:flex;align-items:center;overflow:hidden;border-bottom:1px solid #ffffff14}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#08090bf7 0%,#08090bdb 39%,#08090b6b 100%),url('../images/parking-tower1.jpg') center/cover;filter:saturate(.7);opacity:.9}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#08090b 0%,transparent 24%,transparent 82%,#08090b45)}.hero-glow{position:absolute;width:450px;height:450px;right:13%;top:20%;border-radius:50%;background:#ec76251b;filter:blur(65px)}.hero-content{position:relative;z-index:2;margin-left:8.5%;max-width:610px;padding-bottom:30px}.eyebrow,.section-label{font-size:9px;letter-spacing:2.1px;color:#c7c5c3}.eyebrow{margin-bottom:22px}.eyebrow i{display:inline-block;width:19px;height:2px;background:#f17b30;vertical-align:middle;margin-right:9px}.hero h1{font-family:'Barlow Condensed',Impact,sans-serif;font-size:clamp(52px,6.2vw,94px);line-height:.91;letter-spacing:-1.2px;margin:0 0 23px;font-weight:700}.hero h1 em,h2 em{font-style:normal;color:#ed792f}.hero-content>p{max-width:450px;color:#aaa9ad;font-size:12px;line-height:1.9;margin-bottom:27px}.hero-actions{display:flex;align-items:center;gap:26px}.orange-btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:14px 17px;background:#e9762c;color:#090a0d;border:1px solid #e9762c;font-size:9px;letter-spacing:1px;font-weight:700;transition:background .25s,transform .25s;cursor:pointer}.orange-btn:hover{background:#ff954d;transform:translateY(-2px)}.text-link{font-size:9px;letter-spacing:.8px}.play{display:inline-flex;width:27px;height:27px;border:1px solid #55565a;border-radius:50%;align-items:center;justify-content:center;font-size:8px;margin-right:8px}.hero-stamp{position:absolute;right:8%;top:47%;font-size:clamp(18px,2.4vw,36px);font-weight:700;letter-spacing:-1px;color:#ffffff18;z-index:1}.hero-stamp span{color:#ed792f}.hero-bottom{position:absolute;z-index:2;bottom:20px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;font-size:8px;letter-spacing:1.2px;color:#77787c}.corner-mark{position:absolute;right:4.5%;bottom:50px;color:#ee792f;font-size:23px;border:1px solid #ef792f55;width:36px;height:36px;text-align:center;z-index:2}.stats{display:grid;grid-template-columns:repeat(5,1fr);padding:30px 0 34px;border-bottom:1px solid #ffffff18}.stats>div{padding:0 22px;border-right:1px solid #ffffff18}.stats>div:first-child{padding-left:0}.stats>div:last-child{border:0}.stats strong{display:block;font-family:'Barlow Condensed';font-size:32px;line-height:1.2;font-weight:600}.stats strong span{color:#ee792f}.stats small{font-size:8px;letter-spacing:1px;color:#88898d}.section-label{color:#ef792f;margin-bottom:24px}.intro{padding-top:105px;padding-bottom:110px}.intro-grid{display:grid;grid-template-columns:1fr .72fr;gap:8%;align-items:start}.intro h2,.section-heading h2,.technology h2,.process h2,.contact h2{font-family:'Barlow Condensed';font-size:clamp(36px,4.5vw,60px);line-height:1.04;letter-spacing:-.3px;margin:0 0 25px}.intro-grid>div p{color:#8f9095;font-size:12px}.intro-grid>div .lead{color:#f1f0ef;font-size:17px;line-height:1.5;margin-top:0}.line-link{display:inline-block;border-bottom:1px solid #ef792f;padding:12px 0;font-size:9px;letter-spacing:1px;margin-top:15px}.line-link span{color:#ef792f;margin-left:25px}.intro-image{height:280px;margin-top:45px;position:relative;overflow:hidden;border:1px solid #292a2d}.intro-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.65);transition:transform .8s}.intro-image:hover img{transform:scale(1.04)}.image-caption{position:absolute;bottom:15px;left:18px;right:18px;font-size:8px;letter-spacing:1.5px;display:flex;justify-content:space-between}.image-caption b{color:#f08036;font-weight:500}.section-dark{background:#0d0e11;border-top:1px solid #ffffff0e;border-bottom:1px solid #ffffff0e}.solutions{padding:95px 0 105px}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:36px}.section-heading h2{margin:0}.section-heading>p{max-width:340px;color:#8e8f93;font-size:11px;margin:0 0 7px}.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px}.solution-card{min-height:225px;border:1px solid #292a2e;background:#111216;padding:20px;position:relative;transition:border-color .3s,transform .3s;overflow:hidden}.solution-card:hover{border-color:#e8782d;transform:translateY(-4px)}.card-top{display:flex;justify-content:space-between;color:#74757a;font-size:8px;letter-spacing:1px}.card-top span:last-child{color:#e87930}.solution-card h3{font-family:'Barlow Condensed';font-size:21px;margin:70px 0 8px;letter-spacing:.5px}.solution-card p{font-size:10px;color:#8b8c91;max-width:290px}.solution-card>a{font-size:8px;color:#ed792f;letter-spacing:1px;display:inline-block;margin-top:10px}.featured{background:linear-gradient(140deg,#18191e,#101114)}.car-illustration{position:absolute;top:57px;right:24px;color:#ef792f;font-size:24px;opacity:.5}.technology{padding-top:105px;padding-bottom:110px}.tech-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:center}.technology h2{margin-bottom:20px}.technology>div>p,.tech-grid>div:first-child>p{color:#8f9094;font-size:11px;max-width:420px}.tech-list{margin-top:28px;border-top:1px solid #2b2c30}.tech-list>div{padding:13px 10px;display:grid;grid-template-columns:35px 1fr 20px;border-bottom:1px solid #2b2c30;align-items:center;color:#85868b;font-size:9px;letter-spacing:.8px}.tech-list>div span{color:#5e5f63}.tech-list>div i{font-style:normal}.tech-list>div.active{color:#f1f0ee;background:#ffffff05}.tech-list>div.active i{color:#ef792f}.tech-image{height:385px;position:relative;border:1px solid #292a2d;overflow:hidden}.tech-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.7)}.tech-image span{position:absolute;bottom:16px;left:18px;font-size:8px;letter-spacing:1.4px}.process{padding:90px 0 100px}.process h2{margin-bottom:10px}.process-intro{color:#898a8f;font-size:11px;margin-bottom:48px}.process-line{display:grid;grid-template-columns:repeat(6,1fr);gap:17px}.process-line article{border-top:1px solid #414247;padding-top:17px;position:relative}.process-line article:before{content:"";position:absolute;top:-4px;left:0;width:7px;height:7px;background:#ed792f;border-radius:50%}.process-line article>span{font-family:'Barlow Condensed';color:#ed792f;font-size:24px}.process-line h3{font-family:'Barlow Condensed';font-size:15px;margin:15px 0 7px}.process-line p{color:#8c8d92;font-size:10px;line-height:1.7}.projects{padding-top:105px;padding-bottom:110px}.project-layout{display:grid;grid-template-columns:.9fr 1fr;gap:10%;align-items:center;border-top:1px solid #28292d;padding-top:35px}.india-map{min-height:360px;display:flex;align-items:center;justify-content:center;position:relative;background-image:radial-gradient(#ffffff13 1px,transparent 1px);background-size:15px 15px}.india-map svg{height:330px;max-width:100%;filter:drop-shadow(0 0 8px #e8782d20)}.india-map>span{position:absolute;bottom:4px;left:4px;color:#77787d;font-size:8px;letter-spacing:1.5px}.project-copy>div:first-child{padding-bottom:28px;border-bottom:1px solid #292a2e}.project-copy small{font-size:8px;color:#ed792f;letter-spacing:1.5px}.project-copy h3{font-family:'Barlow Condensed';font-size:25px;margin:10px 0}.project-copy p{font-size:11px;color:#8e8f94;max-width:390px}.mini-stats{display:flex;gap:30px;padding-top:24px}.mini-stats span{font-size:8px;color:#85868b;display:flex;flex-direction:column;gap:4px}.mini-stats b{font-family:'Barlow Condensed';font-size:24px;color:#f2f1ef;font-weight:500}.insights{padding:95px 0 105px}.insight-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.insight-card{border:1px solid #292a2e;background:#111216;padding:10px;display:flex;flex-direction:column;min-height:320px;transition:border .3s,transform .3s}.insight-card:hover{border-color:#e8782d;transform:translateY(-4px)}.insight-card img{width:100%;height:140px;object-fit:cover;filter:brightness(.72);transition:filter .3s}.insight-card:hover img{filter:brightness(.95)}.insight-meta{display:flex;justify-content:space-between;font-size:7px;letter-spacing:1px;color:#ef792f;margin:16px 5px 4px}.insight-meta span:last-child{color:#73747a}.insight-card h3{font-family:'Barlow Condensed';font-size:20px;line-height:1.2;margin:10px 5px 20px;font-weight:600}.read-more{font-size:8px;color:#e87930;letter-spacing:1px;margin:auto 5px 7px}.contact{padding-top:110px;padding-bottom:105px;display:grid;grid-template-columns:1fr .8fr;gap:12%;align-items:center}.contact h2{font-size:clamp(44px,5vw,66px)}.contact>div:first-child>p{max-width:350px;color:#8e8f94;margin-bottom:26px}.contact-box{background:#111216;border:1px solid #2c2d31;padding:25px}.contact-box>span{font-size:9px;color:#ef792f;letter-spacing:1.5px}.contact form{display:flex;flex-direction:column;gap:17px;margin-top:22px}.contact label{font-size:9px;color:#a7a8ad;letter-spacing:.5px}.contact input,.contact textarea{display:block;width:100%;margin-top:7px;padding:11px 12px;background:#0a0b0e;border:1px solid #303136;color:#f4f3f1;outline:none;resize:vertical}.contact input:focus,.contact textarea:focus{border-color:#e87930}.contact form .orange-btn{align-self:flex-start}.contact form>small{font-size:8px;color:#797a80}footer{border-top:1px solid #25262a;padding:26px 4.5vw 17px}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px}.footer-top>span,.footer-top>a:last-child,.footer-bottom{font-size:8px;letter-spacing:1px;color:#85868b}.footer-bottom{margin-top:27px;padding-top:14px;border-top:1px solid #222328;font-size:7px}.footer-bottom b{color:#ef792f}.scroll-car{position:fixed;z-index:900;bottom:13px;left:0;width:70px;opacity:0;pointer-events:none;transform:translateX(-120px);transition:opacity .3s;filter:drop-shadow(0 0 9px #ed792f55)}.scroll-car.visible{opacity:1}.scroll-car svg{width:100%}.chatbot{position:fixed;right:24px;bottom:23px;z-index:1500}.chat-launch{width:54px;height:54px;border-radius:50%;border:1px solid #f08a46;background:#e8792e;color:#101114;font-size:26px;box-shadow:0 0 0 7px #e8792e1c;cursor:pointer;position:relative}.chat-launch i{position:absolute;right:2px;top:2px;width:9px;height:9px;background:#5fcb7b;border:2px solid #090a0d;border-radius:50%}.chat-window{display:none;width:320px;height:410px;position:absolute;right:0;bottom:70px;background:#101115;border:1px solid #36373b;box-shadow:0 15px 50px #000b;flex-direction:column}.chat-window.open{display:flex;animation:chatIn .25s ease-out}@keyframes chatIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.chat-head{display:flex;align-items:center;gap:10px;padding:16px;background:#18191d;border-bottom:1px solid #303136}.chat-head>div{display:flex;flex-direction:column;flex:1}.chat-head b{font-size:9px;letter-spacing:1px}.chat-head small{font-size:8px;color:#999a9f}.chat-head button{background:none;border:0;color:#ddd;font-size:23px;cursor:pointer}.chat-dot{width:8px;height:8px;background:#60c879;border-radius:50%}.chat-body{flex:1;padding:15px;overflow:auto}.bot-msg,.user-msg{max-width:90%;padding:11px 12px;background:#202126;color:#ddd;font-size:10px;border-radius:0 9px 9px 9px;margin:0 0 12px}.user-msg{margin-left:auto;background:#a94e20;color:white;border-radius:9px 0 9px 9px}.quick-replies{display:flex;flex-direction:column;align-items:flex-start;gap:7px}.quick-replies button{border:1px solid #b65d2b;background:transparent;color:#ef985e;padding:7px 10px;font-size:9px;cursor:pointer}.chat-window form{display:flex;padding:10px;border-top:1px solid #2a2b30}.chat-window input{min-width:0;flex:1;background:#08090b;color:white;border:1px solid #303136;padding:10px;font-size:10px;outline:none}.chat-window form button{background:#e8792e;border:0;padding:0 13px;cursor:pointer}.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s,transform .75s}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:900px){.header nav{gap:12px}.header nav a{font-size:8px}.brand{min-width:160px}.contact-btn{padding:8px}.process-line{grid-template-columns:repeat(3,1fr);row-gap:30px}.stats>div{padding:0 12px}.stats strong{font-size:27px}.solution-card{padding:15px}.tech-grid{gap:5%}}@media(max-width:700px){.wrap{width:calc(100% - 38px)}.header{height:66px;padding:0 19px}.header.scrolled{height:60px}.brand-mark{font-size:27px}.brand-name{font-size:18px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#0c0d10;border-bottom:1px solid #333;flex-direction:column;align-items:stretch;padding:15px 22px;gap:0}.header nav.open{display:flex}.header nav a{font-size:10px;padding:13px 0;border-bottom:1px solid #ffffff12}.header nav a:last-child{border:0}.contact-btn{margin-left:auto;margin-right:13px;font-size:8px}.menu{display:block}.hero{height:680px;min-height:620px;max-height:calc(100vh - 66px);align-items:center}.hero:before{background:linear-gradient(90deg,#08090bf5,#08090bd9 65%,#08090b8c),url('../images/parking-tower.jpg') center/cover}.hero-content{margin:0 22px;padding-bottom:20px}.hero h1{font-size:clamp(52px,12vw,78px)}.hero-content>p{font-size:11px}.hero-actions{gap:17px;align-items:flex-start;flex-direction:column}.hero-stamp{right:7%;top:15%;font-size:20px}.hero-bottom{left:20px;right:20px;bottom:15px;font-size:7px}.hero-bottom span:nth-child(2){display:none}.stats{grid-template-columns:repeat(2,1fr);row-gap:23px;padding:26px 0}.stats>div{padding:0 13px;border-right:0;border-left:1px solid #ffffff18}.stats>div:nth-child(odd){border-left:0;padding-left:0}.stats strong{font-size:29px}.stats small{font-size:7px}.intro,.technology,.projects,.contact{padding-top:70px;padding-bottom:75px}.intro-grid,.tech-grid,.project-layout,.contact{grid-template-columns:1fr;gap:27px}.intro h2,.section-heading h2,.technology h2,.process h2{font-size:42px}.intro-image{margin-top:25px;height:220px}.solutions,.insights,.process{padding:70px 0}.section-heading{display:block}.section-heading>p{margin-top:15px}.solution-grid{grid-template-columns:1fr 1fr}.solution-card{min-height:220px;padding:14px}.solution-card h3{font-size:18px;margin-top:58px}.solution-card p{font-size:9px}.tech-image{height:260px}.process-line{grid-template-columns:repeat(2,1fr);gap:26px 15px}.process-line h3{font-size:14px}.project-layout{gap:22px}.india-map{min-height:290px}.india-map svg{height:280px}.mini-stats{gap:18px}.insight-grid{grid-template-columns:1fr}.insight-card{min-height:0}.insight-card img{height:190px}.insight-card h3{font-size:22px}.contact-box{padding:20px}.footer-top{flex-wrap:wrap}.footer-top>span{display:none}.footer-bottom{font-size:6px}.scroll-car{width:53px;bottom:7px}.chatbot{right:14px;bottom:14px}.chat-launch{width:49px;height:49px}.chat-window{width:min(320px,calc(100vw - 28px));right:-2px}.section-label{margin-bottom:18px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}


/* Reference-style NEXTSTEP assistant chat box. Only chat widget styles are overridden here. */
.chatbot{position:fixed;right:24px;bottom:24px;z-index:1500}
.chat-launch{width:52px;height:52px;border-radius:0;border:1px solid #ef792f;background:#090a0d;color:#ef792f;font-size:22px;box-shadow:0 0 22px #e8792e25;cursor:pointer;display:flex;align-items:center;justify-content:center;position:relative}
.chat-launch:hover{background:#ef792f;color:#090a0d}
.chat-launch i{display:none}
.chat-window{display:none;width:370px;height:415px;position:absolute;right:0;bottom:65px;background:#08090b;border:1px solid #292a2e;box-shadow:0 18px 55px #000c;flex-direction:column}
.chat-window.open{display:flex;animation:chatIn .25s ease-out}
.chat-head{min-height:58px;display:flex;align-items:center;gap:9px;padding:16px 20px;background:#08090b;border-bottom:1px solid #292a2e}
.chat-head>div{display:flex;flex-direction:column;flex:1}
.chat-head b{font-size:9px;letter-spacing:1px;color:#e9e9e9}
.chat-head small{display:none}
.chat-head button{background:none;border:0;color:#ddd;font-size:22px;line-height:1;cursor:pointer;padding:0 2px}
.chat-dot{width:8px;height:8px;background:#ef792f;border-radius:50%;flex:0 0 8px}
.chat-welcome{flex:1;min-height:0;padding:16px 20px;display:flex;align-items:flex-start}
.chat-welcome .bot-msg{max-width:100%;padding:11px 12px;background:#191a1e;border:1px solid #303136;color:#aeb0b5;font-size:11px;line-height:1.65;border-radius:0;margin:0}
.chat-start-form{display:flex;flex-direction:column;gap:7px;padding:11px 10px;border-top:1px solid #25262a}
.chat-start-form input{width:100%;height:36px;min-width:0;padding:8px 10px;background:#090a0c;border:1px solid #292a2e;color:#f4f3f1;font-size:10px;outline:none;border-radius:0}
.chat-start-form input::placeholder{color:#898a8f}
.chat-start-form input:focus{border-color:#e87930}
.chat-start-form button{height:37px;background:transparent;border:1px solid #292a2e;color:#eee;font-size:10px;font-weight:600;cursor:pointer;margin-top:0}
.chat-start-form button:hover{border-color:#ef792f;color:#ef792f}
.chat-conversation{flex:1;min-height:0;display:flex;flex-direction:column}
.chat-conversation[hidden]{display:none}
.chat-conversation .chat-body{flex:1;min-height:0;padding:15px;overflow:auto}
.chat-conversation .bot-msg,.chat-conversation .user-msg{max-width:90%;padding:10px 11px;background:#191a1e;border:1px solid #2d2e32;color:#ddd;font-size:10px;line-height:1.6;border-radius:0;margin:0 0 12px}
.chat-conversation .user-msg{margin-left:auto;background:#29201b;border-color:#7b421f;color:#fff}
.chat-conversation .quick-replies{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.chat-conversation .quick-replies button{border:1px solid #b65d2b;background:transparent;color:#ef985e;padding:7px 10px;font-size:9px;cursor:pointer}
.chat-conversation #chatForm{display:flex;gap:0;padding:10px;border-top:1px solid #2a2b30}
.chat-conversation #chatInput{min-width:0;flex:1;background:#08090b;color:white;border:1px solid #303136;padding:10px;font-size:10px;outline:none;border-radius:0}
.chat-conversation #chatForm button{background:#e8792e;color:#090a0d;border:0;padding:0 13px;cursor:pointer}
@media(max-width:700px){.chatbot{right:14px;bottom:14px}.chat-launch{width:49px;height:49px}.chat-window{width:min(370px,calc(100vw - 28px));height:min(415px,calc(100vh - 100px));right:0;bottom:62px}.chat-welcome{padding:14px 16px}.chat-start-form{padding:10px}}
















/* NEXTSTEP Reference-Style Chat Box */

.chatbot {
    position: fixed;
    right: 24px;
    bottom: 24px;
    z-index: 1500;
}

.chat-launch {
    width: 52px;
    height: 52px;
    border-radius: 0;
    border: 1px solid #ef792f;
    background: #090a0d;
    color: #ef792f;
    font-size: 22px;
    box-shadow: 0 0 22px #e8792e25;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: background 0.25s, color 0.25s;
}

.chat-launch:hover {
    background: #ef792f;
    color: #090a0d;
}

.chat-launch i {
    display: none;
}

.chat-window {
    display: none;
    width: 370px;
    height: 415px;
    position: absolute;
    right: 0;
    bottom: 65px;
    background: #08090b;
    border: 1px solid #292a2e;
    box-shadow: 0 18px 55px #000c;
    flex-direction: column;
    overflow: hidden;
}

.chat-window.open {
    display: flex;
    animation: chatIn 0.25s ease-out;
}

@keyframes chatIn {
    from {
        opacity: 0;
        transform: translateY(10px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

.chat-head {
    min-height: 58px;
    display: flex;
    align-items: center;
    gap: 9px;
    padding: 16px 20px;
    background: #08090b;
    border-bottom: 1px solid #292a2e;
}

.chat-head > div {
    display: flex;
    flex-direction: column;
    flex: 1;
}

.chat-head b {
    font-size: 9px;
    letter-spacing: 1px;
    color: #e9e9e9;
}

.chat-head small {
    display: none;
}

.chat-head button {
    background: none;
    border: 0;
    color: #ddd;
    font-size: 22px;
    line-height: 1;
    cursor: pointer;
    padding: 0 2px;
}

.chat-dot {
    width: 8px;
    height: 8px;
    background: #ef792f;
    border-radius: 50%;
    flex: 0 0 8px;
}

.chat-welcome {
    flex: 1;
    min-height: 0;
    padding: 16px 20px;
    display: flex;
    align-items: flex-start;
}

.chat-welcome .bot-msg {
    max-width: 100%;
    padding: 11px 12px;
    background: #191a1e;
    border: 1px solid #303136;
    color: #aeb0b5;
    font-size: 11px;
    line-height: 1.65;
    border-radius: 0;
    margin: 0;
}

.chat-start-form {
    display: flex;
    flex-direction: column;
    gap: 7px;
    padding: 11px 10px;
    border-top: 1px solid #25262a;
}

.chat-start-form input {
    width: 100%;
    height: 36px;
    min-width: 0;
    padding: 8px 10px;
    background: #090a0c;
    border: 1px solid #292a2e;
    color: #f4f3f1;
    font-size: 10px;
    outline: none;
    border-radius: 0;
}

.chat-start-form input::placeholder {
    color: #898a8f;
}

.chat-start-form input:focus {
    border-color: #e87930;
}

.chat-start-form button {
    height: 37px;
    background: transparent;
    border: 1px solid #292a2e;
    color: #eee;
    font-size: 10px;
    font-weight: 600;
    cursor: pointer;
    margin-top: 0;
    transition: border-color 0.2s, color 0.2s;
}

.chat-start-form button:hover {
    border-color: #ef792f;
    color: #ef792f;
}

.chat-conversation {
    flex: 1;
    min-height: 0;
    display: flex;
    flex-direction: column;
}

.chat-conversation[hidden] {
    display: none;
}

.chat-conversation .chat-body {
    flex: 1;
    min-height: 0;
    padding: 15px;
    overflow: auto;
}

.chat-conversation .bot-msg,
.chat-conversation .user-msg {
    max-width: 90%;
    padding: 10px 11px;
    background: #191a1e;
    border: 1px solid #2d2e32;
    color: #ddd;
    font-size: 10px;
    line-height: 1.6;
    border-radius: 0;
    margin: 0 0 12px;
}

.chat-conversation .user-msg {
    margin-left: auto;
    background: #29201b;
    border-color: #7b421f;
    color: #fff;
}

.chat-conversation .quick-replies {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 7px;
}

.chat-conversation .quick-replies button {
    border: 1px solid #b65d2b;
    background: transparent;
    color: #ef985e;
    padding: 7px 10px;
    font-size: 9px;
    cursor: pointer;
}

.chat-conversation #chatForm {
    display: flex;
    gap: 0;
    padding: 10px;
    border-top: 1px solid #2a2b30;
}

.chat-conversation #chatInput {
    min-width: 0;
    flex: 1;
    background: #08090b;
    color: white;
    border: 1px solid #303136;
    padding: 10px;
    font-size: 10px;
    outline: none;
    border-radius: 0;
}

.chat-conversation #chatForm button {
    background: #e8792e;
    color: #090a0d;
    border: 0;
    padding: 0 13px;
    cursor: pointer;
}

/* Scroll reveal animation */

.reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.75s, transform 0.75s;
}

.reveal.visible {
    opacity: 1;
    transform: translateY(0);
}

/* Tablet responsive */

@media (max-width: 900px) {
    .chat-window {
        width: 350px;
    }
}

/* Mobile responsive */

@media (max-width: 700px) {
    .chatbot {
        right: 14px;
        bottom: 14px;
    }

    .chat-launch {
        width: 49px;
        height: 49px;
    }

    .chat-window {
        width: min(370px, calc(100vw - 28px));
        right: -2px;
        height: min(415px, 70vh);
        bottom: 60px;
    }
}

/* Respect reduced-motion preference */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        animation-duration: 0.01ms !important;
        transition-duration: 0.01ms !important;
    }
}






