:root{--gold:#d1a637;--gold2:#e4bd4f;--black:#080909;--soft:#f5f3ed;--white:#fff;--muted:#686868}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#151515;background:#fff;line-height:1.55}header{height:76px;position:sticky;top:0;z-index:10;background:#090a0a;color:#fff;display:flex;align-items:center;padding:0 5%;gap:28px;border-bottom:1px solid #292929}.brand{font-weight:900;letter-spacing:1.7px;font-size:21px;color:#fff;text-decoration:none}.brand span{color:var(--gold)}nav{margin-left:auto;display:flex;gap:23px}nav a{color:#ddd;text-decoration:none;font-size:14px;font-weight:700}.call{color:#111;background:var(--gold);padding:10px 14px;border-radius:3px;text-decoration:none;font-weight:800;font-size:14px}.menu{display:none;background:none;border:0;color:#fff;font-size:26px}.hero{background:radial-gradient(circle at 82% 18%,#2b2415 0,#111 31%,#050606 72%);color:#fff;padding:70px 6% 68px;min-height:640px;display:grid;align-items:center}.hero-inner{max-width:1250px;margin:auto;display:grid;grid-template-columns:1.08fr .92fr;gap:58px;align-items:center;width:100%}.kicker,.eyebrow,.heading span{font-size:12px;font-weight:900;letter-spacing:2px;color:var(--gold)}h1{font-size:clamp(54px,6.6vw,92px);line-height:.94;margin:16px 0 25px;text-transform:uppercase}h1 span{color:var(--gold)}.lead{font-size:20px;color:#ddd;max-width:690px}.lead strong{color:#fff}.buttons{display:flex;gap:12px;margin:30px 0}.btn{display:inline-block;padding:14px 21px;border-radius:3px;font-weight:900;text-decoration:none;border:1px solid var(--gold);cursor:pointer;font-size:15px}.gold{background:linear-gradient(180deg,var(--gold2),var(--gold));color:#111}.ghost{color:#fff;background:transparent}.trust{font-size:13px;color:#aaa;text-transform:uppercase;letter-spacing:1px}.brand-card{border:1px solid #594718;background:#080808;box-shadow:0 22px 70px #000;overflow:hidden}.brand-card img{display:block;width:100%;height:100%;max-height:475px;object-fit:cover;object-position:left center}.section{padding:88px 6%}.heading{max-width:850px;margin:0 auto 45px;text-align:center}.heading h2,.split h2,.quote h2{font-size:clamp(36px,5vw,58px);line-height:1.05;margin:10px 0}.services{max-width:1250px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.services article{position:relative;border:1px solid #e3e0d7;border-top:4px solid var(--gold);padding:27px 24px;background:#fff;min-height:225px;transition:.2s ease}.services article:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(0,0,0,.07)}.services b{color:var(--gold);font-size:12px}.services h3{font-size:19px;margin:12px 0}.services p{color:var(--muted);font-size:14px}.dark{background:#090a0a;color:#fff}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split p,.split li{color:#ccc}.split li{margin:12px 0}.about{background:var(--soft)}.three{max-width:1150px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.three div{background:#fff;padding:32px;border-top:4px solid var(--gold)}.three p{color:var(--muted)}.work{background:#fff}.photos{max-width:1200px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.photos div{height:280px;background:linear-gradient(135deg,#171717,#303030);color:#d6b352;display:grid;place-items:center;font-weight:900;letter-spacing:2px;border-bottom:5px solid var(--gold);position:relative;overflow:hidden}.photos div:after{content:"PHOTO COMING SOON";position:absolute;bottom:12px;font-size:10px;color:#777;letter-spacing:1px}.quote{background:#0a0b0b;color:#fff;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.quote p{color:#ccc}.contact{display:grid;gap:12px;margin-top:30px}.contact a{display:block;padding:17px;border:1px solid #333;text-decoration:none;color:#fff}.contact strong,.contact small{display:block}.contact strong{color:var(--gold);font-size:20px}.contact small{color:#aaa}form{background:#fff;color:#111;padding:30px;border-top:5px solid var(--gold)}.formrow{display:grid;grid-template-columns:1fr 1fr;gap:15px}label{display:block;font-size:13px;font-weight:800;margin-bottom:15px}input,textarea,select{width:100%;padding:12px;margin-top:5px;border:1px solid #ccc;font:inherit;background:#fff}input:focus,textarea:focus,select:focus{outline:2px solid rgba(209,166,55,.35);border-color:var(--gold)}.note{display:block;color:#777;margin-top:10px}footer{background:#030404;color:#aaa;text-align:center;padding:45px 6% 72px}footer a{color:#d8b64e;text-decoration:none}footer .brand{margin-bottom:8px}.mobile-call{display:none}.thanks{background:#080909;color:#fff;min-height:100vh}.thanks main{min-height:100vh;display:grid;place-items:center;padding:24px}.thanks-card{max-width:720px;text-align:center;border:1px solid #3c331a;padding:55px;background:#0d0e0e}.thanks-card h1{color:var(--gold)}.thanks-card .btn{margin:10px}
@media(max-width:900px){header{height:66px}.topcall{display:none}.menu{display:block;margin-left:auto}nav{display:none;position:absolute;top:66px;left:0;right:0;background:#0a0a0a;padding:18px 6%;flex-direction:column;border-top:1px solid #222}nav.open{display:flex}.hero{padding-top:52px;min-height:auto}.hero-inner,.split,.quote{grid-template-columns:1fr}.brand-card{max-width:560px}.services{grid-template-columns:1fr 1fr}.three,.photos{grid-template-columns:1fr}.section{padding:62px 6%}.mobile-call{display:block;position:fixed;z-index:20;bottom:0;left:0;right:0;background:var(--gold);color:#111;text-align:center;padding:14px;font-weight:900;text-decoration:none;box-shadow:0 -5px 20px rgba(0,0,0,.2)}footer{padding-bottom:95px}}
@media(max-width:560px){.services,.formrow{grid-template-columns:1fr}h1{font-size:47px}.hero .lead{font-size:17px}.buttons{flex-direction:column}.btn{text-align:center}.hero{padding-left:5%;padding-right:5%}.brand-card{max-width:100%}.brand-card img{max-height:none}.heading h2,.split h2,.quote h2{font-size:38px}.section{padding:54px 5%}.photos div{height:220px}}
/* V3 mobile hero optimization */
@media(max-width:560px){
  .hero{padding:34px 5% 42px}
  .hero-inner{gap:28px}
  .kicker{font-size:10px;letter-spacing:1.45px;line-height:1.4;white-space:normal}
  h1{font-size:clamp(40px,12vw,47px);line-height:.96;margin:12px 0 20px}
  .hero .lead{font-size:17px;line-height:1.45}
  .buttons{margin:24px 0 20px;gap:10px}
  .trust{font-size:12px;line-height:1.55}
  .brand-card{width:74vw;max-width:430px;margin:0 auto}
  .brand-card img{width:100%;height:auto;max-height:none;object-fit:contain}
}

/* V4 mobile hero refinement */
@media(max-width:560px){
  header{height:62px}
  nav{top:62px}
  .hero{
    padding-top:30px;
    padding-bottom:34px;
    min-height:auto;
  }
  .hero-inner{
    gap:22px;
  }
  .kicker{
    font-size:10px;
    letter-spacing:1.45px;
    white-space:normal;
    line-height:1.35;
    margin-bottom:8px;
  }
  h1{
    font-size:39px;
    line-height:.95;
    margin:8px 0 18px;
  }
  .hero .lead{
    font-size:15.5px;
    line-height:1.45;
    margin:0 0 18px;
  }
  .buttons{
    gap:10px;
    margin:18px 0 12px;
  }
  .buttons .btn{
    padding:13px 16px;
  }
  .trust{
    font-size:10px;
    line-height:1.45;
    letter-spacing:.7px;
    margin-top:8px;
  }
  .brand-card{
    width:76%;
    max-width:340px;
    margin:10px auto 0;
  }
  .brand-card img{
    width:100%;
    height:auto;
    max-height:none;
  }
  .section{
    padding-top:46px;
  }
}

/* V5 mobile hero finishing pass */
@media(max-width:560px){
  .hero{
    padding-top:18px;
    padding-bottom:92px; /* keeps descriptor clear of sticky call bar */
  }
  .hero-inner{
    gap:18px;
  }
  .kicker{
    margin-top:0;
    margin-bottom:6px;
  }
  .trust{
    margin-top:14px;
    margin-bottom:10px;
    padding-bottom:4px;
  }
}



/* V6 mobile services optimization — hero unchanged */
@media(max-width:560px){
  #services.section{
    padding-top:34px;
    padding-bottom:92px;
  }
  #services .heading{
    margin-bottom:28px;
  }
  #services .heading h2{
    margin-bottom:0;
  }
  #services .services{
    gap:12px;
  }
  #services .services article{
    min-height:0;
    padding:20px 18px 18px;
  }
  #services .services h3{
    margin:8px 0 6px;
    line-height:1.2;
  }
  #services .services p{
    margin:0;
    line-height:1.45;
  }
}


/* V7 mobile polish — hero unchanged, desktop unchanged */
@media(max-width:560px){
  #services.section{
    padding-top:30px;
    padding-bottom:88px;
  }
  #services .heading{
    margin-bottom:22px;
  }
  #services .services{
    gap:10px;
  }
  #services .services article{
    min-height:0 !important;
    height:auto !important;
    padding:16px 16px 14px !important;
  }
  #services .services b{
    display:block;
    margin-bottom:4px;
  }
  #services .services h3{
    margin:4px 0 5px !important;
    font-size:18px;
    line-height:1.18;
  }
  #services .services p{
    margin:0 !important;
    font-size:13.5px;
    line-height:1.4;
  }

  /* Tighter mobile rhythm throughout the lower page */
  #management.section,
  #about.section,
  #work.section,
  #quote.section{
    padding-top:48px;
    padding-bottom:72px;
  }

  #management h2,
  #about .heading h2,
  #work .heading h2,
  #quote h2{
    margin-bottom:14px;
  }

  .three{
    gap:12px;
  }
  .three div{
    padding:22px 20px;
  }

  .photos{
    gap:12px;
  }
  .photos div{
    height:190px;
  }

  .quote{
    gap:30px;
  }
  form{
    padding:22px 18px;
  }

  footer{
    padding-top:34px;
  }
}


/* V8 — force compact mobile service cards */
@media(max-width:560px){
  #services .services{
    display:grid !important;
    grid-template-columns:1fr !important;
    grid-auto-rows:auto !important;
    align-items:start !important;
    gap:8px !important;
  }

  #services .services article{
    display:block !important;
    min-height:unset !important;
    height:auto !important;
    max-height:none !important;
    padding:14px 16px 13px !important;
    margin:0 !important;
    overflow:visible !important;
  }

  #services .services article b{
    display:block !important;
    margin:0 0 3px 0 !important;
    line-height:1 !important;
  }

  #services .services article h3{
    margin:3px 0 5px !important;
    font-size:18px !important;
    line-height:1.18 !important;
  }

  #services .services article p{
    margin:0 !important;
    padding:0 !important;
    font-size:13.5px !important;
    line-height:1.38 !important;
  }
}


/* V9 definitive compact service cards */
@media (max-width:560px){
  #services .services{
    display:flex !important;
    flex-direction:column !important;
    gap:10px !important;
  }

  #services .services article{
    flex:0 0 auto !important;
    align-self:stretch !important;
    display:block !important;
    box-sizing:border-box !important;
    min-height:0 !important;
    height:auto !important;
    max-height:none !important;
    padding:14px 16px 14px !important;
    margin:0 !important;
  }

  #services .services article b,
  #services .services article h3,
  #services .services article p{
    position:static !important;
    display:block !important;
    float:none !important;
  }

  #services .services article b{
    margin:0 0 6px !important;
  }

  #services .services article h3{
    margin:0 0 7px !important;
    font-size:18px !important;
    line-height:1.2 !important;
  }

  #services .services article p{
    margin:0 !important;
    padding:0 !important;
    font-size:13.5px !important;
    line-height:1.4 !important;
  }
}

/* V10 conversion polish — hero and V9 services preserved */
.management-intro{color:#aaa;max-width:590px;margin-top:22px}
.care-list{display:grid;gap:10px}
.care-list>div{display:flex;gap:16px;align-items:flex-start;padding:18px 0;border-bottom:1px solid #292929}
.care-list>div:first-child{border-top:1px solid #292929}
.care-list b{color:var(--gold);font-size:12px;letter-spacing:1px;padding-top:3px}
.care-list span,.care-list strong,.care-list small{display:block}
.care-list strong{color:#fff;font-size:17px;line-height:1.25}
.care-list small{color:#aaa;font-size:13px;line-height:1.45;margin-top:4px}
.proof-strip{background:var(--gold);color:#111;display:grid;grid-template-columns:repeat(4,1fr);padding:0 6%}
.proof-strip>div{padding:20px 18px;text-align:center;border-right:1px solid rgba(0,0,0,.18)}
.proof-strip>div:last-child{border-right:0}
.proof-strip strong,.proof-strip span{display:block}
.proof-strip strong{font-size:12px;letter-spacing:1px}
.proof-strip span{font-size:11px;margin-top:2px;opacity:.75}
.phone-mark{font-size:15px;line-height:1}
.mobile-call{align-items:center;justify-content:center;gap:8px}
@media(max-width:900px){
 .proof-strip{grid-template-columns:1fr 1fr}
 .proof-strip>div:nth-child(2){border-right:0}
 .proof-strip>div:nth-child(-n+2){border-bottom:1px solid rgba(0,0,0,.18)}
 .mobile-call{display:flex}
}
@media(max-width:560px){
 #management.section{padding:46px 5% 50px}
 #management.split{gap:22px}
 #management h2{font-size:34px;line-height:1.08;margin-top:8px}
 .management-intro{font-size:14px;line-height:1.5;margin:14px 0 0}
 .care-list{gap:0}
 .care-list>div{padding:14px 0;gap:12px}
 .care-list strong{font-size:15px}
 .care-list small{font-size:12.5px}
 #about.section{padding-top:44px;padding-bottom:52px}
 #about .heading{margin-bottom:22px}
 .three div{padding:18px}
 .three h3{margin:0 0 5px}
 .three p{font-size:13.5px;margin:0}
 #work.section{padding-top:44px;padding-bottom:52px}
 #work .heading{margin-bottom:22px}
 #work .heading p{font-size:13.5px}
 .photos div{height:150px}
 .proof-strip{grid-template-columns:1fr 1fr;padding:0}
 .proof-strip>div{padding:14px 8px}
 .proof-strip strong{font-size:10px}
 .proof-strip span{font-size:9.5px}
 #quote.section{padding:46px 5% 72px;gap:24px}
 #quote h2{font-size:34px}
 #quote>div>p{font-size:14px}
 .contact{margin-top:20px;gap:8px}
 .contact a{padding:13px}
 .contact strong{font-size:16px}
 form{padding:18px 16px}
 label{margin-bottom:11px}
 input,textarea,select{padding:10px}
 textarea{min-height:92px}
 form .btn{width:100%}
 .mobile-call{min-height:52px;padding:10px 14px;font-size:15px;padding-bottom:max(10px,env(safe-area-inset-bottom))}
 footer{padding-bottom:78px}
}

/* V11 — Real Project Before & After Gallery */
.gallery-section{background:#f3f3f1;color:#111}
.gallery-heading{max-width:760px;margin-bottom:34px}
.gallery-heading p{max-width:690px;color:#666;line-height:1.6;margin-top:12px}
.project-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;max-width:1240px;margin:0 auto}
.project-card{background:#fff;border:1px solid #ddd;border-top:4px solid var(--gold);box-shadow:0 12px 28px rgba(0,0,0,.07);padding:22px;overflow:hidden}
.project-top{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:10px}
.project-no,.project-type{font-size:10px;letter-spacing:1.25px;font-weight:800}
.project-no{color:var(--gold)}
.project-type{color:#777;text-align:right}
.project-card h3{font-size:25px;line-height:1.15;margin:0 0 8px;color:#111}
.project-summary{color:#666;font-size:14px;line-height:1.55;margin:0 0 18px;min-height:44px}
.before-after{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.gallery-image{position:relative;display:block;border:0;padding:0;background:#111;cursor:zoom-in;overflow:hidden;aspect-ratio:3/4;width:100%}
.gallery-image img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s ease,filter .25s ease}
.gallery-image:hover img{transform:scale(1.02);filter:brightness(1.03)}
.gallery-image span{position:absolute;left:10px;bottom:10px;background:#111;color:#fff;padding:6px 9px;font-size:10px;font-weight:900;letter-spacing:1px;border-left:3px solid var(--gold)}
.gallery-image span.after{background:var(--gold);color:#111;border-left-color:#111}
.scope{border-top:1px solid #e5e5e5;margin-top:16px;padding-top:14px}
.scope strong,.scope span{display:block}
.scope strong{font-size:9px;letter-spacing:1.2px;color:#8a6b15;margin-bottom:5px}
.scope span{font-size:12.5px;line-height:1.5;color:#555}
.gallery-cta{max-width:1240px;margin:28px auto 0;background:#0b0b0b;color:#fff;border-left:4px solid var(--gold);padding:24px 26px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.gallery-cta span{font-size:10px;font-weight:800;letter-spacing:1.4px;color:var(--gold)}
.gallery-cta h3{font-size:24px;margin:5px 0 0}
.gallery-cta .btn{white-space:nowrap}
.lightbox{position:fixed;inset:0;background:rgba(0,0,0,.94);z-index:9999;display:none;align-items:center;justify-content:center;padding:32px}
.lightbox.open{display:flex}
.lightbox img{max-width:min(92vw,1100px);max-height:88vh;object-fit:contain;box-shadow:0 15px 50px rgba(0,0,0,.45)}
.lightbox-close{position:fixed;right:22px;top:16px;width:46px;height:46px;border:1px solid #555;background:#111;color:#fff;font-size:32px;line-height:1;cursor:pointer;border-radius:50%}
.no-scroll{overflow:hidden}

@media(max-width:900px){
 .project-gallery{grid-template-columns:1fr;gap:18px}
 .project-summary{min-height:0}
 .gallery-cta{align-items:flex-start;flex-direction:column}
}
@media(max-width:560px){
 #work.gallery-section{padding:44px 5% 56px}
 .gallery-heading{margin-bottom:22px}
 .gallery-heading h2{font-size:34px;line-height:1.08}
 .gallery-heading p{font-size:13.5px;line-height:1.5}
 .project-gallery{gap:14px}
 .project-card{padding:14px;border-top-width:3px;box-shadow:0 8px 20px rgba(0,0,0,.06)}
 .project-card h3{font-size:20px;margin-bottom:6px}
 .project-summary{font-size:12.8px;margin-bottom:12px}
 .project-top{margin-bottom:8px}
 .project-no,.project-type{font-size:8.5px;letter-spacing:.9px}
 .before-after{gap:5px}
 .gallery-image span{left:7px;bottom:7px;padding:5px 7px;font-size:8.5px}
 .scope{margin-top:12px;padding-top:11px}
 .scope span{font-size:11.5px}
 .gallery-cta{margin-top:18px;padding:20px 18px;gap:16px}
 .gallery-cta h3{font-size:20px;line-height:1.2}
 .gallery-cta .btn{width:100%;text-align:center}
 .lightbox{padding:18px}
 .lightbox-close{right:12px;top:12px;width:42px;height:42px}
}
