
:root{--navy:#082443;--navy2:#0c3159;--gold:#f2b51d;--ink:#16202c;--muted:#66717c;--paper:#f5f3ed;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,Arial,sans-serif;color:var(--ink);line-height:1.65;background:#fff}
.container{width:min(1180px,calc(100% - 40px));margin:auto}.site-header{position:fixed;inset:0 0 auto;z-index:50;background:rgba(8,36,67,.95);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-wrap{height:88px;display:flex;align-items:center;justify-content:space-between}.brand img{height:70px;width:auto}.site-nav{display:flex;align-items:center;gap:26px}.site-nav a{color:#fff;text-decoration:none;font-size:14px;font-weight:700}
.nav-cta{border:1px solid var(--gold);padding:10px 15px}.menu-toggle{display:none;background:none;border:0}.menu-toggle span{display:block;width:26px;height:2px;background:#fff;margin:5px}
.hero{min-height:820px;display:flex;align-items:center;position:relative;background:url('assets/images/living-room-1.jpg') center/cover no-repeat;color:#fff}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,24,43,.96) 0%,rgba(5,24,43,.82) 48%,rgba(5,24,43,.28) 100%)}
.hero-content{position:relative;z-index:2;padding-top:90px}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:12px;font-weight:800;color:var(--gold);margin:0 0 16px}.eyebrow.dark{color:#9c6a00}
.hero h1,.section h2{font-family:"Playfair Display",serif}.hero h1{font-size:clamp(52px,7vw,88px);line-height:1;margin:0 0 25px;max-width:900px}.hero h1 span{color:var(--gold)}
.hero p{max-width:680px;font-size:19px;color:rgba(255,255,255,.8)}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:30px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 22px;text-decoration:none;border:1px solid transparent;font-weight:800;cursor:pointer}
.btn-gold{background:var(--gold);color:var(--navy)}.btn-outline{border-color:rgba(255,255,255,.6);color:#fff}.section{padding:105px 0}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.section h2{font-size:clamp(38px,5vw,58px);line-height:1.1;color:var(--navy);margin:0 0 20px}
.about-copy p{color:var(--muted)}.lead{font-size:22px!important;font-weight:700;color:var(--navy)!important}.checks{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:28px}.checks span{font-weight:700;color:var(--navy)}
.services{background:var(--paper)}.center{text-align:center;max-width:760px;margin:0 auto 45px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-grid article{background:#fff;border:1px solid #e6e1d6;padding:32px;min-height:230px}.service-grid h3{color:var(--navy);font-size:21px;margin-top:0}.service-grid p{color:var(--muted)}
.projects{background:var(--navy);color:#fff}.projects h2{color:#fff}.projects .section-heading>p:last-child{color:rgba(255,255,255,.65);max-width:850px}.project-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:40px}
.project-card{position:relative;min-height:420px;overflow:hidden;background:#061a30}.project-card.wide{grid-column:span 2}.project-card img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;transition:transform .45s ease}.project-card:hover img{transform:scale(1.04)}
.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 35%,rgba(4,18,33,.92) 100%)}.project-info{position:absolute;z-index:2;left:28px;right:28px;bottom:25px}.project-info span{color:var(--gold);text-transform:uppercase;letter-spacing:.17em;font-size:11px;font-weight:800}.project-info h3{font-size:28px;margin:7px 0}.project-info p{margin:0;color:rgba(255,255,255,.7)}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}.process-grid div{border-top:2px solid #d8dee5;padding-top:20px}.process-grid span{font-family:"Playfair Display",serif;color:var(--gold);font-size:42px}.process-grid h3{color:var(--navy)}.process-grid p{color:var(--muted);font-size:14px}
.contact{background:#f7f7f4}.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px}.contact-details{display:grid;gap:10px;margin-top:30px}.contact-details a{font-size:22px;font-weight:800;color:var(--navy);text-decoration:none}
form{background:#fff;border:1px solid #dce2e8;padding:34px;box-shadow:0 18px 45px rgba(8,36,67,.08)}form label{display:grid;gap:7px;font-size:13px;font-weight:800;color:var(--navy);margin-bottom:15px}
input,select,textarea{width:100%;padding:13px 14px;border:1px solid #cad3dc;font:inherit}footer{background:#05182c;color:#fff;padding:28px 0}
@media(max-width:900px){.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:88px;left:0;right:0;background:var(--navy);padding:24px;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.split,.contact-grid{grid-template-columns:1fr;gap:42px}.service-grid{grid-template-columns:1fr 1fr}.process-grid{grid-template-columns:1fr 1fr}.project-card.wide{grid-column:span 1}}
@media(max-width:600px){.container{width:min(100% - 28px,1180px)}.brand img{height:58px}.nav-wrap{height:76px}.site-nav{top:76px}.hero{min-height:720px}.hero h1{font-size:49px}.hero p{font-size:16px}.section{padding:76px 0}.service-grid,.process-grid,.project-grid,.checks{grid-template-columns:1fr}.project-card{min-height:330px}}

.contact-details{gap:18px}
.contact-item{display:grid;gap:3px;padding-bottom:15px;border-bottom:1px solid #d9e0e7}
.contact-item strong{font-size:12px;text-transform:uppercase;letter-spacing:.14em;color:#9c6a00}
.contact-item a{font-size:21px;font-weight:800;color:var(--navy);text-decoration:none}
.contact-item span{color:var(--muted)}
.office-map{width:min(1180px,calc(100% - 40px));margin:55px auto 0}
.office-map iframe{width:100%;height:380px;border:0;display:block}
.footer-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:45px;align-items:start}
.footer-grid img{height:78px;width:auto}
.footer-grid strong,.footer-grid a,.footer-grid span{display:block}
.footer-grid strong{color:var(--gold);margin-bottom:10px}
.footer-grid a,.footer-grid span,.footer-grid p{font-size:13px;color:rgba(255,255,255,.67);text-decoration:none;margin:4px 0}
.footer-bottom{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:18px;display:flex;justify-content:space-between;align-items:center}
.floating-call{display:none;position:fixed;right:18px;bottom:18px;z-index:80;background:var(--gold);color:var(--navy);padding:14px 18px;font-weight:800;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.25)}
@media(max-width:900px){
  .footer-grid{grid-template-columns:1fr 1fr}
  .footer-branding{grid-column:1/-1}
}
@media(max-width:600px){
  .footer-grid{grid-template-columns:1fr}
  .footer-branding,.footer-bottom{grid-column:1}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:8px}
  .floating-call{display:block}
  .office-map{width:min(100% - 28px,1180px)}
  .office-map iframe{height:300px}
}

/* Version 6 header branding */
.site-header{
  background:rgba(5,25,47,.97);
  box-shadow:0 8px 28px rgba(0,0,0,.12);
}
.nav-wrap{height:86px}
.brand{
  display:flex;
  align-items:center;
  max-width:310px;
  overflow:visible;
}
.brand img{
  width:auto;
  height:58px;
  max-width:300px;
  object-fit:contain;
  display:block;
}
.site-nav{gap:24px}
.site-nav a{letter-spacing:.01em}
.nav-cta{
  background:var(--gold);
  color:var(--navy)!important;
  border-color:var(--gold);
}
.nav-cta:hover{background:#ffd15b}
.footer-branding img{
  height:150px;
  width:auto;
  max-width:300px;
  object-fit:contain;
}
@media(max-width:900px){
  .brand img{height:52px;max-width:255px}
}
@media(max-width:600px){
  .nav-wrap{height:72px}
  .brand{max-width:220px}
  .brand img{height:44px;max-width:210px}
  .site-nav{top:72px}
  .footer-branding img{height:120px}
}

/* Version 7 header, hero, gallery and mobile refinements */
.site-header{background:rgba(5,25,47,.98)}
.nav-wrap{height:92px}
.brand{display:flex;align-items:center;gap:13px;max-width:none;text-decoration:none;color:#fff}
.brand-icon{width:48px!important;height:48px!important;object-fit:contain;flex:0 0 auto}
.brand-text{display:flex;flex-direction:column;line-height:1.05}
.brand-text strong{font-size:20px;letter-spacing:.02em}
.brand-text small{font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:rgba(255,255,255,.65);margin-top:6px}
.site-nav{gap:30px}
.site-nav a{font-size:14px}
.nav-cta{padding:12px 18px;border-radius:2px}

.hero-kitchen{
  background-image:url('assets/images/kitchen-1.jpg');
  background-position:center;
}
.hero-kitchen .hero-shade{
  background:linear-gradient(90deg,rgba(4,22,41,.96) 0%,rgba(4,22,41,.84) 48%,rgba(4,22,41,.22) 100%);
}

.trust-strip{background:#fff;border-bottom:1px solid #e3e7eb}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}
.trust-grid div{padding:28px 25px;border-right:1px solid #e3e7eb}
.trust-grid div:first-child{border-left:1px solid #e3e7eb}
.trust-grid strong,.trust-grid span{display:block}
.trust-grid strong{color:var(--navy);font-size:15px}
.trust-grid span{color:var(--muted);font-size:12px;margin-top:4px}

.project-card{cursor:pointer}
.project-card:before{content:"View";position:absolute;top:18px;right:18px;z-index:3;background:rgba(5,25,47,.82);color:#fff;padding:7px 12px;font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;opacity:0;transform:translateY(-6px);transition:.25s}
.project-card:hover:before{opacity:1;transform:none}

.lightbox{position:fixed;inset:0;z-index:200;background:rgba(1,10,18,.95);display:none;align-items:center;justify-content:center;flex-direction:column;padding:40px}
.lightbox.open{display:flex}
.lightbox img{max-width:min(1100px,92vw);max-height:78vh;object-fit:contain;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.lightbox p{color:#fff;margin-top:18px;font-weight:700}
.lightbox-close{position:absolute;top:18px;right:24px;background:none;border:0;color:#fff;font-size:44px;cursor:pointer}

.service-area{background:linear-gradient(135deg,#f7f4ed,#fff)}
.service-area-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:70px;align-items:center}
.area-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.area-list span{background:#fff;border:1px solid #dfe4e9;padding:14px 16px;font-weight:700;color:var(--navy)}

.floating-actions{position:fixed;right:18px;bottom:18px;z-index:90;display:flex;gap:10px;align-items:center}
.floating-call,.floating-quote{position:static;display:inline-flex;padding:14px 18px;font-weight:800;text-decoration:none;box-shadow:0 10px 30px rgba(0,0,0,.24)}
.floating-call{background:var(--gold);color:var(--navy)}
.floating-quote{background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.25)}

@media(max-width:900px){
  .nav-wrap{height:82px}
  .brand-icon{width:44px!important;height:44px!important}
  .brand-text strong{font-size:18px}
  .site-nav{top:82px}
  .trust-grid{grid-template-columns:1fr 1fr}
  .trust-grid div:nth-child(2){border-right:1px solid #e3e7eb}
  .service-area-grid{grid-template-columns:1fr;gap:35px}
}
@media(max-width:600px){
  .nav-wrap{height:72px}
  .brand{gap:9px}
  .brand-icon{width:38px!important;height:38px!important}
  .brand-text strong{font-size:16px}
  .brand-text small{font-size:8px}
  .site-nav{top:72px}
  .trust-grid{grid-template-columns:1fr}
  .trust-grid div,.trust-grid div:first-child{border-left:1px solid #e3e7eb;border-right:1px solid #e3e7eb}
  .area-list{grid-template-columns:1fr 1fr}
  .floating-actions{left:12px;right:12px;bottom:12px}
  .floating-call,.floating-quote{flex:1;justify-content:center;padding:13px 10px;font-size:13px}
  .lightbox{padding:20px}
}

/* Version 8: white header and footer, redesigned colour system */
:root{
  --navy:#0b2a4a;
  --navy-deep:#061b30;
  --blue:#164f7a;
  --gold:#e9aa18;
  --gold-dark:#b97b00;
  --ink:#18212b;
  --muted:#67727e;
  --paper:#f7f5f0;
  --soft-blue:#eef4f8;
  --line:#dfe5ea;
  --white:#ffffff;
}

body{
  color:var(--ink);
  background:var(--white);
}

.site-header,
.light-header{
  background:#ffffff;
  border-bottom:1px solid var(--line);
  box-shadow:0 8px 24px rgba(11,42,74,.08);
}

.brand{
  color:var(--navy);
}

.brand-text strong{
  color:var(--navy);
}

.brand-text small{
  color:#6c7883;
}

.brand-icon{
  filter:none;
}

.site-nav a{
  color:var(--navy);
}

.site-nav a:hover{
  color:var(--gold-dark);
}

.nav-cta{
  background:var(--gold);
  color:var(--navy-deep)!important;
  border-color:var(--gold);
  box-shadow:0 6px 18px rgba(233,170,24,.25);
}

.nav-cta:hover{
  background:#f7bf37;
  color:var(--navy-deep)!important;
}

.menu-toggle span{
  background:var(--navy);
}

.hero{
  color:#fff;
}

.hero-kitchen .hero-shade{
  background:
    linear-gradient(90deg,rgba(6,27,48,.93) 0%,rgba(6,27,48,.78) 48%,rgba(6,27,48,.18) 100%);
}

.hero h1 span{
  color:#ffc83d;
}

.btn-gold{
  background:var(--gold);
  color:var(--navy-deep);
}

.btn-gold:hover{
  background:#f7bf37;
}

.btn-outline{
  border-color:rgba(255,255,255,.75);
  color:#fff;
  background:rgba(255,255,255,.06);
}

.btn-outline:hover{
  background:#fff;
  color:var(--navy);
}

.trust-strip{
  background:#fff;
  border-bottom:1px solid var(--line);
}

.trust-grid div{
  border-color:var(--line);
}

.section-heading h2,
.section h2{
  color:var(--navy);
}

.eyebrow.dark{
  color:var(--gold-dark);
}

.about{
  background:#fff;
}

.services{
  background:var(--soft-blue);
}

.service-grid article{
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 12px 28px rgba(11,42,74,.05);
}

.service-grid article:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 36px rgba(11,42,74,.10);
}

.service-grid h3{
  color:var(--navy);
}

.projects{
  background:var(--navy-deep);
}

.projects .section-heading h2{
  color:#fff;
}

.projects .section-heading>p:last-child{
  color:rgba(255,255,255,.68);
}

.process{
  background:#fff;
}

.process-grid div{
  border-top-color:#cfd9e2;
}

.process-grid span{
  color:var(--gold-dark);
}

.service-area{
  background:linear-gradient(135deg,#f7f5f0,#eef4f8);
}

.area-list span{
  background:#fff;
  border-color:var(--line);
  color:var(--navy);
}

.contact{
  background:var(--paper);
}

.contact-item{
  border-bottom-color:var(--line);
}

.contact-item strong{
  color:var(--gold-dark);
}

.contact-item a{
  color:var(--navy);
}

form{
  background:#fff;
  border:1px solid var(--line);
  box-shadow:0 18px 45px rgba(11,42,74,.08);
}

input,select,textarea{
  border-color:#cbd5de;
  background:#fff;
}

input:focus,select:focus,textarea:focus{
  outline:2px solid rgba(233,170,24,.30);
  border-color:var(--gold);
}

.light-footer,
footer{
  background:#fff;
  color:var(--navy);
  border-top:1px solid var(--line);
}

.footer-grid strong{
  color:var(--gold-dark);
}

.footer-grid a,
.footer-grid span,
.footer-grid p{
  color:#5f6b76;
}

.footer-bottom{
  border-top-color:var(--line);
}

.footer-branding img{
  filter:none;
}

.floating-call{
  background:var(--gold);
  color:var(--navy-deep);
}

.floating-quote{
  background:var(--navy);
  color:#fff;
  border-color:var(--navy);
}

.office-map iframe{
  border:1px solid var(--line);
  box-shadow:0 12px 30px rgba(11,42,74,.08);
}

@media(max-width:900px){
  .site-nav{
    background:#fff;
    border-top:1px solid var(--line);
    box-shadow:0 18px 30px rgba(11,42,74,.10);
  }
  .site-nav a{
    color:var(--navy);
  }
}

@media(max-width:600px){
  .site-header,
  .light-header{
    background:#fff;
  }
  .brand-text small{
    color:#74808b;
  }
}


/* V9: Larger header logo */
.brand img,
.brand-logo,
.site-header .brand img{
    height:72px !important;
    width:auto !important;
    max-height:72px !important;
}
.site-header{
    padding-top:12px;
    padding-bottom:12px;
}
@media (max-width:768px){
    .brand img,
    .brand-logo,
    .site-header .brand img{
        height:56px !important;
        max-height:56px !important;
    }
}

/* Version 10: navy and gold corporate redesign */
:root{
  --navy:#082b55;
  --navy-deep:#051c38;
  --navy-soft:#103b6d;
  --gold:#f2b51d;
  --gold-light:#ffd15b;
  --ink:#17212b;
  --muted:#687481;
  --paper:#f6f7f8;
  --white:#ffffff;
  --line:#dce3e9;
}

.site-header,
.light-header{
  background:var(--navy)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 10px 28px rgba(0,0,0,.18)!important;
}

.nav-wrap{
  min-height:108px!important;
  height:auto!important;
  padding-top:12px;
  padding-bottom:12px;
}

.brand{
  max-width:430px!important;
  overflow:visible!important;
}

.brand-logo,
.site-header .brand img{
  width:auto!important;
  height:82px!important;
  max-height:82px!important;
  max-width:410px!important;
  object-fit:contain!important;
  display:block!important;
}

.site-nav a{
  color:#fff!important;
}

.site-nav a:hover{
  color:var(--gold-light)!important;
}

.nav-cta{
  background:var(--gold)!important;
  color:var(--navy-deep)!important;
  border-color:var(--gold)!important;
  box-shadow:0 7px 20px rgba(242,181,29,.28)!important;
}

.nav-cta:hover{
  background:var(--gold-light)!important;
}

.menu-toggle span{
  background:#fff!important;
}

.hero-kitchen .hero-shade{
  background:linear-gradient(
    90deg,
    rgba(5,28,56,.96) 0%,
    rgba(5,28,56,.84) 48%,
    rgba(5,28,56,.24) 100%
  )!important;
}

.hero h1 span{
  color:var(--gold)!important;
}

.btn-gold{
  background:var(--gold)!important;
  color:var(--navy-deep)!important;
}

.btn-gold:hover{
  background:var(--gold-light)!important;
}

.btn-outline{
  border-color:rgba(255,255,255,.70)!important;
  color:#fff!important;
}

.trust-strip{
  background:#fff!important;
}

.services{
  background:#f3f6f8!important;
}

.service-grid article{
  border-top:4px solid var(--gold)!important;
  transition:transform .25s ease,box-shadow .25s ease!important;
}

.service-grid article:hover{
  transform:translateY(-6px)!important;
  box-shadow:0 18px 40px rgba(8,43,85,.12)!important;
}

.projects{
  background:var(--navy-deep)!important;
}

.process-grid span{
  color:var(--gold)!important;
}

.contact{
  background:#f5f6f7!important;
}

.light-footer,
footer{
  background:var(--navy-deep)!important;
  color:#fff!important;
  border-top:0!important;
}

.footer-grid strong{
  color:var(--gold)!important;
}

.footer-grid a,
.footer-grid span,
.footer-grid p{
  color:rgba(255,255,255,.72)!important;
}

.footer-bottom{
  border-top-color:rgba(255,255,255,.14)!important;
}

.footer-branding img{
  width:auto!important;
  height:125px!important;
  max-width:420px!important;
  object-fit:contain!important;
  display:block!important;
}

.floating-call{
  background:var(--gold)!important;
  color:var(--navy-deep)!important;
}

.floating-quote{
  background:var(--navy)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
}

@media(max-width:900px){
  .nav-wrap{
    min-height:92px!important;
  }

  .brand-logo,
  .site-header .brand img{
    height:68px!important;
    max-height:68px!important;
    max-width:320px!important;
  }

  .site-nav{
    top:92px!important;
    background:var(--navy)!important;
    border-top:1px solid rgba(255,255,255,.10)!important;
  }

  .site-nav a{
    color:#fff!important;
  }
}

@media(max-width:600px){
  .nav-wrap{
    min-height:80px!important;
    padding-top:8px;
    padding-bottom:8px;
  }

  .brand-logo,
  .site-header .brand img{
    height:58px!important;
    max-height:58px!important;
    max-width:245px!important;
  }

  .site-nav{
    top:80px!important;
  }

  .footer-branding img{
    height:95px!important;
    max-width:280px!important;
  }
}

/* Version 13 refinement */
:root{
  --navy:#011632;
  --navy-2:#08284b;
  --gold:#f2b51d;
  --gold-light:#ffd15b;
  --white:#ffffff;
  --ink:#17212b;
  --muted:#687481;
  --paper:#f5f6f7;
  --line:#dce3e9;
}

.site-header,
.light-header{
  background:var(--navy)!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
  box-shadow:0 8px 24px rgba(0,0,0,.18)!important;
}

.nav-wrap{
  min-height:94px!important;
  height:auto!important;
  padding:8px 0!important;
}

.brand{
  max-width:360px!important;
  display:flex!important;
  align-items:center!important;
}

.brand-logo,
.site-header .brand img{
  height:72px!important;
  width:auto!important;
  max-width:340px!important;
  max-height:none!important;
  object-fit:contain!important;
  background:transparent!important;
  display:block!important;
}

.site-nav{
  gap:28px!important;
}

.site-nav a{
  color:#fff!important;
  font-size:14px!important;
  font-weight:700!important;
}

.site-nav a:hover{
  color:var(--gold-light)!important;
}

.nav-cta{
  background:var(--gold)!important;
  color:var(--navy)!important;
  border-color:var(--gold)!important;
  padding:11px 16px!important;
  box-shadow:none!important;
}

.hero{
  min-height:760px!important;
}

.hero-kitchen .hero-shade{
  background:linear-gradient(
    90deg,
    rgba(1,22,50,.90) 0%,
    rgba(1,22,50,.72) 44%,
    rgba(1,22,50,.14) 100%
  )!important;
}

.hero-content{
  padding-top:100px!important;
}

.hero h1{
  max-width:900px!important;
}

.hero-copy{
  max-width:700px!important;
  color:rgba(255,255,255,.88)!important;
}

.trust-strip{
  background:#fff!important;
}

.services{
  background:#f4f6f8!important;
}

.service-grid article{
  background:#fff!important;
  border:1px solid var(--line)!important;
  border-top:3px solid var(--gold)!important;
  box-shadow:0 10px 24px rgba(1,22,50,.05)!important;
}

.service-grid article:hover{
  transform:translateY(-5px)!important;
  box-shadow:0 18px 36px rgba(1,22,50,.10)!important;
}

.projects{
  background:var(--navy)!important;
}

.process{
  background:#fff!important;
}

.contact{
  background:var(--paper)!important;
}

footer,
.light-footer{
  background:var(--navy)!important;
  border-top:1px solid rgba(255,255,255,.10)!important;
}

.footer-branding img{
  height:105px!important;
  width:auto!important;
  max-width:360px!important;
  background:transparent!important;
}

.floating-call{
  background:var(--gold)!important;
  color:var(--navy)!important;
}

.floating-quote{
  background:var(--navy-2)!important;
  color:#fff!important;
}

@media(max-width:900px){
  .nav-wrap{min-height:82px!important}
  .brand-logo,
  .site-header .brand img{
    height:60px!important;
    max-width:280px!important;
  }
  .site-nav{
    top:82px!important;
    background:var(--navy)!important;
  }
}

@media(max-width:600px){
  .nav-wrap{min-height:72px!important}
  .brand-logo,
  .site-header .brand img{
    height:52px!important;
    max-width:225px!important;
  }
  .site-nav{top:72px!important}
  .hero{min-height:690px!important}
  .hero h1{font-size:48px!important}
}

/* Version 14 premium refinement */
:root{
  --navy:#011632;
  --navy-2:#08284b;
  --gold:#f2b51d;
  --gold-light:#ffd15b;
  --white:#ffffff;
  --ink:#17212b;
  --muted:#687481;
  --paper:#f5f6f7;
  --line:#dce3e9;
}

/* Header */
.site-header,
.light-header{
  background:var(--navy)!important;
  border-bottom:1px solid rgba(242,181,29,.75)!important;
}

.nav-wrap{
  min-height:80px!important;
  height:80px!important;
  padding:0!important;
  display:grid!important;
  grid-template-columns:300px 1fr auto!important;
  gap:30px!important;
  align-items:center!important;
}

.brand{
  max-width:300px!important;
}

.brand-logo,
.site-header .brand img{
  height:64px!important;
  width:auto!important;
  max-width:285px!important;
  max-height:64px!important;
  object-fit:contain!important;
}

.site-nav{
  justify-content:center!important;
  gap:24px!important;
}

.site-nav a{
  font-size:13px!important;
  letter-spacing:.01em!important;
  position:relative;
}

.site-nav a:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:2px;
  background:var(--gold);
  transform:scaleX(0);
  transition:.25s ease;
}

.site-nav a:hover:after{
  transform:scaleX(1);
}

.nav-cta{
  border-radius:8px!important;
  min-height:44px!important;
  display:inline-flex!important;
  align-items:center!important;
}

/* Hero */
.hero{
  min-height:720px!important;
}

.hero-kitchen .hero-shade{
  background:linear-gradient(
    90deg,
    rgba(1,22,50,.82) 0%,
    rgba(1,22,50,.58) 42%,
    rgba(1,22,50,.08) 100%
  )!important;
}

.hero-content{
  padding-top:78px!important;
  padding-bottom:88px!important;
}

.hero h1{
  max-width:920px!important;
  margin-bottom:28px!important;
}

.hero-copy{
  max-width:690px!important;
  margin-bottom:36px!important;
}

.btn{
  border-radius:8px!important;
  min-height:54px!important;
  padding-left:26px!important;
  padding-right:26px!important;
}

/* Trust strip */
.trust-grid div{
  padding-top:24px!important;
  padding-bottom:24px!important;
}

/* Services */
.services{
  background:#f6f8fa!important;
}

.service-grid{
  gap:20px!important;
}

.service-grid article{
  min-height:255px!important;
  padding:30px!important;
  border-radius:14px!important;
  border-top:0!important;
  position:relative;
  overflow:hidden;
}

.service-grid article:before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:4px;
  background:var(--gold);
}

.service-symbol{
  font-size:38px;
  line-height:1;
  color:var(--gold);
  margin-bottom:24px;
}

.service-grid h3{
  font-size:21px!important;
  margin-top:0!important;
}

/* Projects */
.projects{
  padding-top:100px!important;
  padding-bottom:110px!important;
}

.projects-topline{
  display:flex;
  align-items:center;
  justify-content:space-between;
  margin:20px 0 26px;
  color:rgba(255,255,255,.64);
  font-size:13px;
  text-transform:uppercase;
  letter-spacing:.12em;
}

.projects-link{
  color:var(--gold);
  font-weight:800;
  text-decoration:none;
}

.project-grid{
  gap:22px!important;
}

.project-card{
  min-height:460px!important;
  border-radius:14px!important;
}

.project-card:after{
  background:linear-gradient(180deg,transparent 30%,rgba(1,15,30,.92) 100%)!important;
}

.project-info{
  bottom:30px!important;
}

.project-info h3{
  font-size:30px!important;
}

/* Content sections */
.section{
  padding-top:100px!important;
  padding-bottom:100px!important;
}

.quote-form,
form{
  border-radius:14px!important;
}

.office-map iframe{
  border-radius:14px!important;
}

/* Footer */
footer,
.light-footer{
  padding-top:46px!important;
  padding-bottom:28px!important;
}

.footer-branding img{
  height:96px!important;
}

/* Responsive */
@media(max-width:1100px){
  .nav-wrap{
    grid-template-columns:250px 1fr auto!important;
    gap:20px!important;
  }
  .brand-logo,
  .site-header .brand img{
    height:58px!important;
    max-width:240px!important;
  }
  .site-nav{
    gap:18px!important;
  }
}

@media(max-width:900px){
  .nav-wrap{
    display:flex!important;
    height:76px!important;
    min-height:76px!important;
  }
  .brand-logo,
  .site-header .brand img{
    height:54px!important;
    max-width:230px!important;
  }
  .site-nav{
    top:76px!important;
  }
  .hero{
    min-height:680px!important;
  }
  .project-card{
    min-height:380px!important;
  }
}

@media(max-width:600px){
  .nav-wrap{
    height:70px!important;
    min-height:70px!important;
  }
  .brand-logo,
  .site-header .brand img{
    height:48px!important;
    max-width:205px!important;
  }
  .site-nav{
    top:70px!important;
  }
  .hero{
    min-height:640px!important;
  }
  .hero-content{
    padding-top:62px!important;
    padding-bottom:72px!important;
  }
  .project-card{
    min-height:330px!important;
  }
  .projects-topline{
    align-items:flex-start;
    gap:12px;
    flex-direction:column;
  }
}

/* Version 15 production refinements */
body{overflow-x:hidden}
.reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s ease}
.reveal.visible{opacity:1;transform:none}

.why-choose{background:#fff}
.why-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}
.why-card{border:1px solid var(--line);border-radius:14px;padding:28px;background:#fff;box-shadow:0 10px 26px rgba(1,22,50,.05)}
.why-card span{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--gold);color:var(--navy);font-weight:800}
.why-card h3{color:var(--navy);font-size:20px;margin:20px 0 10px}
.why-card p{color:var(--muted);font-size:14px;margin:0}

.faq-section{background:#f7f8fa}
.faq-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}
.faq-list{display:grid;gap:14px}
.faq-list details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:0 20px}
.faq-list summary{cursor:pointer;list-style:none;padding:20px 34px 20px 0;font-weight:800;color:var(--navy);position:relative}
.faq-list summary::-webkit-details-marker{display:none}
.faq-list summary:after{content:"+";position:absolute;right:0;top:15px;font-size:26px;color:var(--gold)}
.faq-list details[open] summary:after{content:"−"}
.faq-list details p{margin:0 0 20px;color:var(--muted)}

.project-card{cursor:pointer}
.project-card:before{content:"View project";position:absolute;top:18px;right:18px;z-index:4;background:rgba(1,22,50,.86);color:#fff;padding:7px 11px;border-radius:20px;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.08em;opacity:0;transform:translateY(-6px);transition:.25s}
.project-card:hover:before{opacity:1;transform:none}

.lightbox{position:fixed;inset:0;z-index:300;background:rgba(0,8,18,.95);display:none;align-items:center;justify-content:center;flex-direction:column;padding:34px}
.lightbox.open{display:flex}
.lightbox img{max-width:min(1100px,92vw);max-height:80vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.45)}
.lightbox p{color:#fff;font-weight:800;margin-top:16px}
.lightbox-close{position:absolute;top:16px;right:22px;background:transparent;border:0;color:#fff;font-size:44px;cursor:pointer}

.mobile-contact-bar{display:none;position:fixed;left:10px;right:10px;bottom:10px;z-index:180;gap:10px}
.mobile-contact-bar a{flex:1;text-align:center;text-decoration:none;font-weight:800;padding:13px 10px;border-radius:8px}
.mobile-contact-bar a:first-child{background:var(--gold);color:var(--navy)}
.mobile-contact-bar a:last-child{background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.15)}

@media(max-width:1000px){
  .why-grid{grid-template-columns:1fr 1fr}
  .faq-layout{grid-template-columns:1fr;gap:35px}
}

@media(max-width:600px){
  .why-grid{grid-template-columns:1fr}
  .mobile-contact-bar{display:flex}
  body{padding-bottom:70px}
}
