
:root{--navy:#10233c;--navy2:#0c1d32;--gold:#a87735;--gold2:#c7a36a;--cream:#fbfaf7;--muted:#667082;--border:#e8e5de;--serif:Georgia,'Times New Roman',serif;--sans:Inter,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--navy);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}.container{max-width:1300px;margin:auto;padding:0 28px}.ico{width:25px;height:25px;flex:none}.header{height:78px;background:rgba(255,255,255,.97);position:sticky;top:0;z-index:50;border-bottom:1px solid #eeeeea;box-shadow:0 2px 12px #0c1d3208}.nav-wrap{display:flex;align-items:center;justify-content:space-between;height:100%;gap:35px}.logo{width:218px;height:auto;display:block}nav{display:flex;align-items:center;gap:36px;font-size:13px;font-weight:600}nav a:hover{color:var(--gold)}nav a.active{color:var(--gold);border-bottom:2px solid var(--gold);padding:29px 0 27px}.nav-cta,.btn-gold{background:linear-gradient(110deg,#97662b,#c2924c);color:#fff;border:0;border-radius:30px;padding:14px 22px;display:inline-flex;align-items:center;gap:16px;font-size:13px;font-weight:600;box-shadow:0 6px 15px #a8783530}.nav-cta:hover,.btn-gold:hover{filter:brightness(1.08)}.hamburger{display:none;background:none;border:0;font-size:26px;color:var(--navy)}
.hero{height:510px;background-image:linear-gradient(90deg,rgba(251,251,249,.96) 0%,rgba(251,251,249,.90) 29%,rgba(251,251,249,.24) 53%,rgba(251,251,249,0) 100%),url('../assets/hero.webp');background-size:cover;background-position:center 49%;position:relative;overflow:hidden}.hero>.container{height:100%;position:relative;display:flex;align-items:center}.hero-copy{width:620px;padding-bottom:14px;position:relative;z-index:2}.kicker{font-size:11px;font-weight:700;letter-spacing:3.4px;color:var(--gold);text-transform:uppercase}h1,h2,.serif{font-family:var(--serif);font-weight:400}h1{font-size:61px;line-height:1.07;letter-spacing:-2px;margin:17px 0 13px}h1 em{color:var(--gold);font-style:normal}.hero-copy>p{font-size:17px;line-height:1.55;max-width:490px;margin:0;color:#334155}.cta-row{display:flex;gap:12px;margin-top:24px}.btn-outline{padding:13px 24px;border:1px solid #b48b52;background:#ffffff9a;color:#97662b;border-radius:30px;font-weight:600;font-size:13px}.hero-perks{display:flex;gap:24px;margin-top:35px;align-items:center}.perk{display:flex;align-items:center;gap:10px;line-height:1.35;padding-right:22px;border-right:1px solid #c5bbaa;font-size:12px;font-weight:600}.perk:last-child{border-right:0}.perk svg{color:var(--gold);width:29px;height:29px}.hero-quote{position:absolute;right:31px;top:84px;max-width:178px;font:italic 18px/1.35 var(--serif);color:#233752;text-shadow:0 1px 8px #fff}.hero-quote span{display:block;color:var(--gold);font:normal 30px var(--serif);margin-bottom:6px}
.section{padding:56px 0 14px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:22px}.section h2{font-size:36px;line-height:1.1;margin:0 0 7px}.section-heading p{margin:0;color:var(--muted);font-size:14px}.text-link{color:var(--gold);font-size:13px;font-weight:600;white-space:nowrap}.text-link span{font-size:19px;margin-left:7px}.services-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.service-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:14px;padding:21px 16px 37px;min-height:207px;box-shadow:0 9px 27px #15294106}.service-icon{color:var(--gold);margin-bottom:14px}.service-icon .ico{width:29px;height:29px}.service-card h3{font:600 15px/1.27 var(--serif);min-height:36px;margin:0 0 8px}.service-card p{color:#647082;font-size:12px;line-height:1.55;margin:0}.round-arrow{position:absolute;bottom:12px;right:13px;display:flex;align-items:center;justify-content:center;border:1px solid #e9d2b4;border-radius:50%;width:29px;height:29px;color:var(--gold);background:white}
.purpose-industries{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:20px}.purpose{background:#0c2139;min-height:240px;position:relative;overflow:hidden;border-radius:15px;padding:30px 37px;color:#fff}.purpose:after{content:'✧';font:260px var(--serif);color:#c39a5421;position:absolute;right:0;top:-42px;transform:rotate(17deg)}.purpose .kicker{color:#e0b66e}.purpose h2{font:400 33px/1.1 var(--serif);margin:11px 0 10px;position:relative;z-index:1}.purpose p{max-width:375px;color:#e2eaf2;font-size:13px;line-height:1.5;margin:0 0 15px;position:relative;z-index:1}.purpose a{display:inline-block;padding:11px 20px;border-radius:24px;background:#b57d36;color:#fff;font-size:12px;font-weight:600;position:relative;z-index:2}.industries{background:#fff;border-radius:15px;border:1px solid #eee9e0;padding:29px 25px}.industries h2{font:400 32px var(--serif);margin:0 0 22px}.industry-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.industry-chip{display:flex;flex-direction:column;gap:12px;align-items:center;justify-content:center;min-height:104px;border:1px solid #eeece8;border-radius:12px;text-align:center;padding:10px 3px}.industry-chip svg{color:var(--gold);width:27px;height:27px}.industry-chip span{font-size:10px;line-height:1.25;color:#273d52}
.solutions{padding-top:56px;padding-bottom:56px}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.project-card{background:#fff;border:1px solid var(--border);border-radius:16px;overflow:hidden;box-shadow:0 10px 26px #16274309}.project-image{position:relative;height:222px;background:#e5e9e8;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s}.project-card:hover .project-image img{transform:scale(1.04)}.pill{position:absolute;left:17px;bottom:15px;padding:8px 13px;border-radius:20px;background:#ffffffee;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#966a37;font-weight:700}.project-content{padding:23px}.project-content h3{font:400 25px var(--serif);margin:0 0 10px}.project-content p{color:#637082;font-size:13px;line-height:1.5;min-height:42px;margin:0 0 16px}.tags{display:flex;gap:7px;flex-wrap:wrap}.tags span{background:#f6f2ec;border:1px solid #eee4d6;border-radius:20px;padding:7px 10px;font-size:10px;color:#745a3c}.project-action{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #f0efec;margin-top:19px;padding-top:16px;font-size:12px;font-weight:700;color:#9b6d33}
.process-wrap{background:#f5f1eb;padding:48px 0 55px}.process-wrap h2{font:400 36px var(--serif);margin:0 0 5px}.process-wrap .intro{font-size:14px;color:var(--muted);margin:0 0 29px}.steps{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;position:relative}.steps:before{content:'';height:1px;position:absolute;background:#d8c9b7;top:27px;left:6%;right:6%}.step{text-align:center;position:relative;z-index:1}.step-icon{background:#fff;border:1px solid #e8dbcc;border-radius:50%;width:56px;height:56px;margin:auto auto 12px;display:flex;align-items:center;justify-content:center;color:#a37338;box-shadow:0 2px 7px #101c2e0a}.step-count{color:var(--gold);font-size:10px;letter-spacing:1px}.step h3{font:600 15px var(--serif);margin:5px 0 3px}.step p{color:#647080;font-size:12px;margin:0}
.about-band{display:grid;grid-template-columns:.9fr 1.1fr;align-items:stretch;background:#fff;border:1px solid #ebe9e5;border-radius:17px;overflow:hidden;margin-top:60px;margin-bottom:60px}.about-text{padding:47px 46px}.about-text h2{font:400 36px/1.15 var(--serif);margin:13px 0}.about-text p{line-height:1.65;color:#5e6b7d;font-size:14px}.about-img img{width:100%;height:100%;object-fit:cover;display:block}.values{display:flex;gap:17px;margin-top:24px}.values span{display:flex;align-items:center;gap:7px;font-size:11px;color:#4b5766}.values svg{color:var(--gold);width:20px;height:20px}
.cta-banner{min-height:227px;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;color:#fff}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}.cta-inner h2{font:400 37px var(--serif);margin:8px 0 7px}.cta-inner p{font-size:13px;color:#e5ecf1;max-width:500px;line-height:1.5;margin:0}.cta-inner .kicker{color:#f3c987}.site-footer{background:#0c1d31;color:#a8b5c8;padding:24px 0;font-size:12px}.site-footer .container{display:flex;align-items:center;justify-content:space-between;gap:18px}.site-footer strong{color:#eec58b}.demo-note{font-size:12px;color:#8b7a66;margin-top:15px}
@media(max-width:1100px){nav{gap:18px}.services-grid{grid-template-columns:repeat(3,1fr)}.purpose-industries{grid-template-columns:1fr}.hero-quote{right:15px}.hero-copy{width:530px}h1{font-size:54px}}
@media(max-width:760px){.container{padding:0 20px}.header{height:65px}.logo{width:175px}.hamburger{display:block}nav{display:none;position:absolute;left:0;right:0;top:65px;padding:25px;background:#fff;flex-direction:column;align-items:flex-start;gap:22px;box-shadow:0 10px 18px #0002}nav.show{display:flex}nav a.active{padding:0 0 8px}.nav-cta{display:none}.hero{height:auto;min-height:660px;background-image:linear-gradient(0deg,#faf8f5f7 0%,#faf8f5dd 37%,#faf8f565 68%,#ffffff00 100%),url('../assets/hero-1280.webp');background-position:62% top;background-size:auto 470px;background-repeat:no-repeat;background-color:#faf8f5}.hero>.container{padding-top:260px;padding-bottom:28px;align-items:flex-end}.hero-copy{width:100%;padding-bottom:0}h1{font-size:43px}.hero-copy>p{font-size:14px}.hero-quote{display:none}.hero-perks{gap:8px;flex-wrap:wrap;margin-top:23px}.perk{font-size:10px;padding-right:8px;gap:5px}.perk svg{width:21px;height:21px}.section{padding-top:38px}.section-heading{align-items:start}.section h2,.industries h2,.process-wrap h2{font-size:31px}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.service-card{min-height:220px;padding:17px 13px 37px}.service-card h3{font-size:14px}.purpose-industries{grid-template-columns:1fr}.purpose{padding:27px 25px}.industries{padding:25px 15px}.industry-grid{grid-template-columns:repeat(3,1fr)}.project-grid{grid-template-columns:1fr}.project-image{height:240px}.steps{grid-template-columns:repeat(3,1fr);gap:24px}.steps:before{display:none}.about-band{grid-template-columns:1fr;margin-top:36px;margin-bottom:40px}.about-text{padding:30px 23px}.about-text h2{font-size:30px}.about-img{height:250px}.values{flex-wrap:wrap}.cta-inner{align-items:start;flex-direction:column;padding-top:30px;padding-bottom:32px}.cta-inner h2{font-size:31px}.site-footer .container{flex-direction:column;align-items:flex-start}}

/* Company contact channels */
.contact-options{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:28px 0}.contact-links{display:flex;flex-direction:column;gap:12px}.contact-links a{font-size:13px;line-height:1.5;color:#fff;overflow-wrap:anywhere}.contact-links span,.footer-contacts span{color:#eec58b;font-weight:600;margin-right:8px}.contact-links a:hover,.footer-contacts a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer .footer-contacts{justify-content:flex-start;flex-wrap:wrap;gap:16px 30px;border-top:1px solid #ffffff20;margin-top:20px;padding-top:20px}.footer-contacts a{line-height:1.6;overflow-wrap:anywhere}.contact-options{min-width:0}@media(max-width:760px){.contact-options{padding:0}.site-footer .footer-contacts{gap:12px}}

/* Service illustrations supplied by Dakkhinda. */
.services-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.service-card{padding:0;overflow:hidden;min-height:0}.service-media{aspect-ratio:4/3;display:grid;background:#f5f1eb;border-bottom:1px solid var(--border)}.service-media img{display:block;width:100%;height:100%;min-height:0;object-fit:cover}.service-media-pair{grid-template-columns:1fr 1fr;align-items:center}.service-media-pair img{height:auto;object-fit:contain}.service-body{position:relative;padding:23px 23px 50px}.service-card h3{font-size:22px;min-height:0;margin-bottom:12px}.service-card p{font-size:13px;line-height:1.65}.service-icon{margin-bottom:12px}.service-card .round-arrow{bottom:16px;right:20px}@media(max-width:1000px){.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.services-grid{grid-template-columns:1fr}.service-body{padding:22px 22px 50px}.service-card h3{font-size:22px}#services>.section-heading{flex-direction:column;gap:16px}}
.service-media-pair{position:relative;display:block}.service-media-pair img:first-child{width:100%;height:100%;object-fit:cover}.service-media-pair img:last-child{position:absolute;right:12px;bottom:12px;width:42%;height:auto;border:3px solid #fff;border-radius:8px;box-shadow:0 4px 16px #10233c30}
/* Shared vector icon system: readable at every display size. */
.ui-icon{width:20px;height:20px;display:inline-block;vertical-align:middle;flex:none}.text-link .ui-icon{width:18px;height:18px;margin-left:6px}.text-link span:has(.ui-icon){margin-left:0}.text-link span .ui-icon{margin-left:0}.nav-cta .ui-icon,.btn-gold .ui-icon{width:18px;height:18px}.round-arrow{width:36px;height:36px;transition:background .2s,color .2s,border-color .2s}.round-arrow:hover{background:var(--gold);border-color:var(--gold);color:#fff}.round-arrow .ui-icon{width:18px;height:18px}.hamburger{padding:8px;line-height:1}.hamburger .ui-icon{width:25px;height:25px}.service-icon .ico{stroke-width:1.75}.hero-quote .ui-icon{width:30px;height:30px}.contact-links a,.footer-contacts a{display:inline-flex;align-items:center;gap:8px;flex-wrap:wrap}.contact-links a>.ui-icon,.footer-contacts a>.ui-icon{width:18px;height:18px;color:#eec58b}.contact-links span,.footer-contacts span{margin-right:0}.footer-contacts a>.ui-icon:last-child{width:14px;height:14px}
/* Flaticon vector font sizing follows the existing icon containers. */
.ui-icon.fi,.ico.fi{font-style:normal;font-size:20px;line-height:1;display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.ico.fi{font-size:25px}.service-icon .ico.fi{font-size:29px}.step-icon .ico.fi,.industry-chip .ico.fi{font-size:25px}.round-arrow .ui-icon.fi,.text-link .ui-icon.fi,.software-actions .ui-icon.fi{font-size:17px}.hamburger .ui-icon.fi{font-size:25px}.software-monogram .ui-icon.fi{font-size:25px}.software-empty-mark .ui-icon.fi{font-size:34px}.contact-links .ui-icon.fi,.footer-contacts .ui-icon.fi{font-size:17px}.hero-quote .ui-icon.fi{font-size:30px}.values .ico.fi{font-size:19px}.site-footer .icon-credit{justify-content:flex-start;gap:5px;margin-top:16px;font-size:11px}.icon-credit a{text-decoration:underline;text-underline-offset:3px}@media(max-width:760px){.site-footer .icon-credit{flex-direction:row}}
/* Consistent northeast action arrows across all pages and dynamic app cards. */
.ui-icon.fi.fi-rr-arrow-up-right{
  width:18px;
  height:18px;
  font-size:18px;
  line-height:1;
  flex:0 0 18px;
  color:inherit;
  transition:transform 180ms ease;
}
.ui-icon.fi.fi-rr-arrow-up-right::before{
  -webkit-text-stroke:.3px currentColor;
}
a:has(.fi-rr-arrow-up-right):not(.round-arrow){
  column-gap:12px;
  align-items:center;
}
.nav-cta,.btn-gold{gap:12px}
.project-action>span:has(.fi-rr-arrow-up-right){display:inline-flex;align-items:center}
@media(hover:hover){
  a:hover .fi-rr-arrow-up-right,button:hover .fi-rr-arrow-up-right{transform:translate(2px,-2px)}
}
a:focus-visible .fi-rr-arrow-up-right,button:focus-visible .fi-rr-arrow-up-right{transform:translate(2px,-2px)}
@media(prefers-reduced-motion:reduce){
  .ui-icon.fi.fi-rr-arrow-up-right{transition:none;transform:none!important}
}
/* Keep Telegram's label, handle, and external-link arrow together. */
.contact-links a.telegram-contact,.footer-contacts a.telegram-contact{
  display:inline-flex;
  align-items:center;
  flex-wrap:nowrap;
  gap:8px;
  width:fit-content;
  white-space:nowrap;
  text-decoration:none;
}
.telegram-contact .telegram-symbol{
  background:rgba(217,182,121,.1);
  border-radius:8px;
  box-shadow:0 0 0 5px rgba(217,182,121,.1);
  margin-right:4px;
}
.contact-links .telegram-handle,.footer-contacts .telegram-handle{
  color:inherit;
  font-weight:400;
  margin:0;
}
.telegram-contact .ui-icon.fi.fi-rr-arrow-up-right{
  width:14px;
  height:14px;
  flex:0 0 14px;
  font-size:14px;
  margin-left:2px;
  opacity:.75;
}
.telegram-contact:hover .telegram-handle,.telegram-contact:focus-visible .telegram-handle{
  text-decoration:underline;
  text-underline-offset:4px;
}

.cta-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-2}.cta-banner::before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0b1d35e8,#153554a6 47%,#26394b29);z-index:-1;pointer-events:none}
