
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600&family=Montserrat:wght@500;600;700&display=swap');

:root{
  --navy:#081d34;--navy-2:#0f2b4b;--steel:#66717e;--silver:#c5cbd2;
  --gold:#c89b3c;--white:#fff;--soft:#f4f6f8;--text:#172231;--muted:#5f6b78;
  --border:#dce2e7;--shadow:0 18px 45px rgba(8,29,52,.10);
  --container:1320px;--header:94px;--radius:12px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text);background:#fff;font-family:Inter,Arial,sans-serif;line-height:1.7}
img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}
.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}
.skip-link{position:fixed;left:16px;top:-80px;z-index:1000;background:#fff;color:#000;padding:12px 18px}.skip-link:focus{top:16px}
.site-header{position:fixed;inset:0 0 auto;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(8,29,52,.09);transition:.25s}
.site-header.scrolled{box-shadow:0 8px 30px rgba(8,29,52,.08)}
.header-inner{height:var(--header);display:flex;align-items:center;gap:36px}
.brand{display:flex;flex-direction:column;align-items:flex-start;min-width:225px}
.brand-picture{display:grid;width:215px}.brand-logo{grid-area:1/1;width:100%;height:auto}.brand-logo-light{opacity:0}
.brand-descriptor{margin-top:3px;margin-left:38px;font-size:9px;line-height:1;letter-spacing:.17em;text-transform:uppercase;color:var(--steel);white-space:nowrap}
.primary-nav{margin-left:auto}.primary-nav ul{display:flex;gap:30px;align-items:center;list-style:none;margin:0;padding:0}
.primary-nav a{font-family:Montserrat,sans-serif;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.primary-nav a:hover,.primary-nav a[aria-current="page"]{color:var(--gold)}
.header-cta{border:1px solid var(--navy);padding:13px 18px;font:600 11px Montserrat,sans-serif;letter-spacing:.07em;text-transform:uppercase}
.header-cta:hover{background:var(--navy);color:#fff}
.mobile-nav-cta{display:none}.nav-toggle{display:none;border:0;background:none;padding:10px}.nav-toggle span{display:block;width:24px;height:2px;background:var(--navy);margin:5px}
.hero{position:relative;min-height:92vh;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-inner{min-height:64vh}
.hero-media,.hero-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,17,31,.95),rgba(4,17,31,.76) 48%,rgba(4,17,31,.18))}
.hero-content{position:relative;z-index:2;padding-top:var(--header);max-width:1320px}.hero-content>*{max-width:790px}
.eyebrow{display:block;color:var(--gold);font:600 11px Montserrat,sans-serif;letter-spacing:.18em;text-transform:uppercase}
h1,h2,h3{font-family:Montserrat,sans-serif;line-height:1.12;margin:0;color:var(--navy)}h1{font-size:clamp(42px,6vw,82px);color:#fff;max-width:850px}h2{font-size:clamp(32px,4vw,54px)}h3{font-size:20px}
.lead{font-size:clamp(17px,1.5vw,22px);color:rgba(255,255,255,.83);margin:24px 0 32px}
.button-row{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;border:1px solid transparent;border-radius:8px;font:600 12px Montserrat,sans-serif;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;transition:.22s}
.button-primary{background:var(--gold);color:#0a1d34}.button-primary:hover{transform:translateY(-2px);filter:brightness(1.05)}
.button-ghost{border-color:rgba(255,255,255,.45);color:#fff;background:transparent}.button-ghost:hover{background:#fff;color:var(--navy)}
.button-disabled{width:100%;background:rgba(255,255,255,.10);color:rgba(255,255,255,.55);cursor:not-allowed}
.section{padding:110px 0}.section-soft{background:var(--soft)}.section-dark{background:var(--navy);color:#fff}.section-dark h2,.section-dark h3{color:#fff}
.section-heading{max-width:820px;margin-bottom:48px}.section-heading p{font-size:18px;color:var(--muted)}
.trust-strip{background:var(--navy);color:#fff}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid article{padding:28px;border-left:1px solid rgba(255,255,255,.12)}.trust-grid article:last-child{border-right:1px solid rgba(255,255,255,.12)}
.trust-grid strong{display:block;color:var(--gold);font:700 25px Montserrat,sans-serif}.trust-grid span{font-size:13px;color:rgba(255,255,255,.68)}
.solution-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.solution-card{background:#fff;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 28px rgba(8,29,52,.05);transition:.25s}
.solution-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.solution-card img{aspect-ratio:3/2;object-fit:cover}.solution-card-body{padding:28px}.solution-card-body p{color:var(--muted)}.solution-card-body a,.text-link{color:var(--navy);font-weight:600}.solution-card-body a:hover,.text-link:hover{color:var(--gold)}
.split-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:start}.feature-image{margin-top:30px;border-radius:var(--radius);aspect-ratio:16/10;object-fit:cover}
.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.feature-grid-four{grid-template-columns:repeat(4,1fr)}
.feature-card{padding:30px;border:1px solid var(--border);background:#fff;border-radius:var(--radius)}.feature-card p{color:var(--muted);margin-bottom:0}
.process-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin:42px 0}.process-step{padding:26px;border:1px solid rgba(255,255,255,.15);border-radius:var(--radius)}.process-step span{color:var(--gold);font-weight:700}.process-step p{color:rgba(255,255,255,.66)}
.intelligence{background:linear-gradient(135deg,#050f1b,var(--navy-2));color:#fff}.intelligence h2{color:#fff}.intelligence-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.intelligence-panel{padding:34px;border:1px solid rgba(255,255,255,.14);border-radius:var(--radius);background:rgba(255,255,255,.06)}
.intelligence-panel label{display:block;margin-bottom:10px}.intelligence-panel textarea{width:100%;min-height:190px;padding:18px;border:1px solid rgba(255,255,255,.15);border-radius:8px;background:rgba(0,0,0,.18);color:#fff;resize:none}.intelligence-panel a{display:inline-block;margin-top:18px;color:var(--gold)}
.global-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}.world-map{width:100%}.metric-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:32px}.metric-grid article{padding:20px;background:var(--soft);border:1px solid var(--border)}.metric-grid strong{display:block;font:700 25px Montserrat,sans-serif;color:var(--navy)}
.cta-section{padding-top:60px}.cta-card{display:flex;align-items:center;justify-content:space-between;gap:40px;background:var(--navy);color:#fff;padding:52px;border-radius:16px}.cta-card h2{color:#fff}.cta-card p{color:rgba(255,255,255,.72)}
.page-hero{padding:170px 0 90px;background:linear-gradient(135deg,var(--navy),var(--navy-2));color:#fff}.page-hero h1{font-size:clamp(38px,5vw,68px)}.page-hero p{max-width:760px;color:rgba(255,255,255,.75)}
.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.detail-grid img{border-radius:var(--radius);aspect-ratio:3/2;object-fit:cover}.solution-detail:nth-child(even){background:var(--soft)}.solution-detail:nth-child(even) img{order:2}
.check-list{list-style:none;padding:0;margin:26px 0}.check-list li{padding:9px 0 9px 28px;position:relative;border-bottom:1px solid var(--border)}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--gold);font-weight:700}
.service-stage:nth-child(even){background:var(--soft)}.stage-grid{display:grid;grid-template-columns:150px 1fr;gap:50px;align-items:start}.stage-number{font:700 72px Montserrat,sans-serif;color:var(--silver)}
.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:70px}.contact-copy dl div{padding:18px 0;border-bottom:1px solid var(--border)}.contact-copy dt{font-weight:600}.contact-copy dd{margin:5px 0 0;color:var(--muted)}
.project-form{padding:36px;border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-form label{display:block;margin-bottom:18px;font-weight:600;font-size:13px}.project-form input,.project-form textarea{width:100%;margin-top:7px;padding:14px;border:1px solid #cbd3da;border-radius:7px;background:#fff}.project-form input:focus,.project-form textarea:focus{outline:2px solid rgba(200,155,60,.35);border-color:var(--gold)}.consent{display:flex!important;gap:10px;font-weight:400!important}.consent input{width:auto;margin-top:5px}
.legal-main{min-height:100vh}.legal-hero{padding-bottom:54px}.legal-section{padding-top:70px}.legal-content{max-width:900px}.legal-content h2{font-size:27px;margin:42px 0 14px}.legal-content p{color:#3e4a57}.legal-content a{color:#7a5a18;text-decoration:underline}
.status-page{min-height:78vh;display:flex;align-items:center;padding-top:var(--header);text-align:center}.status-page h1{color:var(--navy);font-size:60px}.status-page p{max-width:650px;margin:20px auto 30px;color:var(--muted)}
.site-footer{background:#06172a;color:#fff;padding:78px 0 0}.footer-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr .8fr .9fr;gap:44px}.footer-grid h2{font-size:14px;color:var(--gold);margin-bottom:18px;text-transform:uppercase;letter-spacing:.08em}.footer-grid a,.footer-grid span{display:block;color:rgba(255,255,255,.72);font-size:13px;padding:5px 0}.footer-grid a:hover{color:var(--gold)}.
.footer-logo-final{
    display:block;
    width:230px;
    height:auto;
    max-width:100%;
    margin-bottom:18px;
}.footer-descriptor{margin:8px 0 22px!important;font-size:9px!important;letter-spacing:.16em;text-transform:uppercase}.footer-brand p{color:rgba(255,255,255,.62);font-size:14px}.footer-brand strong{font-size:12px}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:24px;margin-top:55px;padding:24px 0;border-top:1px solid rgba(255,255,255,.12);font-size:12px}.footer-bottom nav{display:flex;gap:18px;flex-wrap:wrap}.footer-bottom a{display:inline-block;padding:6px 0;color:rgba(255,255,255,.78);position:relative;z-index:2;cursor:pointer}.footer-bottom a:hover{color:var(--gold);text-decoration:underline}
.whatsapp,.scroll-top{position:fixed;right:20px;z-index:60;width:46px;height:46px;border-radius:50%;display:grid;place-items:center;border:0}.whatsapp{bottom:20px;background:#22c55e;color:#fff;font-weight:700}.scroll-top{bottom:76px;background:var(--navy);color:#fff;opacity:0;pointer-events:none}.scroll-top.visible{opacity:1;pointer-events:auto}
.reveal{opacity:0;transform:translateY(24px);transition:.7s}.reveal.visible{opacity:1;transform:none}
@media(max-width:1100px){
  :root{--header:82px}.primary-nav ul{gap:16px}.primary-nav a{font-size:10px}.header-cta{display:none}
  .solution-grid{grid-template-columns:repeat(2,1fr)}.process-grid{grid-template-columns:repeat(3,1fr)}
  .feature-grid-four{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(3,1fr)}.footer-brand{grid-column:1/-1;max-width:580px}
}
@media(max-width:820px){
  .container{width:min(calc(100% - 32px),var(--container))}.nav-toggle{display:block;margin-left:auto}.primary-nav{position:fixed;inset:var(--header) 0 auto;background:#fff;padding:25px 24px;border-bottom:1px solid var(--border);transform:translateY(-130%);transition:.25s}.primary-nav.open{transform:none}.primary-nav ul{display:block}.primary-nav li{border-bottom:1px solid var(--border)}.primary-nav a{display:block;padding:15px 0}.mobile-nav-cta{display:block!important;margin-top:18px;background:var(--navy);color:#fff!important;text-align:center}
  .hero{min-height:max(620px,78vh)}.hero-inner{min-height:600px}.hero-content{padding-top:110px}
  .trust-grid{grid-template-columns:repeat(2,1fr)}.solution-grid,.feature-grid,.split-layout,.intelligence-grid,.global-grid,.detail-grid,.contact-grid{grid-template-columns:1fr}.solution-detail:nth-child(even) img{order:0}.process-grid{grid-template-columns:1fr}.stage-grid{grid-template-columns:90px 1fr}.footer-grid{grid-template-columns:repeat(2,1fr)}
  .cta-card{display:block}.cta-card .button-row{margin-top:25px}
}
@media(max-width:560px){
  .container{width:min(calc(100% - 24px),var(--container))}.brand{min-width:180px}.brand-picture{width:178px}.brand-descriptor{margin-left:30px;font-size:7px}.section{padding:76px 0}.trust-grid,.solution-grid,.feature-grid,.feature-grid-four,.metric-grid,.field-row,.footer-grid{grid-template-columns:1fr}.trust-grid article{border-right:1px solid rgba(255,255,255,.12)}.stage-grid{grid-template-columns:1fr}.stage-number{font-size:48px}.project-form{padding:22px}.footer-bottom{display:block}.footer-bottom nav{margin-top:14px;gap:12px}.cta-card{padding:32px 24px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}


/* =========================================================
   WP10 SPRINT 2 — PREMIUM CORPORATE UI
   ========================================================= */

/* Header refinement */
.site-header{
  backdrop-filter:saturate(140%) blur(14px);
  -webkit-backdrop-filter:saturate(140%) blur(14px);
}
.site-header.scrolled .header-inner{height:74px}
.site-header.scrolled .brand-picture{width:192px}
.site-header.scrolled .brand-descriptor{font-size:8px}
.header-inner,.brand-picture,.brand-descriptor{transition:.25s ease}
.primary-nav a{position:relative}
.primary-nav a::after{
  content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;
  background:var(--gold);transition:right .25s ease
}
.primary-nav a:hover::after,.primary-nav a[aria-current="page"]::after{right:0}

/* Hero refinement */
.hero-media img{transform:scale(1.02);animation:heroBreath 14s ease-in-out infinite alternate}
.hero-overlay{
  background:
    linear-gradient(90deg,rgba(4,17,31,.96),rgba(4,17,31,.78) 44%,rgba(4,17,31,.22) 78%),
    linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.32));
}
.hero-content::before{
  content:"";display:block;width:74px;height:2px;background:var(--gold);margin-bottom:24px
}
.hero h1{letter-spacing:-.035em;text-wrap:balance}
.hero .lead{max-width:720px}
@keyframes heroBreath{from{transform:scale(1.02)}to{transform:scale(1.075)}}

/* Trust indicators */
.trust-grid article{position:relative;transition:.25s ease}
.trust-grid article::before{
  content:"";position:absolute;left:0;bottom:0;width:0;height:3px;background:var(--gold);transition:.3s ease
}
.trust-grid article:hover{background:rgba(255,255,255,.035);transform:translateY(-3px)}
.trust-grid article:hover::before{width:100%}

/* Solution cards */
.solution-card{position:relative}
.solution-card img{transition:transform .6s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.solution-card:hover img{transform:scale(1.055);filter:saturate(1.07) contrast(1.03)}
.solution-card-body{position:relative;background:#fff}
.solution-card-body::before{
  content:"";position:absolute;left:28px;top:0;width:44px;height:3px;background:var(--gold);
  transform:translateY(-1px)
}
.solution-card h3{transition:color .2s ease}
.solution-card:hover h3{color:var(--gold)}
.solution-card-body a span{display:inline-block;transition:transform .2s ease}
.solution-card-body a:hover span{transform:translateX(5px)}

/* Premium feature cards */
.feature-card{position:relative;overflow:hidden;transition:.28s ease}
.feature-card::before{
  content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--gold);
  transform:scaleY(0);transform-origin:bottom;transition:.28s ease
}
.feature-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.feature-card:hover::before{transform:scaleY(1)}

/* Workflow timeline */
.process-grid{position:relative}
.process-grid::before{
  content:"";position:absolute;left:6%;right:6%;top:53px;height:1px;background:rgba(255,255,255,.17)
}
.process-step{position:relative;background:rgba(255,255,255,.025);transition:.28s ease}
.process-step::after{
  content:"";position:absolute;top:48px;right:-11px;width:22px;height:22px;border:1px solid rgba(255,255,255,.2);
  border-left:0;border-bottom:0;transform:rotate(45deg);background:var(--navy)
}
.process-step:last-child::after{display:none}
.process-step:hover{transform:translateY(-5px);border-color:rgba(200,155,60,.65);background:rgba(255,255,255,.05)}
.process-step span{
  display:grid;place-items:center;width:38px;height:38px;border-radius:50%;
  border:1px solid rgba(200,155,60,.65);background:var(--navy);position:relative;z-index:2
}

/* Intelligence panel */
.intelligence-panel{box-shadow:0 25px 60px rgba(0,0,0,.28)}
.intelligence-panel textarea{transition:.25s ease}
.intelligence-panel:hover textarea{border-color:rgba(200,155,60,.5)}
.intelligence-panel a{position:relative}
.intelligence-panel a::after{
  content:"";position:absolute;left:0;bottom:-4px;width:0;height:1px;background:var(--gold);transition:.25s ease
}
.intelligence-panel a:hover::after{width:100%}

/* Global map */
.world-map{filter:drop-shadow(0 18px 36px rgba(8,29,52,.12));transition:.45s ease}
.world-map:hover{transform:translateY(-4px) scale(1.01)}
.metric-grid article{transition:.25s ease}
.metric-grid article:hover{transform:translateY(-3px);border-color:var(--gold);background:#fff}

/* CTA */
.cta-card{position:relative;overflow:hidden}
.cta-card::after{
  content:"";position:absolute;width:320px;height:320px;border-radius:50%;
  right:-120px;top:-170px;border:1px solid rgba(255,255,255,.12);
  box-shadow:0 0 0 45px rgba(255,255,255,.035),0 0 0 90px rgba(255,255,255,.02)
}
.cta-card>*{position:relative;z-index:2}

/* Footer refinement */
.site-footer{position:relative;overflow:hidden}
.site-footer::before{
  content:"";position:absolute;inset:0;
  background:
    linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);
  background-size:42px 42px;pointer-events:none
}
.site-footer>.container{position:relative;z-index:2}
.footer-grid a{position:relative;width:max-content;max-width:100%}
.footer-grid a::after{
  content:"";position:absolute;left:0;bottom:2px;width:0;height:1px;background:var(--gold);transition:.25s ease
}
.footer-grid a:hover::after{width:100%}
.footer-bottom a{padding:8px 2px}

/* Inner pages */
.page-hero{position:relative;overflow:hidden}
.page-hero::after{
  content:"";position:absolute;width:420px;height:420px;right:-160px;bottom:-240px;
  border:1px solid rgba(255,255,255,.1);border-radius:50%;
  box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.015)
}
.page-hero .container{position:relative;z-index:2}
.detail-grid img{transition:.45s ease;box-shadow:0 14px 34px rgba(8,29,52,.10)}
.detail-grid:hover img{transform:scale(1.012)}
.stage-number{-webkit-text-stroke:1px var(--silver);color:transparent}
.service-stage{transition:.2s ease}
.service-stage:hover{background:#f7f8fa}

/* Form */
.project-form{background:#fff}
.project-form input,.project-form textarea{transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.project-form input:hover,.project-form textarea:hover{border-color:#aeb9c3}
.project-form input:focus,.project-form textarea:focus{box-shadow:0 0 0 4px rgba(200,155,60,.12)}

/* Legal pages */
.legal-content{background:#fff}
.legal-content h2{padding-bottom:10px;border-bottom:1px solid var(--border)}
.legal-content h2::before{content:"";display:inline-block;width:28px;height:2px;background:var(--gold);margin:0 12px 7px 0}

/* Motion polish */
.reveal{transition-duration:.8s;transition-timing-function:cubic-bezier(.2,.7,.2,1)}
.button{box-shadow:none}
.button-primary{box-shadow:0 10px 24px rgba(200,155,60,.18)}
.button-primary:hover{box-shadow:0 14px 30px rgba(200,155,60,.28)}
.scroll-top,.whatsapp{box-shadow:0 10px 24px rgba(0,0,0,.18);transition:.2s ease}
.scroll-top:hover,.whatsapp:hover{transform:translateY(-3px)}

@media(max-width:1100px){
  .process-grid::before,.process-step::after{display:none}
}
@media(max-width:820px){
  .site-header.scrolled .header-inner{height:var(--header)}
  .hero-media img{animation:none;transform:scale(1.02)}
}
@media(prefers-reduced-motion:reduce){
  .hero-media img{animation:none!important}
  .solution-card img,.world-map,.feature-card,.process-step{transition:none!important}
}


/* =========================================================
   WP10 SPRINT 2.1 — MOBILE VISUAL SYSTEM
   Desktop presentation remains unchanged.
   Mobile uses dedicated portrait assets and shows them in full.
   ========================================================= */

.responsive-solution-media{
  display:block;
  width:100%;
  overflow:hidden;
}

.responsive-solution-media .responsive-solution-image{
  display:block;
  width:100%;
}

/* Desktop: retain existing cinematic 3:2 treatment */
@media (min-width:1101px){
  .solution-card .responsive-solution-media{
    aspect-ratio:3 / 2;
  }

  .solution-card .responsive-solution-image{
    width:100%;
    height:100%;
    object-fit:cover;
  }

  .detail-grid .responsive-solution-media{
    border-radius:var(--radius);
    overflow:hidden;
    box-shadow:0 14px 34px rgba(8,29,52,.10);
  }

  .detail-grid .responsive-solution-image{
    aspect-ratio:3 / 2;
    object-fit:cover;
  }
}

/* Tablet: use tablet artwork without aggressive crop */
@media (min-width:768px) and (max-width:1100px){
  .solution-card .responsive-solution-media{
    aspect-ratio:16 / 9;
    background:var(--navy);
  }

  .solution-card .responsive-solution-image{
    width:100%;
    height:100%;
    object-fit:contain;
  }

  .detail-grid .responsive-solution-media{
    border-radius:var(--radius);
    overflow:hidden;
    background:var(--navy);
  }

  .detail-grid .responsive-solution-image{
    width:100%;
    height:auto;
    object-fit:contain;
  }
}

/* Mobile: show dedicated portrait composition completely */
@media (max-width:767px){
  .solution-card .responsive-solution-media,
  .detail-grid .responsive-solution-media{
    width:100%;
    height:auto;
    aspect-ratio:auto;
    background:var(--navy);
    overflow:hidden;
  }

  .solution-card .responsive-solution-image,
  .detail-grid .responsive-solution-image{
    width:100%;
    height:auto;
    aspect-ratio:auto;
    object-fit:contain;
    object-position:center;
    transform:none !important;
    animation:none !important;
  }

  .solution-card:hover .responsive-solution-image,
  .detail-grid:hover .responsive-solution-image{
    transform:none !important;
  }
}


/* =========================================================
   WP10 SPRINT 2.2 — FULL IMAGE FIT
   Hero remains cinematic with cover.
   All solution/content visuals are shown completely.
   ========================================================= */

/* Solution cards: keep equal media area, but never crop the artwork */
.solution-card .responsive-solution-media{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  aspect-ratio:3 / 2;
  background:#eef2f5;
  overflow:hidden;
}

.solution-card .responsive-solution-image{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center center;
  transform:none !important;
  animation:none !important;
}

.solution-card:hover .responsive-solution-image{
  transform:none !important;
}

/* Large solution-page visuals: also show the complete artwork */
.detail-grid .responsive-solution-media{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  aspect-ratio:3 / 2;
  border-radius:var(--radius);
  background:#eef2f5;
  overflow:hidden;
  box-shadow:0 14px 34px rgba(8,29,52,.10);
}

.detail-grid .responsive-solution-image{
  width:100%;
  height:100%;
  object-fit:contain !important;
  object-position:center center;
  transform:none !important;
  animation:none !important;
}

.detail-grid:hover .responsive-solution-image{
  transform:none !important;
}

/* General supporting content images: preserve full frame */
.feature-image{
  width:100%;
  height:auto;
  aspect-ratio:auto;
  object-fit:contain !important;
  background:#eef2f5;
}

/* Tablet and mobile retain the complete image */
@media (max-width:1100px){
  .solution-card .responsive-solution-media,
  .detail-grid .responsive-solution-media{
    aspect-ratio:auto;
    min-height:0;
  }

  .solution-card .responsive-solution-image,
  .detail-grid .responsive-solution-image{
    width:100%;
    height:auto;
    object-fit:contain !important;
  }
}
/* WP09 RC-01 TEST 01 — Desktop Hero Height */
@media (min-width: 821px) {
  .hero {
    min-height: 82vh;
  }
}
/* ===================================
   MOBILE FLOATING BUTTON FIX
=================================== */

@media (max-width: 768px) {

  .whatsapp {
    right: 16px;
    bottom: 18px;
  }

  .scroll-top {
    right: 16px;
    bottom: 78px;
  }

}
/* ===================================
   SOLUTIONS PAGE — SECTION SPACING
=================================== */

@media (min-width: 1101px) {

  .solution-detail.section {
    padding-top: 52px;
    padding-bottom: 52px;
  }

}
/* Solutions page — tablet spacing */
@media (min-width: 561px) and (max-width: 1100px) {
  .solution-detail.section {
    padding-top: 58px;
    padding-bottom: 58px;
  }
}

/* Solutions page — mobile spacing */
@media (max-width: 560px) {
  .solution-detail.section {
    padding-top: 46px;
    padding-bottom: 46px;
  }
}
/* =========================================================
   PROJECT SERVICES — FINAL SECTION SPACING
   ========================================================= */

@media (min-width: 1101px) {
  .service-stage.section {
    padding-top: 72px;
    padding-bottom: 72px;
  }
}

@media (min-width: 561px) and (max-width: 1100px) {
  .service-stage.section {
    padding-top: 58px;
    padding-bottom: 58px;
  }
}

@media (max-width: 560px) {
  .service-stage.section {
    padding-top: 38px;
    padding-bottom: 38px;
  }
}
/* =========================================================
   PROJECT SERVICES — MOBILE STAGE COMPACT LAYOUT
   ========================================================= */

@media (max-width: 560px) {

  .service-stage .stage-grid {
    gap: 12px;
  }

  .service-stage .stage-number {
    font-size: 48px;
    line-height: 1;
    margin-bottom: 4px;
  }

}
/* =========================================================
   ABOUT PAGE — FINAL SECTION SPACING
   ========================================================= */

/* Desktop */
@media (min-width: 1101px) {

  .about-page .section-soft {
    padding-top: 76px;
    padding-bottom: 76px;
  }

  .about-page .cta-section {
    padding-top: 58px;
    padding-bottom: 72px;
  }

}

/* Tablet */
@media (min-width: 561px) and (max-width: 1100px) {

  .about-page .section-soft {
    padding-top: 62px;
    padding-bottom: 62px;
  }

  .about-page .cta-section {
    padding-top: 50px;
    padding-bottom: 62px;
  }

}

/* Mobile */
@media (max-width: 560px) {

  .about-page .section-soft {
    padding-top: 48px;
    padding-bottom: 48px;
  }

  .about-page .cta-section {
    padding-top: 42px;
    padding-bottom: 50px;
  }

}
/* ABOUT — How We Work heading/card relationship */
.about-page .section-soft .section-heading {
  margin-bottom: 32px;
}
/* =========================================================
   CONTACT PAGE — MOBILE REFINEMENT
   ========================================================= */

@media (max-width: 560px) {

  .contact-page .contact-grid {
    gap: 38px;
    padding-bottom: 26px;
  }

  .contact-page .project-form {
    padding: 22px 18px;
  }

  .contact-page .project-form input,
  .contact-page .project-form textarea {
    width: 100%;
  }

  .contact-page .project-form .button {
    width: 100%;
  }

}
/* =========================================================
   HOMEPAGE — CTA FINAL SPACING
   ========================================================= */

@media (min-width: 1101px) {
  .home-page .cta-section {
    padding-top: 58px;
    padding-bottom: 38px;
  }
}
/* =========================================================
   HOMEPAGE — MOBILE FINAL FIXES
   ========================================================= */

@media (max-width: 480px) {

  /* HERO EYEBROW */
  .home-page .hero .eyebrow {
    font-size: 9px;
    letter-spacing: 0.12em;
    line-height: 1.3;
  }

  /* TRUST STRIP — 2 x 2 */
  .home-page .trust-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-page .trust-grid article {
    width: 100%;
    min-width: 0;
  }

  .home-page .trust-grid article:nth-child(3) strong {
    font-size: 17px;
    letter-spacing: -0.3px;
  }

  /* =========================================
     SOLUTIONS
     ========================================= */

  #solutions .section-heading {
    width: 100%;
    max-width: 100%;
    padding-left: 8px;
    padding-right: 8px;
    box-sizing: border-box;
    overflow-wrap: break-word;
  }

  #solutions .section-heading h2 {
    width: 100%;
    max-width: 100%;
    font-size: 30px;
    line-height: 1.08;
    letter-spacing: -0.02em;
    overflow-wrap: break-word;
  }

  #solutions .section-heading p {
    width: 100%;
    max-width: 100%;
    line-height: 1.6;
    overflow-wrap: break-word;
  }

  #solutions .solution-grid {
    width: 100%;
    min-width: 0;
  }

  #solutions .solution-card {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }

  #solutions .responsive-solution-media {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    overflow: hidden;
  }

  #solutions .responsive-solution-image {
    display: block;
    width: 100%;
    max-width: 100%;
    height: auto;
    object-fit: contain;
  }

  #solutions .solution-card-body {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    padding: 24px 20px 26px;
    box-sizing: border-box;
  }

  #solutions .solution-card-body h3 {
    max-width: 100%;
    font-size: 20px;
    line-height: 1.18;
    margin-bottom: 12px;
    overflow-wrap: break-word;
  }

  #solutions .solution-card-body p {
    max-width: 100%;
    font-size: 15px;
    line-height: 1.55;
    margin-bottom: 18px;
    overflow-wrap: break-word;
  }

  #solutions .solution-card-body a {
    max-width: 100%;
    overflow-wrap: break-word;
  }

  /* =========================================
     GENERAL MOBILE OVERFLOW SAFETY
     ========================================= */

  .home-page main,
  .home-page section,
  .home-page .container {
    max-width: 100%;
  }

  .home-page h1,
  .home-page h2,
  .home-page h3,
  .home-page p {
    overflow-wrap: break-word;
    word-break: normal;
  }

  /* =========================================
     SENTORA INTELLIGENCE
     ========================================= */

  .section.intelligence {
    padding-top: 42px;
    padding-bottom: 42px;
  }

  .intelligence-grid {
    width: 100%;
    min-width: 0;
    gap: 24px;
  }

  .intelligence .eyebrow {
    margin-bottom: 6px;
  }

  .intelligence h2 {
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 12px;
    overflow-wrap: break-word;
  }

  .intelligence h2 + p {
    max-width: 100%;
    margin-top: 0;
    margin-bottom: 0;
    overflow-wrap: break-word;
  }

  .intelligence-panel {
    width: 100%;
    max-width: 100%;
    min-width: 0;
    margin-top: 0;
    padding: 20px;
    box-sizing: border-box;
  }

  .intelligence-panel textarea {
    width: 100%;
    max-width: 100%;
    min-height: 120px;
    height: 120px;
    box-sizing: border-box;
  }

  .intelligence-panel .button {
    width: 100%;
    max-width: 100%;
    margin-top: 14px;
  }

  .intelligence-panel > a {
    display: inline-block;
    max-width: 100%;
    margin-top: 14px;
    overflow-wrap: break-word;
  }

}
/* ==================================================
   SENTORA GLOBAL — FINAL BRAND HEADER v1
   ================================================== */

.site-header{
    background:#000D24;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.brand-final{
    display:flex;
    align-items:center;
    min-width:0;
}

.brand-logo-final{
    display:block;
    width:300px;
    height:auto;
}

/* Navigation */

.site-header .primary-nav a{
    color:rgba(255,255,255,.88);
}

.site-header .primary-nav a:hover,
.site-header .primary-nav a[aria-current="page"]{
    color:var(--gold);
}

/* Header CTA */

.site-header .header-cta{
    color:#fff;
    border-color:rgba(255,255,255,.45);
}

.site-header .header-cta:hover{
    color:var(--navy);
    background:#fff;
}

/* Scrolled header */

.site-header.scrolled{
    background:#000D24;
    box-shadow:0 8px 30px rgba(0,0,0,.16);
}

.site-header.scrolled .brand-logo-final{
    width:270px;
}

/* Smooth logo resize */

.brand-logo-final{
    transition:width .25s ease;
}

/* Tablet */

@media(max-width:1100px){

    .brand-logo-final{
        width:260px;
    }

    .site-header.scrolled .brand-logo-final{
        width:240px;
    }
}

/* Mobile */

@media(max-width:560px){

    .brand-logo-final{
        width:215px;
    }

    .site-header.scrolled .brand-logo-final{
        width:200px;
    }
}
/* =========================================================
   SENTORA GLOBAL — FINAL HEADER MASTER v2.0
   Desktop + Tablet + Mobile
   ========================================================= */

/* ---------- DESKTOP HEADER ---------- */

.site-header,
.site-header.scrolled{
    background:#000D24 !important;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.site-header.scrolled{
    box-shadow:0 8px 30px rgba(0,0,0,.16);
}

.header-inner,
.site-header.scrolled .header-inner{
    height:86px;
}


/* ---------- FINAL MASTER LOGO ---------- */

.brand-final{
    flex:0 0 auto;
    min-width:0;
    height:72px;
    display:flex;
    align-items:center;
    overflow:hidden;
}

.brand-logo-final,
.site-header.scrolled .brand-logo-final{
    display:block;
    width:230px;
    max-width:none;
    height:auto;
    transform:none;
}

/* ---------- DESKTOP NAVIGATION ---------- */

.site-header .primary-nav a{
    color:rgba(255,255,255,.88);
}

.site-header .primary-nav a:hover,
.site-header .primary-nav a[aria-current="page"]{
    color:var(--gold);
}


/* ---------- HEADER CTA ---------- */

.site-header .header-cta{
    color:#fff;
    border-color:rgba(255,255,255,.35);
}

.site-header .header-cta:hover{
    background:#fff;
    color:#000D24;
}


/* ---------- HAMBURGER COLOR ---------- */

.site-header .nav-toggle span{
    background:#fff;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:1100px){

    .brand-logo-final{
        width:225px;
    }

    .site-header.scrolled .brand-logo-final{
        width:210px;
    }
}


/* =========================================================
   MOBILE HEADER + NAVIGATION
   ========================================================= */

@media (max-width:768px){

    :root{
        --header:72px;
    }

    .header-inner,
    .site-header.scrolled .header-inner{
        height:72px;
    }

    /* LOGO */

    .brand-final{
        flex:0 0 auto;
        min-width:0;
        overflow:visible;
    }

   .brand-logo-final,
.site-header.scrolled .brand-logo-final{
    display:block;
    width:180px;
    height:auto;
    max-width:none;

    }
}

    /* DESKTOP CTA OFF */

    .header-cta{
        display:none !important;
    }


    /* HAMBURGER */

    .nav-toggle{
        display:flex !important;
        flex-direction:column;
        justify-content:center;
        align-items:center;
        gap:5px;

        width:42px;
        height:42px;

        margin-left:auto;
        padding:0;

        border:0;
        background:transparent;

        cursor:pointer;

        position:relative;
        z-index:102;
    }

    .site-header .nav-toggle span{
        display:block;

        width:24px;
        height:2px;

        margin:0;

        background:#fff;

        border-radius:2px;

        transition:
            transform .25s ease,
            opacity .20s ease;
    }


    /* HAMBURGER -> X */

    .nav-toggle[aria-expanded="true"] span:nth-child(1){
        transform:translateY(7px) rotate(45deg);
    }

    .nav-toggle[aria-expanded="true"] span:nth-child(2){
        opacity:0;
    }

    .nav-toggle[aria-expanded="true"] span:nth-child(3){
        transform:translateY(-7px) rotate(-45deg);
    }


    /* MOBILE NAV PANEL */

    .primary-nav{
        display:block;

        position:fixed;

        top:72px;
        left:0;
        right:0;

        margin:0;

        padding:18px 24px 24px;

        background:#000D24;

        border-top:1px solid rgba(255,255,255,.08);
        border-bottom:1px solid rgba(255,255,255,.12);

        box-shadow:0 18px 35px rgba(0,0,0,.22);

        transform:translateY(-130%);

        opacity:0;
        visibility:hidden;
        pointer-events:none;

        transition:
            transform .28s ease,
            opacity .22s ease,
            visibility .22s ease;

        z-index:99;
    }


    /* JS ADDS .open */

    .primary-nav.open{
        transform:translateY(0);

        opacity:1;
        visibility:visible;
        pointer-events:auto;
    }


    /* MOBILE MENU ITEMS */

    .primary-nav ul{
        display:block;

        margin:0;
        padding:0;
    }

    .primary-nav li{
        border-bottom:1px solid rgba(255,255,255,.10);
    }

    .site-header .primary-nav a{
        display:block;

        padding:14px 0;

        color:rgba(255,255,255,.88);

        font-size:11px;
    }


    /* REMOVE DESKTOP UNDERLINE */

    .site-header .primary-nav a::after{
        display:none;
    }


    /* ACTIVE PAGE */

    .site-header .primary-nav a[aria-current="page"]{
        color:var(--gold);
    }


    /* MOBILE CTA */

    .mobile-nav-cta{
        display:block !important;

        margin-top:18px;

        padding:14px 16px !important;

        background:var(--gold);

        color:#000D24 !important;

        text-align:center;

        border-radius:6px;
    }
}


/* =========================================================
   SMALL MOBILE
   ========================================================= */

@media (max-width:390px){

    .brand-logo-final,
    .site-header.scrolled .brand-logo-final{
        width:180px;
    }
}
/* =========================================================
   TABLET NAV OVERRIDE — 769px to 820px
   Cancels legacy mobile navigation rules
   ========================================================= */

@media (min-width:769px) and (max-width:820px){

    .nav-toggle{
        display:none !important;
    }

    .primary-nav{
        display:block;
        position:static;
        transform:none;
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        background:transparent;
        border:0;
        box-shadow:none;
        padding:0;
        margin-left:auto;
    }

    .primary-nav ul{
        display:flex;
        align-items:center;
        gap:14px;
    }

    .primary-nav li{
        border:0;
    }

    .site-header .primary-nav a{
        display:block;
        padding:0;
        font-size:9px;
    }

    .mobile-nav-cta{
        display:none !important;
    }

    .brand-logo-final,
    .site-header.scrolled .brand-logo-final{
        width:210px;
    }
}
/* =========================================================
   FOOTER LOGO — RESPONSIVE FINAL
   ========================================================= */

/* TABLET */
@media (min-width:769px) and (max-width:1024px){
    .footer-brand img{
        width:230px;
        max-width:100%;
        height:auto;
    }
}
/* =========================================================
   FOOTER — TABLET FINAL FIX
   ========================================================= */

@media (min-width:769px) and (max-width:1024px){

    .site-footer{
        height:auto;
        min-height:0;
        overflow:visible;
    }

    .footer-bottom{
        flex-wrap:wrap;
    }

}
/* MOBILE */
@media (max-width:768px){
    .footer-brand img{
        width:200px;
        max-width:100%;
        height:auto;
    }
}
/* =========================================================
   TABLET FLOATING BUTTONS — FINAL
   ========================================================= */

@media (min-width:769px) and (max-width:1024px){

    .whatsapp{
        position:fixed !important;
        right:20px !important;
        bottom:20px !important;
        width:46px !important;
        height:46px !important;
        z-index:9999 !important;
        transform:none;
    }

    .scroll-top{
        position:fixed !important;
        right:20px !important;
        bottom:76px !important;
        width:46px !important;
        height:46px !important;
        z-index:9998 !important;
    }

}
/* =========================================================
   MOBILE CONTAINER WIDTH — FINAL
   ========================================================= */

@media (max-width:560px){

    .container{
        width:min(calc(100% - 32px),var(--container));
        margin-left:auto;
        margin-right:auto;
    }

}