
:root{--navy:#0B1A2B;--navy2:#132B45;--brass:#C99A3B;--brass2:#B4842A;--steel:#F4F6F8;--line:#E4E9EF;--ink:#0F1B2A;--slate:#5A6B80;--ok:#2F7A4F;}
*{box-sizing:border-box;}
html,body{max-width:100%;overflow-x:hidden;}
body{margin:0;font-family:'Assistant',sans-serif;color:var(--ink);background:#fff;line-height:1.6;}
h1,h2,h3{font-family:'Rubik',sans-serif;margin:0;}
.mono{font-family:'Roboto Mono',monospace;}
a{color:inherit;text-decoration:none;}
img{max-width:100%;display:block;}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px;}
.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;}
.key-icon{width:24px;height:24px;color:currentColor;}

.topbar{background:var(--navy);color:#B9C8D9;font-size:.82rem;}
.topbar .wrap{display:flex;justify-content:space-between;height:36px;align-items:center;}

header{position:sticky;top:0;z-index:50;background:#fff;box-shadow:0 2px 14px -8px rgba(11,26,43,.2);}
.nav-row{display:flex;align-items:center;justify-content:space-between;height:76px;}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;font-size:1.22rem;color:var(--navy);}
.brand .mark{width:42px;height:42px;border-radius:11px;background:var(--navy);color:var(--brass);display:flex;align-items:center;justify-content:center;}
nav.primary{display:flex;gap:24px;font-weight:600;font-size:.94rem;}
nav.primary a:hover{color:var(--brass2);}
.header-cta{display:flex;gap:10px;}
.btn{display:inline-flex;align-items:center;gap:8px;padding:11px 20px;border-radius:999px;font-weight:700;border:2px solid transparent;cursor:pointer;font-size:.92rem;}
.btn-brass{background:var(--brass);color:var(--navy);}
.btn-brass:hover{background:var(--brass2);}
.btn-ghost{border-color:var(--navy);color:var(--navy);}
.btn-wa{background:#25D366;color:#04250f;}
.menu-toggle{display:none;background:none;border:none;font-size:1.6rem;color:var(--navy);}

/* HERO */
.hero{position:relative;color:#fff;min-height:560px;display:flex;align-items:center;}
.hero-bg{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;}
.hero-scrim{position:absolute;inset:0;background:linear-gradient(100deg, rgba(11,26,43,.96) 0%, rgba(11,26,43,.9) 42%, rgba(11,26,43,.55) 78%, rgba(11,26,43,.3) 100%);}
.hero-inner{position:relative;padding:56px 0;width:100%;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:start;}
.eyebrow{display:inline-flex;gap:8px;background:rgba(201,154,59,.15);border:1px solid rgba(201,154,59,.45);color:var(--brass);font-weight:700;font-size:.8rem;padding:6px 14px;border-radius:999px;margin-bottom:14px;}
.hero h1{font-size:clamp(1.9rem,3.8vw,2.7rem);font-weight:800;}
.hero h1 span{color:var(--brass);}
.hero-lede{margin-top:14px;color:#CBD8E4;font-size:1.02rem;max-width:50ch;}
.hero-stats{display:flex;gap:24px;margin-top:26px;}
.hstat b{display:block;font-size:1.3rem;font-weight:800;}
.hstat span{font-size:.8rem;color:#9FB2C7;}

.lead-card{background:#fff;color:var(--ink);border-radius:16px;padding:22px;box-shadow:0 24px 60px -20px rgba(0,0,0,.5);}
.lead-card h2{font-size:1.15rem;color:var(--navy);}
.lead-card .sub{font-size:.84rem;color:var(--slate);margin:4px 0 14px;}
.field{margin-bottom:11px;}
.field label{display:block;font-size:.82rem;font-weight:700;margin-bottom:5px;}
.field input,.field select,.field textarea{width:100%;padding:10px 12px;border-radius:9px;border:1.5px solid var(--line);font-family:inherit;font-size:.94rem;background:var(--steel);}
.field input:focus,.field select:focus{border-color:var(--brass);outline:none;background:#fff;}
.field-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;}
.other-wrap{display:none;margin-top:6px;}
.other-wrap.show{display:block;}
.lead-submit{width:100%;justify-content:center;padding:12px;margin-top:2px;}
.privacy{font-size:.7rem;color:#8797AA;text-align:center;margin-top:8px;}
.thankyou{display:none;text-align:center;padding:18px 4px;}
.thankyou.show{display:block;}
.thankyou .check{width:50px;height:50px;border-radius:50%;background:#E7F5EC;color:var(--ok);display:flex;align-items:center;justify-content:center;margin:0 auto 10px;font-size:1.4rem;}

/* QUICK FINDER STRIP — pro.co.il inspired */
.finder{background:var(--navy2);border-top:1px solid rgba(255,255,255,.08);position:relative;z-index:2;}
.finder-inner{display:flex;gap:10px;align-items:center;padding:16px 0;flex-wrap:wrap;}
.finder-label{color:#B9C8D9;font-weight:700;font-size:.9rem;white-space:nowrap;}
.finder select{flex:1;min-width:160px;padding:11px 14px;border-radius:9px;border:none;background:#fff;font-family:inherit;font-size:.92rem;color:var(--ink);}
.finder .btn-brass{white-space:nowrap;}

section{padding:60px 0;}
.sec-head{max-width:640px;margin-bottom:30px;}
.eyebrow2{color:var(--brass2);font-weight:700;font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;}
.sec-head h2{font-size:clamp(1.4rem,3vw,1.9rem);margin-top:6px;color:var(--navy);}
.sec-head p{margin-top:8px;color:var(--slate);}

/* FULL SERVICE INDEX */
.index-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 24px;}
.index-grid a{padding:9px 0;border-bottom:1px dashed var(--line);font-size:.92rem;font-weight:600;color:var(--navy);}
.index-grid a:hover{color:var(--brass2);}
.index-more{margin-top:20px;}
.index-more a{font-weight:700;color:var(--brass2);font-size:.9rem;}

/* PROCESS */
.process{background:var(--steel);}
.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;}
.pstep{background:#fff;border-radius:14px;padding:24px;border:1px solid var(--line);}
.pstep .num{width:36px;height:36px;border-radius:50%;background:var(--navy);color:var(--brass);display:flex;align-items:center;justify-content:center;font-weight:800;margin-bottom:14px;}
.pstep h3{font-size:1.02rem;color:var(--navy);margin-bottom:6px;}
.pstep p{font-size:.88rem;color:var(--slate);margin:0;}

/* PRICING TABLE */
.price-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.price-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border:1px solid var(--line);border-radius:12px;gap:10px;}
.price-row:hover{border-color:var(--brass);}
.price-row .job{font-weight:700;font-size:.94rem;color:var(--navy);min-width:0;}
.price-row .job small{display:block;font-weight:400;color:var(--slate);font-size:.8rem;margin-top:2px;}
.price-row .val{font-family:'Roboto Mono',monospace;font-weight:700;color:var(--brass2);white-space:nowrap;padding-inline-start:14px;flex-shrink:0;}
.price-note{margin-top:16px;font-size:.85rem;color:var(--slate);}

/* REVIEWS tied to job */
.rev-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.rev-card{background:var(--steel);border-radius:14px;padding:22px;}
.stars{color:var(--brass2);margin-bottom:8px;}
.rev-card p{font-size:.89rem;color:var(--slate);}
.rev-meta{margin-top:14px;padding-top:12px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;}
.rev-name{font-weight:700;color:var(--navy);font-size:.85rem;}
.rev-job{font-size:.78rem;color:var(--brass2);font-weight:700;}

/* CONTENT HUB */
.hub-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;}
.hub-card{border:1px solid var(--line);border-radius:14px;overflow:hidden;}
.hub-card img{height:120px;object-fit:cover;width:100%;}
.hub-body{padding:16px;}
.hub-body h3{font-size:.94rem;color:var(--navy);margin-bottom:6px;line-height:1.35;}
.hub-body p{font-size:.82rem;color:var(--slate);margin:0 0 8px;}
.hub-body a{font-size:.8rem;font-weight:700;color:var(--brass2);}

/* GALLERY */
.gallery{background:var(--navy);}
.gal-head h2,.gal-head span.eyebrow2{color:#fff;}
.gal-head span.eyebrow2{color:var(--brass);}
.gal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:120px;gap:10px;}
.gal-grid img{width:100%;height:100%;object-fit:cover;border-radius:10px;}
.gal-grid a:nth-child(1){grid-column:span 2;grid-row:span 2;}

/* ABOUT */
.about{display:grid;grid-template-columns:.8fr 1.2fr;gap:44px;align-items:center;}
.about-photo{border-radius:16px;overflow:hidden;aspect-ratio:4/5;}
.about-photo img{width:100%;height:100%;object-fit:cover;}
.about-copy p{color:var(--slate);margin-bottom:12px;}
.about-sig{font-weight:800;color:var(--navy);margin-top:8px;}

/* AREAS */
.area-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;}
.area-chip{background:var(--steel);border-radius:10px;padding:13px;text-align:center;font-weight:700;font-size:.85rem;color:var(--navy);}
.area-chip:hover{background:#E7EDF3;}
.area-chip small{display:block;font-weight:500;font-size:.7rem;color:var(--slate);margin-top:2px;}

/* FAQ */
.faq-item{border-bottom:1px solid var(--line);padding:16px 0;}
.faq-q{display:flex;justify-content:space-between;cursor:pointer;font-weight:700;}
.faq-q .plus{color:var(--brass2);font-size:1.3rem;}
.faq-item.open .plus{transform:rotate(45deg);}
.faq-a{max-height:0;overflow:hidden;transition:max-height .25s;color:var(--slate);font-size:.89rem;}
.faq-item.open .faq-a{max-height:200px;padding-top:8px;}

/* MEGA FOOTER */
footer{background:var(--navy);color:#B8C8DA;padding-top:48px;}
.foot-top{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr 1fr;gap:28px;padding-bottom:32px;border-bottom:1px solid rgba(255,255,255,.08);}
.foot-top h4{color:#fff;font-size:.9rem;margin-bottom:12px;}
.foot-top ul{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;font-size:.83rem;}
.foot-top ul a:hover{color:var(--brass);}
.foot-bottom{display:flex;justify-content:space-between;padding:18px 0;font-size:.8rem;color:#7B8FA5;flex-wrap:wrap;gap:8px;}

.mobile-bar{display:none;position:fixed;bottom:0;inset-inline:0;z-index:60;background:#fff;box-shadow:0 -8px 24px -12px rgba(0,0,0,.3);padding:10px;gap:10px;}
.mobile-bar .btn{flex:1;justify-content:center;}

@media(max-width:980px){
  nav.primary,.header-cta .btn-ghost{display:none;}
  .menu-toggle{display:block;}
  .hero-grid{grid-template-columns:1fr;}
  .index-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .process-grid{grid-template-columns:1fr;}
  .price-grid{grid-template-columns:1fr;}
  .rev-grid{grid-template-columns:1fr;}
  .hub-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .gal-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .about{grid-template-columns:1fr;}
  .area-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
  .foot-top{grid-template-columns:1fr 1fr;}
  .mobile-bar{display:flex;}
  body{padding-bottom:64px;}
  .finder-inner{flex-direction:column;align-items:stretch;}

  /* center everything on mobile/tablet */
  .sec-head{margin-left:auto;margin-right:auto;text-align:center;}
  .hero-grid > div:first-child{text-align:center;}
  .eyebrow,.eyebrow2{margin-left:auto;margin-right:auto;}
  .hero-stats{justify-content:center;}
  .svc-card,.pstep,.rev-card,.hub-body,.about-copy,.lead-card{text-align:center;}
  .svc-ic,.pstep .num{margin:0 auto 14px;}
  .about-copy{display:flex;flex-direction:column;align-items:center;}
  .rev-meta{justify-content:center;gap:12px;}
  .price-row{flex-direction:column;text-align:center;gap:4px;}
  .price-row .val{padding-inline-start:0;}
  .index-grid a{text-align:center;}
  .foot-top{text-align:center;}
  .foot-top > div{display:flex;flex-direction:column;align-items:center;}
  .foot-bottom{justify-content:center;text-align:center;}
  .brand{justify-content:center;}
  .breadcrumb .wrap{justify-content:center;}
  .field-row,.field{text-align:right;}
}
@media(max-width:600px){
  .field-row{grid-template-columns:1fr;}
  .index-grid{grid-template-columns:1fr;}
  .hub-grid,.gal-grid{grid-template-columns:1fr;}
  .area-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .foot-top{grid-template-columns:1fr;}
}

/* Breadcrumb (added for subpages) */
.breadcrumb{background:var(--steel);border-bottom:1px solid var(--line);}
.breadcrumb .wrap{display:flex;gap:8px;align-items:center;padding:12px 20px;font-size:.85rem;color:var(--slate);flex-wrap:wrap;}
.breadcrumb a{color:var(--slate);font-weight:600;}
.breadcrumb a:hover{color:var(--brass2);}
.breadcrumb span.sep{color:#B7C2CE;}
.breadcrumb span.current{color:var(--navy);font-weight:700;}

/* Sub-service cards (added for subpages) */
.svc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;}
.svc-card{background:var(--steel);border-radius:14px;padding:24px;}
.svc-ic{width:44px;height:44px;border-radius:10px;background:var(--navy);color:var(--brass);display:flex;align-items:center;justify-content:center;margin-bottom:14px;}
.svc-card h3{font-size:1.03rem;color:var(--navy);margin-bottom:6px;}
.svc-card p{font-size:.88rem;color:var(--slate);margin:0 0 12px;}
.svc-card .more{font-size:.84rem;font-weight:700;color:var(--brass2);}

/* Long-form body copy (added for subpages) */
.body-copy{max-width:760px;}
.body-copy p{color:var(--slate);margin-bottom:14px;font-size:.98rem;}
.body-copy h3{color:var(--navy);font-size:1.15rem;margin:26px 0 10px;}

@media(max-width:980px){ .svc-grid{grid-template-columns:repeat(2,minmax(0,1fr));} }
@media(max-width:600px){ .svc-grid{grid-template-columns:1fr;} }

/* ---------- Dropdown nav (desktop) ---------- */
.nav-item{position:relative;}
.nav-item > a{display:flex;align-items:center;gap:4px;}
.nav-item > a::after{content:"▾";font-size:.7em;opacity:.6;}
.dropdown{
  position:absolute;top:100%;inset-inline-end:0;background:#fff;border-radius:12px;
  box-shadow:0 16px 36px -12px rgba(11,26,43,.3);padding:10px;min-width:210px;
  display:none;flex-direction:column;gap:2px;z-index:70;margin-top:8px;
}
.nav-item:hover .dropdown,.nav-item.open .dropdown{display:flex;}
.dropdown a{padding:9px 12px;border-radius:8px;font-weight:600;font-size:.88rem;color:var(--navy);white-space:nowrap;}
.dropdown a:hover{background:var(--steel);color:var(--brass2);}

/* ---------- Mobile menu drawer ---------- */
.mobile-menu{
  position:fixed;inset:0;background:#fff;z-index:200;
  opacity:0;visibility:hidden;transition:opacity .2s ease;
  overflow-y:auto;padding:22px 20px 100px;
}
.mobile-menu.open{opacity:1;visibility:visible;}
.mobile-menu-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:16px;border-bottom:1px solid var(--line);}
.mobile-menu-close{background:none;border:none;font-size:1.9rem;color:var(--navy);line-height:1;cursor:pointer;}
.mobile-menu a{display:block;padding:13px 4px;border-bottom:1px solid var(--line);font-weight:600;color:var(--navy);font-size:1rem;}
.mobile-menu .msec-title{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--brass2);font-weight:700;margin:18px 0 2px;padding:0 4px;}
.mobile-menu .msec-title:first-of-type{margin-top:8px;}
.mobile-menu-cta{margin-top:22px;display:flex;gap:10px;}
.mobile-menu-cta .btn{flex:1;justify-content:center;}
