@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--navy:#123460;--navy2:#0b2748;--blue:#347A9F;--cyan:#4290A3;--gold:#c8ad7f;--ink:#142337;--muted:#667487;--paper:#f6f8fa;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);background:#fff}a{text-decoration:none;color:inherit}
.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:92px;padding:10px 5vw;display:flex;align-items:center;justify-content:space-between;transition:.35s;border-bottom:1px solid transparent}.site-header.scrolled{background:rgba(255,255,255,.94);backdrop-filter:blur(15px);box-shadow:0 8px 30px rgba(0,0,0,.06);height:78px}.brand{height:72px;width:135px;display:flex;align-items:center;overflow:hidden}.brand img{width:105px;transform:translateY(0)}.nav{display:flex;align-items:center;gap:30px;color:#fff;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.08em}.scrolled .nav{color:var(--navy)}.nav>a:not(.btn):after{content:"";display:block;height:1px;background:var(--cyan);transform:scaleX(0);transition:.25s}.nav>a:hover:after{transform:scaleX(1)}.menu-toggle{display:none}
.btn{display:inline-flex;align-items:center;gap:14px;background:var(--cyan);color:white!important;padding:16px 23px;border:0;font:inherit;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;transition:.25s;cursor:pointer}.btn:hover{background:var(--blue);transform:translateY(-2px)}.btn-small{padding:13px 18px}.btn-ghost{background:transparent;border:1px solid rgba(255,255,255,.45)}.btn-ghost:hover{background:white;color:var(--navy)!important}
.hero{min-height:100vh;background:linear-gradient(105deg,#071d38 0%,#123460 57%,#1d5579 100%);position:relative;overflow:hidden;color:#fff;display:flex;align-items:center;padding:130px 7vw 80px}.hero-inner{position:relative;z-index:3;max-width:900px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.22em;color:var(--blue);margin:0 0 20px}.eyebrow.light{color:#86c5d2}.hero h1,.section h2,.dark-section h2,.quality h2,.contact h2{font-size:clamp(42px,5.8vw,86px);line-height:.98;letter-spacing:-.055em;margin:0;font-weight:700}.hero h1 span,h2 span{font-weight:400}.hero-copy{font-size:18px;line-height:1.75;max-width:680px;color:#d9e4ee;margin:30px 0}.actions{display:flex;gap:12px;flex-wrap:wrap}.credibility{display:flex;align-items:center;gap:16px;margin-top:55px;text-transform:uppercase;font-size:10px;letter-spacing:.15em;color:#b8cad8}.credibility i{width:4px;height:4px;background:var(--gold);border-radius:50%}.blueprint{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:60px 60px;mask-image:linear-gradient(90deg,transparent,black)}.hero-architecture{position:absolute;right:0;bottom:0;width:42%;height:76%;opacity:.23;display:flex;align-items:flex-end;gap:18px;transform:skewY(-3deg)}.tower{border:1px solid #8ac3d5;background:linear-gradient(90deg,transparent 49%,rgba(255,255,255,.15) 50%,transparent 51%);background-size:24px 100%;box-shadow:inset 0 0 60px rgba(66,144,163,.2)}.t1{width:28%;height:65%}.t2{width:32%;height:100%;border-top:5px solid var(--gold)}.t3{width:25%;height:78%}.scroll-cue{position:absolute;bottom:25px;right:5vw;font-size:9px;letter-spacing:.2em;color:#b6c9d8}.scroll-cue span{font-size:18px;margin-left:10px}
.section{padding:120px 7vw}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:9vw;align-items:start}.section h2{font-size:clamp(40px,4.5vw,66px);color:var(--navy)}.copy{font-size:16px;line-height:1.85;color:var(--muted)}.copy p:first-child{margin-top:0}.text-link,.service-card a{display:inline-block;margin-top:18px;text-transform:uppercase;font-size:11px;letter-spacing:.14em;font-weight:800;color:var(--blue)}
.services{background:var(--paper)}.section-head{margin-bottom:60px}.service-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:#dfe5ea}.service-card{background:white;padding:50px;min-height:430px;position:relative;transition:.35s}.service-card:hover{transform:translateY(-5px);box-shadow:0 20px 50px rgba(18,52,96,.1);z-index:2}.service-card .num{color:var(--gold);font-size:12px;font-weight:800;letter-spacing:.15em}.service-card h3{font-size:27px;color:var(--navy);margin:50px 0 15px}.service-card p,.service-card li{color:var(--muted);line-height:1.7;font-size:14px}.service-card ul{padding-left:18px;columns:2}
.dark-section{background:var(--navy2);color:#fff;padding:120px 7vw;position:relative}.dark-section h2{font-size:clamp(40px,4.5vw,66px)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(255,255,255,.15);border-left:1px solid rgba(255,255,255,.15)}.why{padding:38px;border-right:1px solid rgba(255,255,255,.15);border-bottom:1px solid rgba(255,255,255,.15);min-height:230px}.why b{color:var(--gold);font-size:11px}.why h3{font-size:19px;margin-top:35px}.why p{color:#aebdca;line-height:1.7;font-size:13px}
.sector-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.sector{height:260px;padding:28px;display:flex;flex-direction:column;justify-content:space-between;background:linear-gradient(135deg,var(--navy),var(--blue));color:white;position:relative;overflow:hidden;transition:.3s}.sector:nth-child(even){background:linear-gradient(135deg,#2f6e91,#173f69)}.sector:after{content:"";position:absolute;width:180px;height:180px;border:1px solid rgba(255,255,255,.17);right:-40px;bottom:-60px;transform:rotate(45deg)}.sector:hover{transform:translateY(-5px)}.sector span{color:#c7dbe6;font-size:11px}.sector h3{font-size:22px;max-width:220px}
.projects{background:#fff}.project-grid{display:grid;grid-template-columns:1.4fr .8fr;grid-template-rows:280px 280px;gap:16px;margin-top:60px}.project{position:relative;overflow:hidden;padding:32px;color:#fff;display:flex;align-items:flex-end;background:linear-gradient(145deg,#173c65,#347A9F)}.project:before{content:"";position:absolute;inset:0;background-image:linear-gradient(45deg,transparent 47%,rgba(255,255,255,.08) 48%,transparent 49%);background-size:36px 36px;transition:.4s}.project:hover:before{transform:scale(1.08)}.project>div{position:relative}.project h3{font-size:25px;margin:8px 0}.project p,.project small{color:#d6e4ed}.p1{grid-row:1/3;background:linear-gradient(145deg,#0d294c,#2c7197)}.p2{background:linear-gradient(145deg,#2b6284,#173b61)}.p3{background:linear-gradient(145deg,#15385d,#438fa2)}
.quality{padding:140px 7vw;background:linear-gradient(100deg,rgba(8,31,57,.97),rgba(18,52,96,.86)),linear-gradient(135deg,#123460,#4290A3);color:white}.quality-inner{max-width:760px}.quality h2{font-size:clamp(46px,6vw,82px)}.quality p:last-child{max-width:650px;color:#c9d7e2;line-height:1.8;margin-top:30px}
.timeline{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #cad4dc}.step{padding:30px 24px 10px 0;position:relative}.step:before{content:"";width:9px;height:9px;border-radius:50%;background:var(--cyan);position:absolute;top:-5px;left:0}.step b{color:var(--gold);font-size:11px}.step h3{color:var(--navy);font-size:17px;margin-top:28px}.step p{font-size:13px;color:var(--muted);line-height:1.6}
.contact{padding:120px 7vw;background:var(--navy);color:white;display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw}.contact h2{font-size:clamp(46px,5vw,72px)}.contact-copy>p:last-child{color:#bfd0dc;line-height:1.8;max-width:500px}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;padding:18px;border:1px solid rgba(255,255,255,.2);background:rgba(255,255,255,.06);color:white;font:inherit;outline:none}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#b8c7d2}.contact-form select{color:#d5e0e7}.contact-form select option{color:#222}.contact-form textarea{grid-column:1/3;min-height:140px}.contact-form button{justify-self:start}
footer{padding:70px 7vw 30px;background:#071d38;color:#9eb2c1;display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:40px;position:relative}footer h4{color:white;text-transform:uppercase;font-size:11px;letter-spacing:.15em}footer a,footer p{display:block;font-size:13px;margin:11px 0}.footer-brand img{width:125px;filter:brightness(1.15)}.footer-brand p{font-size:17px;line-height:1.6;color:#d2dee6}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:24px;margin-top:30px;font-size:11px}
.reveal{opacity:0;transform:translateY(28px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.site-header{height:76px}.brand{height:60px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;color:var(--navy)!important;padding:25px 7vw;flex-direction:column;align-items:flex-start}.nav.open{display:flex}.menu-toggle{display:block;background:none;border:0;color:white;font-size:25px}.scrolled .menu-toggle{color:var(--navy)}.hero{padding-left:6vw;padding-right:6vw}.hero-architecture{width:65%;opacity:.12}.credibility{flex-wrap:wrap}.two-col,.contact{grid-template-columns:1fr;gap:45px}.service-grid,.sector-grid,.why-grid{grid-template-columns:1fr}.project-grid{display:block}.project{min-height:300px;margin-bottom:14px}.timeline{grid-template-columns:1fr;border-top:0;border-left:1px solid #cad4dc}.step{padding:10px 0 28px 28px}.step:before{top:14px;left:-5px}.contact-form{grid-template-columns:1fr}.contact-form textarea{grid-column:auto}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.section,.dark-section{padding:85px 6vw}}@media(max-width:560px){.hero h1{font-size:43px}.hero-copy{font-size:15px}.section h2,.dark-section h2{font-size:39px}.service-card{padding:34px}.service-card ul{columns:1}.sector-grid{grid-template-columns:1fr}.actions .btn{width:100%;justify-content:center}.credibility i{display:none}.credibility{gap:10px;flex-direction:column;align-items:flex-start}footer{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}.reveal{opacity:1;transform:none;transition:none!important}}

.project-grid-expanded{grid-template-columns:repeat(3,1fr);grid-template-rows:none}
.project-grid-expanded .project{min-height:260px}
.project-grid-expanded .p1{grid-row:auto}
.hospitality-feature{margin-top:18px;background:linear-gradient(120deg,#0b2748,#347A9F);padding:45px 50px;color:#fff;display:flex;justify-content:space-between;align-items:center;gap:40px}
.hospitality-feature h3{font-size:32px;margin:8px 0 12px}
.hospitality-feature p{color:#d2e0e8;line-height:1.7;max-width:760px}
.hospitality-stat{min-width:150px;text-align:center;border-left:1px solid rgba(255,255,255,.2);padding-left:35px}
.hospitality-stat strong{display:block;font-size:52px;line-height:1;color:var(--gold)}
.hospitality-stat span{font-size:11px;letter-spacing:.18em}
.experience{background:#f7f9fb}
.client-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#dbe3e9;margin-top:55px}
.client-card{background:white;padding:28px 30px;color:var(--navy);font-weight:700;min-height:100px;display:flex;flex-direction:column;justify-content:center}
.client-card span{font-size:11px;color:var(--muted);font-weight:500;margin-top:6px;text-transform:uppercase;letter-spacing:.1em}
.contact-right{display:flex;flex-direction:column;gap:25px}
.contact-details{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.contact-details a,.contact-details div{padding:18px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.05)}
.contact-details span{display:block;font-size:10px;letter-spacing:.15em;color:#8fb8ca;margin-bottom:7px}
.contact-details strong{font-size:13px;line-height:1.6;color:#fff}
.contact-details div:last-child{grid-column:1/3}
@media(max-width:900px){
  .project-grid-expanded{display:grid;grid-template-columns:1fr 1fr}
  .client-grid{grid-template-columns:1fr 1fr}
  .hospitality-feature{align-items:flex-start;flex-direction:column}
  .hospitality-stat{border-left:0;border-top:1px solid rgba(255,255,255,.2);padding:20px 0 0;text-align:left}
}
@media(max-width:560px){
  .project-grid-expanded,.client-grid{grid-template-columns:1fr}
  .contact-details{grid-template-columns:1fr}
  .contact-details div:last-child{grid-column:auto}
  .hospitality-feature{padding:32px 28px}
}

.featured-projects{display:grid;grid-template-columns:repeat(3,1fr);grid-auto-rows:320px;gap:16px;margin-top:60px}
.image-project{background-size:cover;background-position:center;position:relative;display:flex;align-items:flex-end;padding:28px;color:white;overflow:hidden;min-height:320px}
.image-project-large{grid-column:span 2;grid-row:span 2}
.image-project:after{content:"";position:absolute;inset:0;border:1px solid rgba(255,255,255,.12);transition:.35s}
.image-project:hover:after{inset:10px}
.image-project>div{position:relative;z-index:2;transform:translateY(4px);transition:.35s}
.image-project:hover>div{transform:translateY(-4px)}
.image-project small,.brand-project small{font-size:10px;letter-spacing:.14em;color:#c8dae5}
.image-project h3{font-size:24px;margin:8px 0 6px}
.image-project p{margin:0;color:#d7e3eb;font-size:13px}
.case-study{margin-top:70px;background:#0b2748;color:white;padding:45px;display:grid;grid-template-columns:.8fr 1.2fr;gap:35px}
.case-study-copy h3{font-size:42px;margin:8px 0 18px}
.case-study-copy p{color:#c8d7e1;line-height:1.8}
.case-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:28px}
.case-meta span{font-size:9px;letter-spacing:.13em;border:1px solid rgba(255,255,255,.2);padding:9px 12px}
.case-gallery{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.case-gallery img{width:100%;height:250px;object-fit:cover}
.hospitality-image-feature{margin-top:70px}
.brand-project-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:16px}
.brand-project{background:#071d38;color:white;overflow:hidden}
.brand-project img{width:100%;height:240px;object-fit:cover;display:block;transition:.4s}
.brand-project:hover img{transform:scale(1.04)}
.brand-project div{padding:20px}
.brand-project h3{font-size:20px;margin:5px 0}
@media(max-width:900px){.featured-projects{grid-template-columns:1fr 1fr}.image-project-large{grid-column:span 2;grid-row:span 1}.case-study{grid-template-columns:1fr}.brand-project-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.featured-projects{grid-template-columns:1fr;grid-auto-rows:300px}.image-project-large{grid-column:auto}.case-study{padding:28px}.case-gallery{grid-template-columns:1fr}.case-gallery img{height:220px}.brand-project-grid{grid-template-columns:1fr}}

/* ===== FINAL BRAND / HEADER UPDATES ===== */
.site-header{
  background:rgba(255,255,255,.97);
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(18,52,96,.08);
  box-shadow:0 6px 24px rgba(10,35,66,.05);
  height:96px;
}
.site-header.scrolled{
  background:rgba(255,255,255,.97);
  height:82px;
}
.nav{color:var(--navy)!important}
.menu-toggle{color:var(--navy)!important}
.brand{
  height:82px;
  width:185px;
  overflow:visible;
}
.brand img{
  width:150px;
  max-height:78px;
  object-fit:contain;
  transform:none;
}
.site-header.scrolled .brand img{width:142px}
.hero{padding-top:150px}

/* ===== ENVIRONMENT IMAGE CARDS ===== */
.image-sector-grid{
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.sector-photo{
  min-height:320px;
  height:320px;
  background-size:cover!important;
  background-position:center!important;
  position:relative;
  isolation:isolate;
  transition:transform .4s ease, box-shadow .4s ease;
}
.sector-photo::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(8,30,57,.04) 15%,rgba(8,30,57,.18) 50%,rgba(8,30,57,.84) 100%);
  z-index:-1;
  transition:background .4s ease;
}
.sector-photo::after{
  content:"";
  position:absolute;
  inset:14px;
  border:1px solid rgba(255,255,255,.14);
  opacity:0;
  transition:opacity .35s ease,inset .35s ease;
}
.sector-photo:hover{
  transform:translateY(-7px);
  box-shadow:0 22px 55px rgba(18,52,96,.18);
}
.sector-photo:hover::before{
  background:linear-gradient(180deg,rgba(8,30,57,.10) 15%,rgba(8,30,57,.24) 52%,rgba(8,30,57,.90) 100%);
}
.sector-photo:hover::after{
  opacity:1;
  inset:10px;
}
.sector-photo span{
  position:relative;
  z-index:2;
  color:#d8e8ef;
}
.sector-photo h3{
  position:relative;
  z-index:2;
  color:#fff;
  font-size:25px;
  line-height:1.15;
  text-shadow:0 2px 12px rgba(0,0,0,.2);
}
@media(max-width:900px){
  .site-header{height:82px}
  .brand{height:68px;width:155px}
  .brand img{width:125px;max-height:64px}
  .nav{top:82px}
  .image-sector-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .brand{width:140px}
  .brand img{width:118px}
  .image-sector-grid{grid-template-columns:1fr}
  .sector-photo{height:290px;min-height:290px}
  .hero{padding-top:130px}
}

/* ===== REFINEMENT: BIGGER/CLEARER LOGO ===== */
.site-header{
  height:112px;
  padding-top:8px;
  padding-bottom:8px;
}
.site-header.scrolled{
  height:94px;
}
.brand{
  width:235px;
  height:98px;
  display:flex;
  align-items:center;
}
.brand img{
  width:205px !important;
  max-height:92px !important;
  object-fit:contain;
  filter:none;
}
.site-header.scrolled .brand img{
  width:190px !important;
  max-height:82px !important;
}
.hero{
  padding-top:170px;
}

/* ===== REFINEMENT: LIGHTER ENVIRONMENT IMAGE OVERLAYS ===== */
.sector-photo::before{
  background:linear-gradient(180deg,rgba(8,30,57,.00) 0%,rgba(8,30,57,.08) 48%,rgba(8,30,57,.58) 100%) !important;
}
.sector-photo:hover::before{
  background:linear-gradient(180deg,rgba(8,30,57,.00) 0%,rgba(8,30,57,.10) 48%,rgba(8,30,57,.66) 100%) !important;
}

/* ===== REFINEMENT: PREMIUM PROJECT LAYOUT ===== */
.featured-projects{
  grid-template-columns:repeat(12,1fr) !important;
  grid-auto-rows:260px !important;
  gap:18px !important;
}
.featured-projects .image-project{
  min-height:260px !important;
}
.featured-projects .image-project:nth-child(1){
  grid-column:span 7;
  grid-row:span 2;
}
.featured-projects .image-project:nth-child(2){
  grid-column:span 5;
}
.featured-projects .image-project:nth-child(3){
  grid-column:span 5;
}
.featured-projects .image-project:nth-child(4){
  grid-column:span 4;
}
.featured-projects .image-project:nth-child(5){
  grid-column:span 4;
}
.featured-projects .image-project:nth-child(6){
  grid-column:span 4;
}
.featured-projects .image-project:nth-child(7){
  grid-column:span 6;
}
.featured-projects .image-project:nth-child(8){
  grid-column:span 6;
}

/* lighter overlay so the project image remains crisp */
.image-project{
  background-blend-mode:normal !important;
}
.image-project::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,rgba(7,29,56,0) 0%,rgba(7,29,56,.05) 52%,rgba(7,29,56,.58) 100%);
  z-index:1;
  pointer-events:none;
}
.image-project>div{
  z-index:3 !important;
}
.image-project:after{
  z-index:2;
}

/* make Sustainable City gallery photos cleaner and brighter */
.case-gallery img{
  filter:none !important;
}
.case-study{
  background:#0c2c50;
}
.case-study-copy{
  align-self:center;
}

/* lighter F&B image presentation */
.brand-project img{
  filter:none !important;
}

/* Better mobile/tablet balance */
@media(max-width:1100px){
  .featured-projects{
    grid-template-columns:repeat(2,1fr) !important;
    grid-auto-rows:300px !important;
  }
  .featured-projects .image-project{
    grid-column:auto !important;
    grid-row:auto !important;
  }
}
@media(max-width:900px){
  .site-header{height:94px}
  .brand{width:190px;height:80px}
  .brand img{width:165px !important;max-height:74px !important}
  .nav{top:94px}
  .hero{padding-top:150px}
}
@media(max-width:560px){
  .brand{width:165px}
  .brand img{width:145px !important;max-height:68px !important}
  .featured-projects{grid-template-columns:1fr !important}
}

/* =========================================================
   CLEAN VISUAL FIX - LARGE LOGO / CLEAR ENVIRONMENT IMAGES
   ========================================================= */

/* Header stays white, but logo is now genuinely large because
   the source image itself has been tightly cropped. */
.site-header{
  height:118px !important;
  padding:8px 5vw !important;
  background:#ffffff !important;
  border-bottom:1px solid rgba(18,52,96,.08) !important;
}
.site-header.scrolled{
  height:102px !important;
  background:#ffffff !important;
}
.brand{
  width:230px !important;
  height:104px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  overflow:visible !important;
}
.brand img{
  width:190px !important;
  height:auto !important;
  max-height:100px !important;
  object-fit:contain !important;
  transform:none !important;
  filter:none !important;
}
.site-header.scrolled .brand img{
  width:176px !important;
  max-height:88px !important;
}
.nav{
  color:var(--navy) !important;
}
.hero{
  padding-top:178px !important;
}

/* ENVIRONMENT CARDS: show the actual photographs clearly.
   No blue gradient. No decorative diamond/pattern overlay. */
.sector-photo{
  background-size:cover !important;
  background-position:center !important;
  background-repeat:no-repeat !important;
  position:relative !important;
  overflow:hidden !important;
  isolation:auto !important;
}

/* kill ALL previous overlays/patterns */
.sector-photo::before,
.sector-photo::after{
  display:none !important;
  content:none !important;
}

/* number chip */
.sector-photo > span{
  position:absolute !important;
  top:20px !important;
  left:22px !important;
  z-index:3 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:34px !important;
  height:28px !important;
  padding:0 9px !important;
  background:rgba(255,255,255,.92) !important;
  color:var(--navy) !important;
  font-size:10px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
}

/* title gets a compact translucent label only,
   rather than tinting the entire image */
.sector-photo > h3{
  position:absolute !important;
  left:22px !important;
  bottom:22px !important;
  z-index:3 !important;
  margin:0 !important;
  width:auto !important;
  max-width:82% !important;
  padding:12px 15px !important;
  background:rgba(8,30,57,.84) !important;
  color:#fff !important;
  font-size:24px !important;
  line-height:1.15 !important;
  text-shadow:none !important;
}

/* cleaner hover: only zoom the image card slightly, no tint */
.sector-photo{
  transition:transform .35s ease, box-shadow .35s ease !important;
}
.sector-photo:hover{
  transform:translateY(-5px) !important;
  box-shadow:0 18px 44px rgba(18,52,96,.16) !important;
}

/* Project cards: remove the excessive blue wash here too.
   Keep only a very light bottom readability shade. */
.image-project::before{
  background:linear-gradient(
    180deg,
    rgba(7,29,56,0) 0%,
    rgba(7,29,56,0) 68%,
    rgba(7,29,56,.32) 100%
  ) !important;
}
.image-project:after{
  display:none !important;
}
.image-project > div{
  background:rgba(8,30,57,.78);
  padding:14px 16px;
  max-width:88%;
}

/* prevent any leftover decorative pattern from old .sector */
.sector-photo{
  box-shadow:none;
}
.sector-photo h3::before,
.sector-photo h3::after{
  display:none !important;
}

@media(max-width:900px){
  .site-header{height:100px !important}
  .brand{width:195px !important;height:88px !important}
  .brand img{width:165px !important;max-height:82px !important}
  .nav{top:100px !important}
  .hero{padding-top:155px !important}
}
@media(max-width:560px){
  .site-header{height:92px !important}
  .brand{width:170px !important;height:78px !important}
  .brand img{width:148px !important;max-height:74px !important}
  .hero{padding-top:145px !important}
  .sector-photo > h3{font-size:21px !important}
}

/* ===== GOLD ACCENT, USED SPARINGLY ===== */
:root{--gold:#c7a56a}
.eyebrow::before{
  content:"";
  display:inline-block;
  width:28px;
  height:1px;
  background:var(--gold);
  vertical-align:middle;
  margin-right:10px;
}
.btn b,.text-link,.service-card a{color:inherit}
.service-card .num,.why b,.step b,.hospitality-stat strong{color:var(--gold)!important}
.site-header .btn{
  position:relative;
}
.site-header .btn::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-5px;
  height:2px;
  background:var(--gold);
  transform:scaleX(.28);
  transform-origin:left;
  transition:transform .3s ease;
}
.site-header .btn:hover::after{transform:scaleX(1)}
.quality{border-top:3px solid var(--gold)}
.case-meta span{border-color:rgba(199,165,106,.5)!important}
.case-meta span:first-child{color:var(--gold)}

/* ===== PROJECT HOVER: TITLE SLIDES IN ===== */
.image-project{cursor:pointer;overflow:hidden}
.image-project>div{
  transform:translateY(24px) !important;
  opacity:0 !important;
  transition:transform .45s cubic-bezier(.2,.8,.2,1),opacity .35s ease !important;
}
.image-project:hover>div{
  transform:translateY(0) !important;
  opacity:1 !important;
}
.image-project::before{
  transition:background .35s ease !important;
}
.image-project:hover::before{
  background:linear-gradient(180deg,rgba(7,29,56,0) 0%,rgba(7,29,56,0) 55%,rgba(7,29,56,.38) 100%) !important;
}
.image-project:hover{
  transform:translateY(-4px) scale(1.004);
  box-shadow:0 18px 45px rgba(18,52,96,.14);
}

/* F&B cards */
.brand-project{cursor:pointer;position:relative}
.brand-project div{
  transform:translateY(16px);
  opacity:.82;
  transition:.35s ease;
}
.brand-project:hover div{
  transform:translateY(0);
  opacity:1;
}
.brand-project:hover img{transform:scale(1.035)}

/* Interior case-gallery hover */
.case-gallery img{
  cursor:pointer;
  transition:transform .35s ease,box-shadow .35s ease;
}
.case-gallery img:hover{
  transform:scale(1.018);
  box-shadow:0 14px 34px rgba(0,0,0,.15);
}

/* ===== LIGHTBOX ===== */
.lightbox{
  position:fixed;
  inset:0;
  background:rgba(3,12,24,.92);
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  opacity:0;
  pointer-events:none;
  transition:opacity .28s ease;
  backdrop-filter:blur(10px);
}
.lightbox.open{
  opacity:1;
  pointer-events:auto;
}
.lightbox-stage{
  position:relative;
  width:min(88vw,1500px);
  height:min(82vh,920px);
  display:flex;
  align-items:center;
  justify-content:center;
  flex-direction:column;
}
.lightbox-stage img{
  max-width:100%;
  max-height:calc(100% - 58px);
  object-fit:contain;
  box-shadow:0 24px 70px rgba(0,0,0,.45);
  transform:scale(.965);
  opacity:0;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),opacity .28s ease;
}
.lightbox.open .lightbox-stage img{
  transform:scale(1);
  opacity:1;
}
.lightbox-caption{
  color:#fff;
  margin-top:16px;
  font-size:14px;
  letter-spacing:.06em;
}
.lightbox-close{
  position:absolute;
  top:26px;
  right:30px;
  width:46px;
  height:46px;
  border:1px solid rgba(255,255,255,.35);
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:30px;
  line-height:1;
  cursor:pointer;
  z-index:2;
}
.lightbox-nav{
  position:absolute;
  top:50%;
  transform:translateY(-50%);
  width:48px;
  height:64px;
  border:0;
  background:rgba(255,255,255,.08);
  color:#fff;
  font-size:42px;
  cursor:pointer;
  z-index:2;
  transition:.25s;
}
.lightbox-nav:hover,.lightbox-close:hover{background:rgba(255,255,255,.16)}
.lightbox-prev{left:24px}
.lightbox-next{right:24px}

/* ===== SMOOTHER GLOBAL MOTION ===== */
.reveal{
  transition:opacity .85s cubic-bezier(.2,.8,.2,1),transform .85s cubic-bezier(.2,.8,.2,1)!important;
}
.service-card,.sector-photo,.client-card,.why,.step{
  transition:transform .35s ease,box-shadow .35s ease,background-color .35s ease;
}
.client-card:hover,.why:hover,.step:hover{
  transform:translateY(-4px);
}
.nav>a:not(.btn){
  transition:color .25s ease;
}
.nav>a:not(.btn):hover{color:var(--blue)}
.btn{transition:transform .25s ease,background .25s ease,box-shadow .25s ease}
.btn:hover{box-shadow:0 10px 24px rgba(18,52,96,.14)}

@media(max-width:700px){
  .image-project>div{opacity:1!important;transform:none!important}
  .lightbox-nav{display:none}
  .lightbox-stage{width:94vw;height:82vh}
  .lightbox-close{top:14px;right:14px}
}
