:root{--or:#F39223;--dk:#333;--gr:#7F7F7F;--soft:#fdf4ea}
body{font-family:Poppins,sans-serif;color:var(--dk);background:#fff;font-size:15px}
.text-cb,h1 span,h2 span,.h1s span,.h2s span{color:var(--or)}
.btn-cb{background:var(--or);color:#fff;border-radius:50px;padding:.6rem 1.5rem;font-weight:500;border:0}.btn-cb:hover{background:#d97e14;color:#fff}
.link-cb{color:var(--dk);font-weight:600;font-size:.85rem;text-decoration:none}.link-cb i,.link-cb{color:var(--or)}
.eyebrow{color:var(--or);font-size:.72rem;font-weight:600;letter-spacing:.15em;margin-bottom:.5rem}
.cb-nav{background:#fff;box-shadow:0 2px 12px rgba(0,0,0,.05)}.cb-nav img{height:44px}
.cb-nav .nav-link{color:var(--dk);font-weight:500;font-size:.85rem;margin:0 .7rem;border-bottom:2px solid transparent}.cb-nav .nav-link.active,.cb-nav .nav-link:hover{color:var(--or);border-color:var(--or)}
.hero,.page-hero{background:linear-gradient(120deg,#fff 40%,#fdf1e2)}
.hero h1,.page-hero h1{font-weight:700;font-size:clamp(2rem,4vw,2.8rem);line-height:1.2}
.page-hero{padding:70px 0 60px}.hero-img img{border-radius:24px}
.script{font-family:Caveat,cursive;font-size:2rem;color:var(--dk);transform:rotate(-6deg);margin-top:10px}
.crumb{font-size:.8rem;color:var(--gr);margin-bottom:.8rem}.crumb a{color:var(--or);text-decoration:none}
.sec{padding:60px 12px}.h1s{font-weight:700;font-size:2rem}.h2s{font-weight:700;font-size:1.7rem}
.stats{background:#f7f7f7;border-radius:16px;overflow:hidden;margin-top:-10px}
.stat{border-right:1px solid #e3e3e3}.stat i{color:var(--or);font-size:1.6rem;display:block}.stat b{font-size:1.5rem;display:block}.stat small{color:var(--gr)}
.stat-dark{background:var(--dk);color:#fff;clip-path:polygon(8% 0,100% 0,100% 100%,0 100%);text-align:center}.stat-dark h4{font-weight:600}
.svc-card{display:block;position:relative;border:1px solid #eee;border-radius:14px;padding:26px;height:100%;text-decoration:none;color:var(--dk);background:#fff;transition:.25s}
.svc-card:hover{box-shadow:0 12px 30px rgba(243,146,35,.18);transform:translateY(-4px);border-color:var(--or)}
.ico{width:54px;height:54px;border-radius:50%;background:var(--soft);display:flex;align-items:center;justify-content:center;color:var(--or);font-size:1.5rem;margin-bottom:14px;flex-shrink:0}.ico.sm{width:44px;height:44px;font-size:1.2rem}
.svc-card h5{font-size:1rem;font-weight:600}.svc-card p{font-size:.82rem;color:var(--gr)}
.ticks{list-style:none;padding:0;font-size:.78rem;margin:0 0 30px}.ticks li:before{content:"\2713";color:var(--or);margin-right:8px;font-weight:700}
.go{position:absolute;right:18px;bottom:18px;width:32px;height:32px;border-radius:50%;background:var(--or);color:#fff;display:flex;align-items:center;justify-content:center}
.badge-box{background:#fff;border:1px solid #eee;border-radius:14px;padding:16px 28px;display:flex;align-items:center;gap:12px;text-decoration:none;color:var(--dk);font-weight:600;box-shadow:0 4px 14px rgba(0,0,0,.04)}.badge-box i{color:var(--or);font-size:1.6rem}.badge-box img{height:38px}
.work-dark{background:var(--dk);padding:60px 0}.work-card{display:block;text-decoration:none;color:#fff}.work-card b{display:block;margin-top:10px;font-size:.9rem}.work-card small{color:#aaa}
.work-card .thumb,.blog-card .thumb{height:170px;border-radius:10px;background:linear-gradient(135deg,var(--or),#ffd9a8) center/cover}.work-card.light{color:var(--dk)}

.ind-item{text-align:center;cursor:default}
.ind-box{height:64px;border-radius:14px;background:color-mix(in srgb,var(--c) 13%,#fff);display:flex;align-items:center;justify-content:center;margin-bottom:8px;transition:.3s;box-shadow:0 2px 8px rgba(0,0,0,.03)}
.ind-box i{font-size:1.6rem;color:var(--c);transition:.3s}
.ind-item:hover .ind-box{background:var(--c);transform:translateY(-6px);box-shadow:0 12px 22px color-mix(in srgb,var(--c) 40%,transparent)}
.ind-item:hover .ind-box i{color:#fff;transform:scale(1.2) rotate(-8deg)}
.ind small{font-size:.72rem;font-weight:500;display:block;line-height:1.3}

/* scroll reveal */
.reveal{opacity:0;transform:translateY(24px);transition:opacity .6s ease var(--d,0ms),transform .6s ease var(--d,0ms)}
.reveal.show{opacity:1;transform:none}

/* tomorrow image */
.tomorrow{position:relative;text-align:center}
.tomorrow-img{mix-blend-mode:multiply;max-width:440px;width:100%;animation:floaty 5s ease-in-out infinite}
.tomorrow .dot{position:absolute;border-radius:50%;background:var(--or);opacity:.3;animation:floaty 4s ease-in-out infinite}
.tomorrow .d1{width:18px;height:18px;top:8%;left:10%}
.tomorrow .d2{width:12px;height:12px;bottom:14%;right:8%;animation-delay:1s}
.tomorrow .d3{width:9px;height:9px;top:45%;left:2%;animation-delay:2s}
@keyframes floaty{0%,100%{transform:translateY(0)}50%{transform:translateY(-14px)}}
@media(prefers-reduced-motion:reduce){.tomorrow-img,.tomorrow .dot{animation:none}.reveal{opacity:1;transform:none;transition:none}}

.btn-tech-all{border:1px solid #333;border-radius:50px;padding:9px 20px;font-size:.78rem;font-weight:600;color:#333;text-decoration:none;background:#fff}
.btn-tech-all i{color:var(--or)}
.btn-tech-all:hover{background:var(--or);border-color:var(--or);color:#fff}
.btn-tech-all:hover i{color:#fff}
.tech-wrap{background:#f5f5f5;border-radius:18px;padding:28px 30px;overflow:hidden}
.tech-head{display:flex;justify-content:space-between;align-items:flex-start;gap:16px}
.tech-head .btn-tech-all{flex-shrink:0;white-space:nowrap}
.tech{background:#fff;border-radius:14px;height:72px;padding:0 10px;display:flex;align-items:center;justify-content:center;gap:9px;box-shadow:0 2px 10px rgba(0,0,0,.05);transition:.25s;min-width:0}
.tech:hover{transform:translateY(-3px);box-shadow:0 8px 20px rgba(0,0,0,.1)}
.tech-ico{display:block;width:26px;height:26px;flex-shrink:0;-webkit-mask-size:contain;mask-size:contain;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center}
.tech-name{font-weight:600;font-size:.82rem;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

@media (max-width:991.98px){
  .tech-wrap{padding:22px 18px}
}
@media (max-width:767.98px){
  .tech-head{flex-direction:column;align-items:flex-start}
  .tech{height:64px;gap:7px;padding:0 8px}
  .tech-ico{width:22px;height:22px}
  .tech-name{font-size:.75rem}
}
@media (max-width:400px){
  .tech{flex-direction:column;height:76px;gap:4px;justify-content:center}
  .tech-name{font-size:.7rem}
}

.contact-wrap{border-radius:16px;overflow:hidden;box-shadow:0 10px 40px rgba(0,0,0,.08)}.contact-dark{background:linear-gradient(135deg,#2b2b2b,#3b3b3b)}
.contact-dark h2{font-weight:700}.ci{display:flex;align-items:center;gap:12px;color:#fff;margin:14px 0}.ci i{width:38px;height:38px;border-radius:10px;background:var(--or);display:flex;align-items:center;justify-content:center}
.socials a{display:inline-flex;width:36px;height:36px;border:1px solid #888;border-radius:50%;align-items:center;justify-content:center;color:#fff;margin-right:8px;text-decoration:none}.socials a:hover{background:var(--or);border-color:var(--or)}
.form-control,.form-select{font-size:.85rem;background:#fafafa}.form-control:focus,.form-select:focus{border-color:var(--or);box-shadow:0 0 0 .2rem rgba(243,146,35,.2)}
.blog-card{display:block;text-decoration:none;color:var(--dk)}.blog-card b{display:block;font-size:.85rem;margin:4px 0}.blog-card .thumb{margin-bottom:10px}
.why-bg{background:linear-gradient(120deg,#f8fafc,#fdf1e2)}
.big-ico{background:var(--soft);border-radius:30px;padding:50px;font-size:6rem;color:var(--or)}
.lead-txt{color:#555;line-height:1.85}.feat{background:#fff;border:1px solid #eee;border-radius:10px;padding:12px 16px;font-weight:500}.feat i{color:var(--or);margin-right:10px}
.step{display:flex;gap:14px;background:#f8f8f8;border-radius:12px;padding:16px}.step span{width:38px;height:38px;border-radius:50%;background:var(--or);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:700;flex-shrink:0}
.side-box{border:1px solid #eee;border-radius:14px;padding:22px;margin-bottom:20px}.side-box a{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #f0f0f0;color:var(--dk);text-decoration:none;font-size:.88rem}.side-box a:hover{color:var(--or)}
.side-dark{background:var(--dk);color:#fff;border-radius:14px;padding:24px}
.vm{background:#fff;border-radius:16px;padding:30px;height:100%;box-shadow:0 6px 20px rgba(0,0,0,.05)}.vm i{font-size:2rem;color:var(--or)}
.cb-acc .accordion-item{border:1px solid #eee;border-radius:12px!important;margin-bottom:10px;overflow:hidden}.cb-acc .accordion-button{font-weight:500}.cb-acc .accordion-button:not(.collapsed){background:var(--soft);color:var(--dk);box-shadow:none}
.job{border:1px solid #eee;border-radius:14px;padding:24px;margin-bottom:16px}
.cb-footer{background:#2b2b2b;color:#ccc;padding-top:50px;font-size:.82rem}.cb-footer h6{color:#fff;font-weight:600;margin-bottom:14px}.cb-footer a{display:block;color:#bbb;text-decoration:none;margin-bottom:8px}.cb-footer a:hover{color:var(--or)}
.footer-logo{background:#fff;padding:6px 12px;border-radius:10px}.cb-footer .socials a{display:inline-flex}
.footer-bottom{border-top:3px solid var(--or);margin-top:30px;padding:16px 0;background:#262626}


.ph-services{padding:50px 0;overflow:hidden}
.ph-wrap{position:relative;width:100%;max-width:100%;aspect-ratio:1200/520}
.ph-wrap.why{aspect-ratio:900/560}
.ph-wrap img{width:100%;height:100%;object-fit:contain;object-position:center;mix-blend-mode:multiply;animation:floaty 6s ease-in-out infinite}

/* home banner */
.hero-img{aspect-ratio:1200/900;max-width:100%}
.hero-img img{width:100%;height:100%;object-fit:contain;border-radius:0}

@media(max-width:991.98px){
  .ph-wrap{max-width:520px;margin:0 auto}
  .hero-img{max-width:520px;margin:0 auto}
}

.dash-line{width:70px;height:3px;background:var(--or);border-radius:3px;margin-top:18px;position:relative}
.dash-line:after{content:"";position:absolute;left:14px;top:7px;width:45px;height:3px;background:var(--or);border-radius:3px;opacity:.6}

.svc-card{background:linear-gradient(180deg,#fff,#fffaf4);box-shadow:0 4px 18px rgba(0,0,0,.04);padding:28px 26px 60px}
.svc-card .ico{width:62px;height:62px;font-size:1.7rem;transition:.3s}
.svc-card:hover .ico{background:var(--or);color:#fff;transform:rotate(-8deg) scale(1.08)}
.svc-card:hover .go{transform:translateX(4px) scale(1.1)}
.go{transition:.3s}
.svc-card.reveal.show{transition:box-shadow .25s,transform .25s,border-color .25s}

.why-services{overflow:hidden}
.why-services .why-item{transition:.3s}
@media(max-width:991.98px){.ph-services{padding:36px 0}.ph-img{max-width:480px;display:block;margin:0 auto}}



/* ---- fixes ---- */
.svc-card.reveal.show:hover{transform:translateY(-4px)}
.svc-hero-img{aspect-ratio:4/3;width:100%;max-width:480px;margin:0 auto;border-radius:28px;overflow:hidden;background:var(--soft);display:flex;align-items:center;justify-content:center;box-shadow:0 18px 40px rgba(243,146,35,.18)}
.svc-hero-img img{width:100%;height:100%;object-fit:cover;transition:transform .6s}
.svc-hero-img:hover img{transform:scale(1.05)}
.svc-hero-img i{font-size:6rem;color:var(--or)}
.detail-img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:20px;display:block}
.work-card .thumb,.blog-card .thumb{height:auto;aspect-ratio:16/10}
.hero-img img{border-radius:0}
img{max-width:100%}
