:root{--navy:#2f4858;--navy-deep:#152a37;--navy-soft:#314c5c;--orange:#f15923;--orange-hover:#ff7642;--cream:#f7f7f4;--white:#fff;--ink:#1b2d38;--muted:#50616b;--line:#d8dedf;--line-dark:rgba(255,255,255,.19)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:400 16px/1.6 Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.045em}h1{font-size:clamp(3.15rem,6.65vw,6.8rem);line-height:1.01;font-weight:750}h2{font-size:clamp(2.35rem,4.45vw,4.7rem);line-height:1.06;font-weight:740}h3{font-size:1.55rem;line-height:1.18}p{margin-bottom:1.15em}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.wrap{width:min(1240px,calc(100% - 64px));margin-inline:auto}.dark{color:#fff;background:var(--navy-deep)}.light-bg{background:var(--cream)}.section{padding:clamp(88px,9vw,144px) 0}.kicker,.small-label,.eyeline{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;line-height:1.4}.kicker{color:var(--orange);margin-bottom:24px}.small-label{color:#879eaa}.eyeline{color:var(--orange)}.lead{font-size:clamp(1.16rem,1.55vw,1.38rem);line-height:1.55;color:#c8d5da;max-width:780px}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:56px;padding:13px 22px;background:var(--navy-deep);color:#fff;font-weight:750;border:1px solid transparent;transition:background .2s,transform .2s}.btn.primary{background:var(--orange);color:#fff}.btn:hover{background:var(--orange-hover);transform:translateY(-2px)}.btn span,.text-link span{font-size:1.3em;line-height:1}.text-link{display:inline-flex;gap:16px;align-items:center;border-bottom:1px solid var(--orange);padding:8px 0;color:var(--ink);font-weight:750}.text-link.light{color:#fff}.text-link:hover{color:var(--orange)}.actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}.skip-link{position:fixed;z-index:200;top:-80px;left:16px;padding:10px 18px;background:var(--orange);color:#fff}.skip-link:focus{top:16px}
.utility{background:#1b303d;color:#bed0d7;font-size:.8rem;letter-spacing:.02em}.utility-inner{display:flex;justify-content:space-between;align-items:center;min-height:38px;gap:20px}.utility a{color:#fff;font-weight:750}.site-header{position:sticky;top:0;z-index:50;background:var(--navy);border-bottom:1px solid rgba(255,255,255,.12)}.nav{display:flex;align-items:center;justify-content:space-between;gap:30px;min-height:90px}.brand{display:block;line-height:0;flex:none}.brand img,.footer-brand img{width:210px;height:auto;mix-blend-mode:screen}.nav-links{display:flex;align-items:center;gap:clamp(16px,2.35vw,34px);color:#e6eff2;font-size:.92rem;font-weight:700}.nav-links>a:not(.nav-contact){transition:color .2s}.nav-links>a:hover,.nav-links>a[aria-current]{color:var(--orange-hover)}.nav-contact{display:flex;gap:20px;align-items:center;color:#fff;border:1px solid #92a4ab;padding:11px 16px;min-height:46px}.nav-contact:hover{border-color:var(--orange);background:var(--orange)}.nav-contact span{font-size:1.22rem}.menu-toggle{display:none;border:1px solid #78909a;background:transparent;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;margin:4px 0;background:#fff}
.home-hero{background:var(--navy);position:relative;overflow:hidden}.home-hero:before{content:"";position:absolute;right:-12vw;top:-15vw;width:52vw;height:52vw;border:1px solid rgba(255,255,255,.07);border-radius:50%;pointer-events:none}.hero-grid{min-height:660px;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);gap:8vw;align-items:stretch}.hero-main{padding:clamp(86px,10vw,150px) 0 100px}.home-hero h1{max-width:860px;margin-bottom:32px}.home-hero h1 em{font-style:normal;color:var(--orange)}.hero-main .lead{max-width:690px;margin-bottom:38px}.hero-side{display:flex;align-items:center;position:relative;border-left:1px solid var(--line-dark);padding-left:48px}.hero-side-inner{width:100%}.hero-side p{font-size:1.72rem;line-height:1.32;letter-spacing:-.03em;margin:28px 0 68px}.hero-side-bottom{display:flex;border-top:1px solid var(--line-dark);padding-top:20px;gap:42px;color:#a9bec7;font-size:.83rem;line-height:1.45}.hero-side-bottom strong{color:#fff;display:block;font-size:1.6rem;margin-top:10px;letter-spacing:-.05em}.hero-footer{display:flex;gap:32px;justify-content:space-between;padding:22px 0;border-top:1px solid var(--line-dark);font-size:.78rem;text-transform:uppercase;letter-spacing:.12em;color:#9fb3bd;font-weight:750}.split-heading{display:grid;grid-template-columns:1fr .75fr;gap:clamp(60px,8vw,130px);align-items:end}.split-heading h2{max-width:800px;margin:0}.split-heading>div:last-child{color:var(--muted);font-size:1.12rem;line-height:1.7}.split-heading>div:last-child p:last-child{margin-bottom:0}.split-heading .text-link{font-size:1rem;margin-top:14px}.service-preview{display:grid;grid-template-columns:repeat(3,1fr);margin-top:75px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.service-preview a{position:relative;padding:36px 36px 48px 0;border-right:1px solid var(--line);min-height:300px}.service-preview a+a{padding-left:36px}.service-preview a:last-child{border-right:none}.service-preview span{font-size:.77rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:var(--orange)}.service-preview h3{margin:58px 0 10px}.service-preview p{max-width:300px;color:var(--muted);margin:0}.service-preview b{position:absolute;right:34px;top:30px;font-size:1.5rem;font-weight:400}.service-preview a:hover h3,.service-preview a:hover b{color:var(--orange)}
.hospitality-feature{padding:110px 0;background:#17313f}.hospitality-feature-grid{display:grid;grid-template-columns:1.04fr .96fr;gap:clamp(50px,8vw,125px);align-items:center}.hospitality-feature h2{max-width:650px}.hospitality-feature p:not(.kicker){color:#c2d1d7;max-width:580px;font-size:1.12rem;line-height:1.7}.hospitality-feature .btn{margin-top:18px}.system-panel{border:1px solid rgba(255,255,255,.28);background:#233f4e;box-shadow:20px 20px 0 rgba(8,27,38,.42);padding:0 34px}.system-heading,.system-foot{display:flex;justify-content:space-between;padding:25px 0;font-size:.73rem;letter-spacing:.13em;font-weight:800;color:#9fb7c1}.system-heading span:last-child{color:var(--orange)}.system-row{display:grid;grid-template-columns:54px 1fr auto;gap:10px;align-items:center;padding:22px 0;border-top:1px solid rgba(255,255,255,.2)}.system-row span{color:var(--orange);font-size:.82rem;font-weight:800}.system-row strong{font-size:1.2rem;font-weight:650}.system-row i{color:var(--orange);font-size:1.3rem;font-style:normal}.system-foot{border-top:1px solid rgba(255,255,255,.2)}.section-top{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:58px}.section-top h2{max-width:770px;margin:0}.proof-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.proof-grid article{padding:36px 36px 40px 0;border-right:1px solid var(--line)}.proof-grid article+article{padding-left:36px}.proof-grid article:last-child{border:0}.proof-num{display:block;color:#a8b5bb;font-size:.9rem;margin-bottom:74px}.proof-grid h3{max-width:310px;margin:13px 0 15px}.proof-grid p{color:var(--muted);max-width:320px}.proof-note{color:#74848b;font-size:.82rem;margin:20px 0 0}.approach-list{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:76px}.approach-list>div{padding-top:22px;border-top:2px solid var(--ink)}.approach-list span{font-weight:850;color:var(--orange);font-size:.85rem}.approach-list h3{margin:46px 0 12px}.approach-list p{color:var(--muted);max-width:300px}.contact-band{padding:76px 0;background:var(--navy)}.contact-band-inner{display:flex;justify-content:space-between;align-items:center;gap:50px}.contact-band h2{max-width:800px;margin:0 0 14px}.contact-band p:not(.kicker){color:#bed0d7;font-size:1.1rem;margin:0}.contact-band .btn{white-space:nowrap}
.page-hero{padding:clamp(90px,10vw,148px) 0 112px;background:var(--navy)}.page-hero h1{max-width:1050px;margin-bottom:30px;font-size:clamp(3.1rem,6.2vw,6rem)}.page-hero .lead{margin-bottom:34px}.page-hero .btn{margin-top:8px}.service-layout{padding-top:0}.service-layout-grid{display:grid;grid-template-columns:270px 1fr;gap:clamp(60px,8vw,130px)}.service-index{position:sticky;top:114px;align-self:start;display:grid;gap:3px;padding-top:80px}.service-index span{margin-bottom:18px}.service-index a{padding:10px 0;color:var(--muted);font-size:.92rem;border-bottom:1px solid var(--line)}.service-index a:hover{color:var(--orange)}.service-list{min-width:0}.service-item{scroll-margin-top:106px;padding:80px 0 90px;border-bottom:1px solid var(--line)}.service-item:last-child{border-bottom:0}.service-tag{color:var(--orange);font-size:.8rem;text-transform:uppercase;letter-spacing:.15em;font-weight:800;margin-bottom:24px}.service-item h2{margin-bottom:28px}.service-item .service-lead{font-size:1.36rem;line-height:1.45;color:var(--ink);max-width:760px}.service-item p:not(.service-tag):not(.service-lead){color:var(--muted);max-width:770px;font-size:1.06rem}.service-item ul{list-style:none;padding:26px 0 0;margin:36px 0 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:14px 25px}.service-item li{padding-left:19px;position:relative;font-size:.94rem}.service-item li:before{content:"";position:absolute;left:0;top:.72em;width:7px;height:7px;background:var(--orange)}
.hospitality-hero{background:var(--navy-deep);overflow:hidden}.hospitality-hero-grid{min-height:700px;display:grid;grid-template-columns:1.02fr .98fr;gap:clamp(50px,7vw,100px);align-items:center;padding:94px 0 108px}.hospitality-hero h1{font-size:clamp(3rem,5.75vw,5.85rem)}.hospitality-hero .lead{max-width:660px}.hospitality-graphic{position:relative;min-height:500px;border:1px solid rgba(255,255,255,.22);background:radial-gradient(circle at 50% 50%,rgba(241,90,36,.12),transparent 44%),linear-gradient(135deg,#254351,#1d3542);overflow:hidden}.hospitality-graphic:before,.hospitality-graphic:after{content:"";position:absolute;left:50%;top:50%;width:330px;height:330px;transform:translate(-50%,-50%);border:1px solid rgba(255,255,255,.22);border-radius:50%}.hospitality-graphic:after{width:200px;height:200px}.hg-head,.hg-foot{position:absolute;left:26px;top:24px;letter-spacing:.14em;color:#aac1ca;font-size:.72rem;font-weight:850}.hg-foot{top:auto;bottom:26px}.hg-core{position:absolute;z-index:2;left:50%;top:50%;transform:translate(-50%,-50%);width:150px;height:150px;border-radius:50%;background:var(--orange);display:grid;place-items:center;text-align:center;font-size:1.25rem;font-weight:800;line-height:1.15}.hg-node{position:absolute;z-index:2;border:1px solid #7e9da9;background:#223f4e;min-width:160px;padding:12px 16px;color:#fff;font-size:.95rem;font-weight:750;line-height:1.25}.hg-node small{color:#a9bdc5;font-size:.72rem;font-weight:500}.hg-node.n1{top:93px;left:30px}.hg-node.n2{top:93px;right:30px}.hg-node.n3{bottom:93px;left:30px}.hg-node.n4{bottom:93px;right:30px}.hospitality-story .split-heading{align-items:start}.coverage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line)}.coverage-grid article{padding:38px;min-height:295px;background:var(--cream)}.coverage-grid span,.value-grid span{color:var(--orange);font-weight:800}.coverage-grid h3{margin:48px 0 12px}.coverage-grid p{color:var(--muted)}.hotel-systems{background:#1c3442}.hotel-systems-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(60px,8vw,130px)}.hotel-systems h2{max-width:650px}.hotel-systems p:not(.kicker){color:#b7cad3;font-size:1.1rem;line-height:1.7}.system-lines>div{display:flex;gap:24px;align-items:center;padding:27px 0;border-bottom:1px solid var(--line-dark)}.system-lines>div:first-child{border-top:1px solid var(--line-dark)}.system-lines span{color:var(--orange);font-size:.8rem;font-weight:850}.system-lines strong{font-size:1.16rem;font-weight:650}.lifecycle{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.lifecycle>div{border-top:3px solid var(--orange);padding-top:22px}.lifecycle span{color:var(--orange);font-size:.8rem;text-transform:uppercase;letter-spacing:.14em;font-weight:800}.lifecycle h3{margin:70px 0 12px}.lifecycle p{color:var(--muted)}.value-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}.value-grid article{border-top:1px solid var(--ink);padding-top:25px}.value-grid h3{margin:65px 0 12px}.value-grid p{color:var(--muted)}.about-stat{display:grid;grid-template-columns:repeat(3,1fr)}.about-stat div{padding:25px;border-right:1px solid var(--line)}.about-stat div:first-child{padding-left:0}.about-stat div:last-child{border:0}.about-stat strong{display:block;color:var(--orange);font-size:clamp(2.4rem,4vw,4.4rem);line-height:1.1;letter-spacing:-.06em}.about-stat span{color:var(--muted)}
.insights-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}.insights-grid a{display:flex;flex-direction:column;min-height:420px;padding:34px;border:1px solid var(--line);transition:background .2s,color .2s}.insights-grid a:first-child{background:var(--navy);color:#fff;border-color:var(--navy)}.insights-grid a:hover{background:var(--navy-deep);color:#fff}.insights-grid h3{font-size:clamp(1.7rem,2.7vw,2.6rem);margin:60px 0 12px;max-width:570px}.insights-grid p{max-width:510px;color:var(--muted)}.insights-grid a:first-child p,.insights-grid a:hover p{color:#b9cbd3}.insights-grid b{margin-top:auto;font-size:.95rem}.article-head{background:var(--navy);padding:70px 0 100px}.article-width{max-width:820px}.back-link{display:inline-block;margin-bottom:80px;color:#bfd0d7}.back-link:hover{color:var(--orange)}.article-head h1{font-size:clamp(2.9rem,5.2vw,5.25rem);margin-bottom:24px}.article-body{padding-top:75px;padding-bottom:120px;font-size:1.12rem;line-height:1.83;color:#40535f}.article-body h2{color:var(--ink);font-size:2rem;margin:60px 0 15px;line-height:1.18}.article-cta{margin-top:85px;padding:42px;background:var(--cream)}.article-cta h2{margin-top:0}.article-cta .btn{margin-top:12px}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(60px,8vw,130px)}.contact-grid h2{max-width:500px}.contact-grid p{color:var(--muted);font-size:1.1rem}.contact-methods{border-top:1px solid var(--line)}.contact-methods>a,.contact-methods>div{position:relative;display:flex;flex-direction:column;gap:4px;padding:28px 40px 28px 0;border-bottom:1px solid var(--line)}.contact-methods span{font-size:.8rem;color:var(--orange);font-weight:800;letter-spacing:.13em;text-transform:uppercase}.contact-methods strong{font-size:clamp(1.35rem,2.3vw,2.1rem);font-weight:650;line-height:1.25}.contact-methods b{position:absolute;right:0;top:32px;font-size:1.4rem;font-weight:400}.contact-methods a:hover strong,.contact-methods a:hover b{color:var(--orange)}
.site-footer{background:#132935;color:#d0dde2;padding:76px 0 28px}.footer-main{display:grid;grid-template-columns:1.6fr .7fr 1fr;gap:clamp(40px,8vw,120px)}.footer-brand img{width:220px}.footer-brand p{max-width:360px;margin-top:20px;color:#a8bdc6}.footer-main h2{font-size:.76rem;letter-spacing:.15em;text-transform:uppercase;color:var(--orange);margin-bottom:20px}.footer-main div:not(:first-child) a{display:block;margin:8px 0}.footer-main a:hover{color:var(--orange)}.footer-main div:last-child p{color:#a8bdc6;margin-top:20px}.footer-base{border-top:1px solid var(--line-dark);margin-top:74px;padding-top:22px;display:flex;justify-content:space-between;gap:15px;font-size:.78rem;color:#9cb2bd}
@media(max-width:1050px){.nav-links{gap:17px}.brand img{width:180px}.hero-grid{grid-template-columns:1.2fr .8fr;gap:5vw}.hero-side{padding-left:26px}.hospitality-hero-grid{grid-template-columns:1fr}.hospitality-graphic{min-height:460px}.service-layout-grid{grid-template-columns:220px 1fr;gap:55px}.coverage-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:760px){.wrap{width:min(100% - 36px,1240px)}.utility-inner span{display:none}.utility-inner{justify-content:flex-end}.nav{min-height:72px}.brand img{width:178px}.menu-toggle{display:block}.nav-links{display:none;position:absolute;left:0;right:0;top:72px;background:var(--navy);padding:18px;flex-direction:column;align-items:stretch;gap:0;border-top:1px solid var(--line-dark);box-shadow:0 22px 30px rgba(0,0,0,.15)}.nav-links.open{display:flex}.nav-links>a{padding:13px}.nav-contact{margin-top:8px}.hero-grid,.hospitality-feature-grid,.split-heading,.hotel-systems-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.hero-grid{min-height:auto}.hero-main{padding:82px 0 42px}.home-hero h1{font-size:clamp(3.2rem,12vw,5rem)}.hero-side{border-left:none;border-top:1px solid var(--line-dark);padding:30px 0 50px}.hero-side p{margin:14px 0 30px;font-size:1.4rem}.hero-footer{display:none}.section{padding:78px 0}.split-heading h2{margin-bottom:0}.service-preview,.proof-grid,.approach-list,.coverage-grid,.lifecycle,.value-grid,.about-stat,.insights-grid{grid-template-columns:1fr}.service-preview{margin-top:48px}.service-preview a,.service-preview a+a{min-height:0;padding:26px 0;border-right:0;border-bottom:1px solid var(--line)}.service-preview a:last-child{border:0}.service-preview h3{margin:35px 0 10px}.hospitality-feature{padding:80px 0}.system-panel{box-shadow:9px 9px 0 rgba(8,27,38,.42);padding:0 22px}.section-top{margin-bottom:40px}.proof-grid article,.proof-grid article+article{border:0;border-bottom:1px solid var(--line);padding:28px 0}.proof-num{margin-bottom:40px}.approach-list{margin-top:45px;gap:32px}.approach-list h3{margin-top:25px}.contact-band-inner{align-items:flex-start;flex-direction:column}.contact-band h2{font-size:2.5rem}.page-hero{padding:82px 0}.page-hero h1{font-size:clamp(3rem,10vw,5rem)}.service-layout-grid{display:block}.service-index{position:static;display:flex;flex-wrap:wrap;gap:8px;padding-top:30px}.service-index span{width:100%;margin:0}.service-index a{border:1px solid var(--line);padding:7px 10px;font-size:.78rem}.service-item{padding:72px 0}.service-item ul{grid-template-columns:1fr}.hospitality-hero-grid{padding:80px 0}.hospitality-graphic{min-height:430px}.hg-node{min-width:125px;font-size:.8rem;padding:10px}.hg-node.n1,.hg-node.n3{left:12px}.hg-node.n2,.hg-node.n4{right:12px}.hg-core{width:120px;height:120px;font-size:1rem}.coverage-grid article{min-height:0;padding:30px}.coverage-grid h3{margin:38px 0 10px}.lifecycle h3,.value-grid h3{margin:32px 0 10px}.value-grid{gap:35px}.about-stat div,.about-stat div:first-child{padding:24px 0;border-right:0;border-bottom:1px solid var(--line)}.insights-grid a{min-height:320px}.insights-grid h3{margin:40px 0 15px}.article-head{padding:55px 0 75px}.back-link{margin-bottom:55px}.article-body{padding:60px 0 90px}.footer-main{grid-template-columns:1fr 1fr;gap:44px}.footer-brand{grid-column:1/-1}.footer-base{flex-direction:column;margin-top:45px}}
@media(max-width:460px){.actions{align-items:stretch;flex-direction:column;gap:16px}.actions .btn{width:100%}.hospitality-graphic{min-height:370px}.hospitality-graphic:before{width:255px;height:255px}.hospitality-graphic:after{width:150px;height:150px}.hg-node.n1,.hg-node.n2{top:65px}.hg-node.n3,.hg-node.n4{bottom:65px}.hg-node{min-width:115px;font-size:.71rem}.hg-core{width:100px;height:100px;font-size:.88rem}.hg-head{top:14px;left:15px}.hg-foot{bottom:14px;left:15px}.system-row{grid-template-columns:32px 1fr auto}.footer-main{grid-template-columns:1fr}.footer-brand{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* The brand orange remains the mark; lighter and deeper tones keep small text readable. */
.kicker,.eyeline,.service-tag,.service-preview span,.coverage-grid span,.value-grid span,.lifecycle span,.contact-methods span{color:#bd400f}
.dark .kicker,.dark .eyeline,.dark .service-tag,.hotel-systems .system-lines span,.system-row span,.system-heading span:last-child,.footer-main h2,.nav-links>a:hover,.nav-links>a[aria-current]{color:#ff9a75}
.home-hero h1 em,.about-stat strong{color:#f15923}
.home-hero h1 em{color:#ff9a75}
.btn.primary{background:#c74712;color:#fff}.btn.primary:hover,.nav-contact:hover{background:#a93607;color:#fff}
.text-link:hover,.service-preview a:hover h3,.service-preview a:hover b,.service-index a:hover,.contact-methods a:hover strong,.contact-methods a:hover b{color:#bd400f}
.hg-core{color:#122631}.small-label{color:#c1d0d6}.proof-num{color:#61717a}

/* 2026 visual refinement: same page structure and copy, softer surfaces and type. */
@font-face{font-family:"Manrope";src:url('/assets/fonts/manrope-latin-variable.woff2') format('woff2');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:"DM Sans";src:url('/assets/fonts/dm-sans-latin-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
:root{--navy:#2f4858;--navy-deep:#172d3a;--navy-soft:#3b5c6b;--cream:#f5f7f8;--ink:#1d3441;--muted:#526773;--line:#e1e7ea;--line-dark:rgba(255,255,255,.16)}
body{font-family:"DM Sans",system-ui,sans-serif;letter-spacing:-.012em}
h1,h2,h3,.hero-side p{font-family:"Manrope",system-ui,sans-serif;letter-spacing:-.058em}
h1{font-weight:730;line-height:1.045}h2{font-weight:720;line-height:1.105}h3{font-weight:690;letter-spacing:-.04em}
.kicker,.small-label,.eyeline{letter-spacing:.12em;font-size:.76rem}.lead{line-height:1.62}
.utility{display:none}
.site-header{background:rgba(47,72,88,.97);border-bottom:1px solid rgba(255,255,255,.08);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
.nav{min-height:88px}.brand img{width:202px}.nav-links{gap:clamp(20px,2.3vw,36px);font-size:.92rem}.nav-links>a:not(.nav-contact){padding:9px 0}
.nav-contact{min-height:46px;border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:8px 9px 8px 20px;gap:20px;transition:background .25s,border-color .25s,transform .25s}
.nav-contact span{display:grid;place-items:center;width:30px;height:30px;background:rgba(255,255,255,.12);border-radius:50%;font-size:1.05rem}
.nav-contact:hover{transform:translateY(-2px);border-color:#ff9a75}
.btn{border-radius:999px;min-height:58px;padding:9px 10px 9px 23px;gap:20px;box-shadow:0 10px 26px rgba(8,30,40,.12);font-size:.94rem}
.btn span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:rgba(255,255,255,.17);font-size:1.05rem;transition:transform .25s}.btn:hover span{transform:translate(2px,-2px)}
.text-link{border-bottom:0;gap:10px;position:relative}.text-link:after{content:"";position:absolute;left:0;bottom:5px;width:calc(100% - 26px);height:1px;background:currentColor;opacity:.45}.text-link span{transition:transform .25s}.text-link:hover span{transform:translateX(4px)}
.home-hero{background:radial-gradient(ellipse at 83% 13%,rgba(112,153,170,.28),transparent 36%),radial-gradient(ellipse at 6% 85%,rgba(17,37,50,.45),transparent 45%),#2f4858}
.home-hero:before{right:-13vw;top:-19vw;width:58vw;height:58vw;border:1px solid rgba(255,255,255,.1)}
.home-hero:after{content:"";position:absolute;right:21%;top:0;bottom:0;width:1px;background:linear-gradient(transparent,rgba(255,255,255,.08),transparent);pointer-events:none}
.hero-grid{min-height:660px;gap:6vw;grid-template-columns:minmax(0,1.38fr) minmax(270px,.62fr)}
.hero-main{padding:clamp(90px,10vw,148px) 0 92px}
.home-hero h1{font-size:clamp(3.35rem,6.6vw,6.5rem);max-width:810px;margin-bottom:28px}
.hero-main .lead{max-width:650px;color:#d0dce1;font-size:1.2rem;line-height:1.68}
.hero-side{border-left:0;padding:0;align-items:center}
.hero-side-inner{padding:36px 34px;border:1px solid rgba(255,255,255,.18);border-radius:26px;background:linear-gradient(145deg,rgba(255,255,255,.13),rgba(255,255,255,.035));box-shadow:0 24px 70px rgba(7,28,39,.15);backdrop-filter:blur(14px)}
.hero-side p{font-size:clamp(1.45rem,2vw,1.95rem);line-height:1.34;margin:20px 0 46px;font-weight:570}
.hero-side-bottom{border-top:1px solid rgba(255,255,255,.2);gap:25px;padding-top:22px}.hero-side-bottom strong{font-family:"Manrope",sans-serif;font-size:1.6rem;font-weight:700}
.hero-footer{border-top:1px solid rgba(255,255,255,.16);padding:20px 0 23px;color:#bed0d8;font-size:.72rem;letter-spacing:.11em}.hero-footer span+span:before{content:"•";margin-right:35px;color:#ff9a75}
.intro-section{background:#fff}.split-heading>div:last-child{font-size:1.08rem;line-height:1.75}.split-heading h2{font-size:clamp(2.45rem,4.3vw,4.5rem)}
.service-preview{gap:18px;border:0;margin-top:64px}
.service-preview a,.service-preview a+a{min-height:320px;padding:30px 30px 35px;border:1px solid #e1e8eb;border-radius:24px;background:linear-gradient(165deg,#fff 55%,#f7fafb);box-shadow:0 14px 34px rgba(20,48,61,.045);transition:transform .25s,box-shadow .25s,border-color .25s}
.service-preview a:hover{transform:translateY(-6px);box-shadow:0 24px 50px rgba(22,49,61,.12);border-color:#ffcbb9}
.service-preview b{right:28px;top:27px;width:34px;height:34px;border:1px solid var(--line);border-radius:50%;display:grid;place-items:center;font-size:1.05rem;color:#547180}
.service-preview h3{margin-top:66px;font-size:1.53rem}.service-preview p{font-size:.99rem;line-height:1.62}
.hospitality-feature{background:radial-gradient(ellipse at 80% 0,rgba(80,116,133,.25),transparent 45%),#1b3442;padding:118px 0}
.system-panel{padding:10px 30px;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:linear-gradient(145deg,#335365,#254251);box-shadow:0 30px 70px rgba(3,20,29,.22)}
.system-heading{padding:26px 0 19px}.system-row{border-top:1px solid rgba(255,255,255,.13);padding:21px 0}.system-row strong{font-family:"Manrope",sans-serif;font-size:1.09rem}.system-row i{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.08);font-size:1rem;color:#ffad8c}.system-foot{border-top:1px solid rgba(255,255,255,.14)}
.proof-grid{border:0;gap:18px}.proof-grid article,.proof-grid article+article{padding:32px 28px 34px;border:1px solid #e4eaed;border-radius:22px;background:#f9fbfb}.proof-grid article:last-child{border:1px solid #e4eaed}.proof-num{margin-bottom:64px;color:#718893;font-size:.8rem}.proof-grid h3{font-size:1.42rem}.proof-grid p{font-size:.96rem;line-height:1.67}.proof-note{margin-top:22px}
.light-bg{background:#f4f7f8}.approach-list{gap:20px}.approach-list>div{padding:26px 25px 18px;border:1px solid #e0e7ea;border-radius:20px;background:#fff}.approach-list h3{margin:40px 0 12px}.approach-list p{line-height:1.65}
.contact-band{background:radial-gradient(ellipse at 80% -20%,rgba(114,155,173,.28),transparent 54%),#243f50;border-radius:0}.contact-band .btn{box-shadow:0 16px 30px rgba(10,30,40,.14)}
.page-hero{background:radial-gradient(ellipse at 85% 10%,rgba(105,145,163,.23),transparent 40%),linear-gradient(125deg,#233e4e,#172d3a);padding:clamp(100px,11vw,156px) 0 120px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-15vw;top:-26vw;width:52vw;height:52vw;border:1px solid rgba(255,255,255,.08);border-radius:50%;pointer-events:none}.page-hero>.wrap{position:relative;z-index:1}.page-hero h1{font-size:clamp(3.15rem,6vw,5.9rem);max-width:1060px}
.service-index{top:116px;background:#fff;border:1px solid #e4eaed;border-radius:20px;padding:22px 22px 16px;margin-top:70px;box-shadow:0 14px 40px rgba(18,45,58,.055)}.service-index span{margin-bottom:7px}.service-index a{padding:10px 4px;border-bottom:1px solid #edf0f1}.service-index a:last-child{border:0}.service-item{padding:83px 0 92px;border-bottom:1px solid #dce4e7}.service-item h2{font-size:clamp(2.4rem,3.8vw,4.15rem);margin-bottom:24px}.service-item .service-lead{font-family:"Manrope",sans-serif;font-weight:530;letter-spacing:-.035em;font-size:1.4rem}.service-item ul{border-top:1px solid #e1e8eb}.service-item li:before{border-radius:50%}
.hospitality-hero{background:radial-gradient(ellipse at 70% 20%,rgba(81,123,143,.24),transparent 50%),#18313f}.hospitality-hero-grid{min-height:690px}.hospitality-hero h1{font-size:clamp(3.15rem,5.8vw,5.8rem)}
.hospitality-graphic{min-height:510px;display:grid;grid-template-columns:1fr 1fr;grid-template-rows:auto 1fr 1fr auto auto;gap:10px;padding:24px;border:1px solid rgba(255,255,255,.16);border-radius:28px;background:linear-gradient(150deg,#395969,#1e3847);box-shadow:0 28px 70px rgba(0,14,23,.25)}
.hospitality-graphic:before,.hospitality-graphic:after{display:none}.hg-head,.hg-foot,.hg-core,.hg-node{position:static;transform:none}.hg-head{grid-column:1/-1;align-self:start;margin-bottom:10px}.hg-node{min-width:0;display:block;padding:20px;border:1px solid rgba(255,255,255,.16);border-radius:18px;background:rgba(255,255,255,.07);font-family:"Manrope",sans-serif;font-size:1.03rem;line-height:1.36}.hg-node small{display:block;margin-top:7px;color:#b9cbd2;font-family:"DM Sans",sans-serif;font-size:.8rem}.hg-node.n1,.hg-node.n2,.hg-node.n3,.hg-node.n4{position:static}.hg-node.n1{grid-column:1;grid-row:2}.hg-node.n2{grid-column:2;grid-row:2}.hg-node.n3{grid-column:1;grid-row:3}.hg-node.n4{grid-column:2;grid-row:3}.hg-core{grid-column:1/-1;width:auto;height:auto;border-radius:16px;padding:14px 18px;background:#dc5523;color:#fff;text-align:left;font-family:"Manrope",sans-serif;font-size:.97rem;line-height:1.15}.hg-core br{display:none}.hg-foot{grid-column:1/-1;color:#b7cbd2;margin-top:2px}
.coverage-grid{gap:14px;border:0;background:none}.coverage-grid article{border:1px solid #e2e8eb;border-radius:21px;background:#fff;min-height:290px;box-shadow:0 12px 30px rgba(27,57,70,.035)}.coverage-grid h3{font-size:1.4rem;margin-top:55px}.hotel-systems{background:radial-gradient(ellipse at 10% 0,rgba(92,133,152,.18),transparent 48%),#1b3442}.system-lines>div{border-color:rgba(255,255,255,.14)}
.lifestyle,.value-grid article{border-radius:18px}.lifecycle>div{border-top:2px solid #d34f1a;background:#f8fafb;border-radius:18px;padding:24px}.lifecycle h3{margin-top:48px}.value-grid article{border:1px solid #e0e7ea;background:#fff;padding:23px}.value-grid h3{margin-top:50px}
.insights-grid a{border-radius:24px;min-height:390px;box-shadow:0 15px 40px rgba(16,47,62,.045)}.insights-grid a:first-child{background:linear-gradient(145deg,#315365,#1f3a49)}.insights-grid h3{font-size:clamp(1.65rem,2.6vw,2.45rem)}.article-head{background:linear-gradient(135deg,#294b5d,#172f3d)}.article-cta{border-radius:24px}.contact-methods>a,.contact-methods>div{padding:28px 30px;margin:0 0 14px;border:1px solid #e1e8eb;border-radius:18px;background:#f9fbfc}.contact-methods{border:0}.contact-methods b{right:25px}.site-footer{background:#162d3b}.footer-base{border-color:rgba(255,255,255,.13)}
@media(max-width:1050px){.hero-grid{gap:3vw}.hero-side-inner{padding:26px}.service-index{top:108px}.hospitality-graphic{min-height:480px}}
@media(max-width:760px){.nav{min-height:72px}.brand img{width:176px}.nav-links{top:72px;gap:0;background:#2f4858}.nav-links>a:not(.nav-contact){padding:13px}.nav-contact{margin-top:12px}.hero-grid{min-height:0}.hero-main{padding:82px 0 32px}.hero-side{padding:15px 0 50px}.hero-side-inner{padding:26px}.hero-side p{font-size:1.4rem;margin:16px 0 24px}.home-hero:after{display:none}.service-preview{gap:12px;margin-top:50px}.service-preview a,.service-preview a+a{min-height:0;padding:24px 24px 28px;border:1px solid #e1e8eb}.service-preview h3{margin-top:35px}.service-preview b{top:22px;right:22px}.hospitality-feature{padding:78px 0}.system-panel{padding:6px 22px}.proof-grid{gap:12px}.proof-grid article,.proof-grid article+article,.proof-grid article:last-child{padding:25px;border:1px solid #e4eaed}.proof-num{margin-bottom:30px}.approach-list>div{padding:23px}.service-index{position:static;margin-top:30px;display:flex;padding:18px}.service-index span{width:100%}.service-index a{border:1px solid #e1e8eb;border-radius:999px;padding:8px 12px}.service-item{padding:68px 0}.hospitality-graphic{min-height:430px}.hg-node{min-width:0;padding:17px}.coverage-grid{gap:12px}.coverage-grid article{min-height:0}.lifecycle>div{padding:24px}.lifecycle h3{margin-top:35px}.value-grid article{padding:24px}.value-grid h3{margin-top:30px}.footer-base{margin-top:50px}}
@media(max-width:460px){.btn{width:max-content}.actions .btn{width:100%}.hospitality-graphic{min-height:400px;gap:8px;padding:17px}.hg-node{min-width:0;font-size:.84rem;padding:12px}.hg-node small{font-size:.72rem}.hg-core{width:auto;height:auto;font-size:.84rem}.hg-head,.hg-foot{font-size:.65rem}}
/* The original transparent brand artwork renders directly on the navy surface. */
.brand img,.footer-brand img{mix-blend-mode:normal}

/* Branded motion: an ambient signal, brief entrances and tactile interactions. */
.hero-grid,.hero-footer{position:relative;z-index:2}
.home-hero:before{opacity:.35}
.hero-motion{position:absolute;inset:0;z-index:1;overflow:hidden;pointer-events:none}
.hero-motion-ring{position:absolute;left:77%;top:46%;width:min(64vw,790px);aspect-ratio:1;translate:-50% -50%;border-radius:50%;background:conic-gradient(from 6deg,transparent 0 36%,rgba(255,255,255,.065) 43%,rgba(255,255,255,.08) 59%,#f15923 65%,#ffb58f 68%,transparent 71% 100%);mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1px));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 2px),#000 calc(100% - 1px));animation:signal-orbit 20s linear infinite;opacity:.84}
.hero-motion-ring.secondary{width:min(46vw,565px);background:conic-gradient(from 170deg,rgba(255,255,255,.06) 0 20%,transparent 32% 71%,rgba(255,172,128,.55) 78%,transparent 85%);animation-duration:28s;animation-direction:reverse;opacity:.7}
.hero-motion-glow{position:absolute;width:310px;height:310px;left:calc(77% - 155px);top:calc(46% - 155px);border-radius:50%;background:radial-gradient(circle,rgba(255,119,65,.12),transparent 68%);animation:signal-breathe 6s ease-in-out infinite alternate}
.hero-main>.kicker{animation:hero-rise .65s .08s both}.hero-main>h1{animation:hero-rise .8s .19s both}.hero-main>.lead{animation:hero-rise .8s .34s both}.hero-main>.actions{animation:hero-rise .8s .49s both}.hero-side-inner{animation:hero-rise .9s .46s both}
.home-hero h1 em{position:relative;white-space:nowrap}.home-hero h1 em:after{content:"";position:absolute;left:3%;right:1%;bottom:-7px;height:3px;border-radius:5px;background:linear-gradient(90deg,#f15923,#ffb58f);transform:scaleX(0);transform-origin:left center;animation:signal-underline .85s 1s cubic-bezier(.18,.75,.25,1) forwards}
.hero-side-inner{position:relative;overflow:hidden;isolation:isolate}.hero-side-inner:before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(240px circle at var(--spot-x,50%) var(--spot-y,20%),rgba(255,168,126,.17),transparent 72%);opacity:.45;transition:opacity .3s}.hero-side-inner:hover:before{opacity:1}
.nav-links>a:not(.nav-contact){position:relative}.nav-links>a:not(.nav-contact):after{content:"";position:absolute;bottom:5px;left:0;width:100%;height:2px;background:#f15923;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.nav-links>a:not(.nav-contact):hover:after,.nav-links>a[aria-current]:after{transform:scaleX(1)}
.service-preview b,.insights-grid b,.contact-methods b{transition:transform .3s ease}.service-preview a:hover b,.insights-grid a:hover b,.contact-methods a:hover b{transform:translate(3px,-3px)}
.system-heading span:last-child{display:inline-flex;align-items:center;gap:9px}.system-heading span:last-child:before{content:"";width:7px;height:7px;border-radius:50%;background:#ffac84;box-shadow:0 0 0 0 rgba(255,172,132,.55);animation:status-pulse 2.8s ease-out infinite}
.system-row{transition:padding-left .3s ease,background .3s ease}.system-row:hover{padding-left:10px;background:rgba(255,255,255,.035)}
.hg-node{transition:border-color .3s,background .3s,transform .3s}.hg-node:hover{border-color:rgba(255,172,132,.78);background:rgba(255,255,255,.11);transform:translateY(-4px)}.hg-node:before{content:"";display:inline-block;width:7px;height:7px;margin-right:8px;border-radius:50%;background:#ffad88;box-shadow:0 0 0 0 rgba(255,173,136,.4);animation:status-pulse 3.2s ease-out infinite}.hg-node.n2:before{animation-delay:.6s}.hg-node.n3:before{animation-delay:1.2s}.hg-node.n4:before{animation-delay:1.8s}
.reveal-on-scroll{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.reveal-on-scroll.is-visible{opacity:1;transform:none}
.service-preview a:nth-child(2),.proof-grid article:nth-child(2),.approach-list>div:nth-child(2),.coverage-grid article:nth-child(3n + 2),.lifecycle>div:nth-child(2),.value-grid article:nth-child(2),.insights-grid a:nth-child(2){transition-delay:.09s}
.service-preview a:nth-child(3),.proof-grid article:nth-child(3),.approach-list>div:nth-child(3),.coverage-grid article:nth-child(3n),.lifecycle>div:nth-child(3),.value-grid article:nth-child(3){transition-delay:.18s}
@keyframes signal-orbit{to{rotate:360deg}}@keyframes signal-breathe{to{opacity:.4;scale:1.2}}@keyframes status-pulse{55%{box-shadow:0 0 0 7px rgba(255,172,132,0)}100%{box-shadow:0 0 0 0 rgba(255,172,132,0)}}@keyframes hero-rise{from{transform:translateY(18px)}to{transform:translateY(0)}}@keyframes signal-underline{to{transform:scaleX(1)}}
@media(max-width:760px){.hero-motion-ring{left:76%;top:31%;width:92vw;opacity:.46}.hero-motion-ring.secondary{width:65vw}.hero-motion-glow{left:calc(76% - 155px);top:calc(31% - 155px)}.home-hero h1 em{white-space:normal}.nav-links>a:not(.nav-contact):after{display:none}}
@media(prefers-reduced-motion:reduce){.hero-motion-ring,.hero-motion-glow,.hero-main>.kicker,.hero-main>h1,.hero-main>.lead,.hero-main>.actions,.hero-side-inner,.home-hero h1 em:after,.system-heading span:last-child:before,.hg-node:before{animation:none!important}.home-hero h1 em:after{transform:scaleX(1)}.reveal-on-scroll{opacity:1;transform:none;transition:none!important}.system-row,.hg-node,.service-preview b,.insights-grid b,.contact-methods b{transition:none!important}}
