:root{
    --black:#0c0d0f;
    --charcoal:#181a1e;
    --charcoal-soft:#22242a;
    --white:#f8f5ef;
    --white-dim:#efe9df;
    --gold:#b7a06b;
    --gold-soft:#d8c594;
    --silver:#9aa0aa;
    --line:rgba(183,160,107,0.35);
    --ink:#1b1c1e;
  }
  *{box-sizing:border-box; margin:0; padding:0;}
  html{scroll-behavior:smooth;}
  body{
    font-family:'Inter',sans-serif;
    background:var(--white);
    color:var(--ink);
    font-weight:400;
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  h1,h2,h3,h4{
    font-family:'Playfair Display', Georgia, serif;
    font-weight:500;
    letter-spacing:-0.01em;
    color:inherit;
    line-height:1.08;
  }
  a{color:inherit; text-decoration:none;}
  img{display:block; max-width:100%;}
  .container{
    max-width:1240px;
    margin:0 auto;
    padding:0 40px;
  }
  @media (max-width:700px){ .container{padding:0 22px;} }

  /* ---------- Reveal-once page load orchestration ---------- */
  .load-fade{opacity:0; transform:translateY(14px); transition:opacity 1s ease, transform 1s ease;}
  .load-fade.show{opacity:1; transform:translateY(0);}

  /* ---------- NAV ---------- */
  header{
    position:fixed; top:0; left:0; right:0; z-index:1000;
    background:transparent;
    transition:background .4s ease, box-shadow .4s ease, padding .3s ease;
    padding:26px 0;
  }
  header.solid{
    background:rgba(12,13,15,0.94);
    backdrop-filter:blur(6px);
    box-shadow:0 1px 0 var(--line);
    padding:14px 0;
  }
  nav{
    display:flex; align-items:center; justify-content:space-between;
    max-width:1240px; margin:0 auto; padding:0 40px;
  }
  @media (max-width:700px){ nav{padding:0 22px;} }
  .brand{display:flex; align-items:center; gap:12px;}
  .brand img{flex-shrink:0;}
  .brand-text{display:flex; flex-direction:column; line-height:1;}
  .brand-text .name{font-family:'Playfair Display', Georgia, serif; font-size:19px; color:var(--white); letter-spacing:0.02em;}
  .brand-text .sub{font-family:'Inter',sans-serif; font-size:9.5px; color:var(--gold-soft); letter-spacing:0.22em; margin-top:5px;}
  .nav-links{display:flex; align-items:center; gap:36px;}
  .nav-links a{
    color:var(--white-dim); font-size:14px; font-weight:400; letter-spacing:0.02em;
    position:relative; padding:4px 0;
  }
  .nav-links a::after{
    content:''; position:absolute; bottom:0; left:0; width:0; height:1px; background:var(--gold);
    transition:width .3s ease;
  }
  .nav-links a:hover::after{width:100%;}
  .btn-gold{
    background:var(--gold); color:var(--black); padding:11px 24px; font-size:13px;
    font-weight:600; letter-spacing:0.04em; border-radius:2px; border:1px solid var(--gold);
    transition:background .3s ease, color .3s ease, transform .2s ease;
    display:inline-block; white-space:nowrap;
  }
  .btn-gold:hover{background:transparent; color:var(--gold);}
  .btn-outline{
    border:1px solid rgba(248,245,239,0.4); color:var(--white); padding:14px 30px;
    font-size:13px; font-weight:500; letter-spacing:0.04em; border-radius:2px;
    transition:border-color .3s ease, background .3s ease;
    display:inline-block;
  }
  .btn-outline:hover{border-color:var(--gold); background:rgba(183,160,107,0.08);}
  .btn-outline-dark{
    border:1px solid rgba(27,28,30,0.3); color:var(--ink); padding:14px 30px;
    font-size:13px; font-weight:500; letter-spacing:0.04em; border-radius:2px;
    transition:border-color .3s ease, background .3s ease; display:inline-block;
  }
  .btn-outline-dark:hover{border-color:var(--gold); background:rgba(183,160,107,0.06);}
  .menu-toggle{display:none; flex-direction:column; gap:5px; cursor:pointer; background:none; border:none; z-index:1100;}
  .menu-toggle span{width:24px; height:1.5px; background:var(--white); display:block;}
  .mobile-menu{
    position:fixed; inset:0; background:var(--black); z-index:1050;
    display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:26px;
    padding:60px; transform:translateX(100%); transition:transform .4s ease;
  }
  .mobile-menu.open{transform:translateX(0);}
  .mobile-menu a{font-family:'Playfair Display', Georgia, serif; font-size:30px; color:var(--white);}
  .mobile-menu .btn-gold{margin-top:10px;}
  @media (max-width:900px){
    .nav-links{display:none;}
    .menu-toggle{display:flex;}
  }

  /* ---------- HERO ---------- */
  .hero{
    position:relative; height:100vh; min-height:640px;
    display:flex; align-items:flex-end;
    background:#000;
  }
  .hero img{
    position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0.72;
  }
  .hero::before{
    content:''; position:absolute; inset:0;
    background:linear-gradient(180deg, rgba(10,11,13,0.55) 0%, rgba(10,11,13,0.15) 35%, rgba(10,11,13,0.85) 100%);
  }
  .hero-content{position:relative; z-index:2; padding-bottom:100px; max-width:760px;}
  .hero-eyebrow{color:var(--white); font-size:14px; letter-spacing:0.18em; margin-bottom:22px; font-weight:600;}
  .hero h1{
    font-family:'Inter',sans-serif; color:var(--white); font-size:clamp(38px,6.2vw,72px); margin-bottom:24px;
    font-weight:800; text-transform:uppercase; line-height:1.0; letter-spacing:-0.01em;
  }
  .hero h1 .hero-accent{color:var(--gold-soft);}
  .hero p{
    color:var(--white-dim); font-size:18px; max-width:480px; line-height:1.6; margin-bottom:38px; font-weight:300;
  }
  .hero-btns{display:flex; gap:18px; flex-wrap:wrap;}
  .scroll-cue{
    position:absolute; bottom:28px; left:50%; transform:translateX(-50%); z-index:2;
    color:var(--white-dim); font-size:11px; letter-spacing:0.2em; display:flex; flex-direction:column; align-items:center; gap:10px;
  }
  .scroll-cue .line{width:1px; height:34px; background:linear-gradient(var(--gold), transparent);}

  /* ---------- SERVICES STRIP ---------- */
  .services-strip{
    background:var(--white); padding:78px 0 88px;
    border-bottom:1px solid rgba(27,28,30,0.08);
  }
  .services-grid{
    display:grid; grid-template-columns:repeat(6,1fr); gap:0;
    border-top:1px solid rgba(27,28,30,0.12);
  }
  .service-item{
    padding:34px 18px 10px; text-align:center; border-right:1px solid rgba(27,28,30,0.12);
    transition:background .3s ease; cursor:pointer;
  }
  .service-item:last-child{border-right:none;}
  .service-item:hover{background:rgba(183,160,107,0.05);}
  .service-item svg{width:34px; height:34px; margin:0 auto 18px; stroke:var(--gold); display:block;}
  .service-item h4{font-size:16px; font-weight:500; letter-spacing:0.01em;}
  @media (max-width:900px){
    .services-grid{grid-template-columns:repeat(2,1fr);}
    .service-item{border-bottom:1px solid rgba(27,28,30,0.12);}
  }

  /* ---------- SECTION GENERIC ---------- */
  section{position:relative;}
  .section-pad{padding:120px 0;}
  @media (max-width:700px){ .section-pad{padding:80px 0;} }
  .eyebrow{
    color:var(--gold); font-size:12.5px; letter-spacing:0.16em; font-weight:600; margin-bottom:18px;
  }
  .section-head{max-width:640px; margin-bottom:60px;}
  .section-head h2{font-size:clamp(30px,4vw,46px); font-weight:400;}
  .section-head p{margin-top:20px; font-size:17px; line-height:1.7; color:#4a4c50; font-weight:300;}
  .rule{width:56px; height:2px; background:var(--gold); margin-bottom:26px;}

  /* ---------- ABOUT-STYLE / WHY-BLOCK on home ---------- */
  .why-block{background:var(--white);}
  .why-grid{display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;}
  .why-grid img{border-radius:2px; width:100%; height:560px; object-fit:cover;}
  .why-list{display:flex; flex-direction:column; gap:0; margin-top:36px;}
  .why-list-item{display:flex; gap:20px; padding:22px 0; border-top:1px solid rgba(27,28,30,0.1);}
  .why-list-item:last-child{border-bottom:1px solid rgba(27,28,30,0.1);}
  .why-list-item .num{font-family:'Playfair Display', Georgia, serif; color:var(--gold); font-size:20px; min-width:32px;}
  .why-list-item h4{font-size:17px; margin-bottom:6px; font-weight:500;}
  .why-list-item p{font-size:14.5px; color:#5a5c60; line-height:1.6; font-weight:300;}
  @media (max-width:900px){
    .why-grid{grid-template-columns:1fr; gap:44px;}
    .why-grid img{height:380px;}
  }

  /* ---------- FEATURED PROJECT (dark, full-bleed pair) ---------- */
  .featured{background:var(--black); color:var(--white);}
  .featured .section-head p{color:var(--silver);}
  .featured .eyebrow{color:var(--gold-soft);}
  .feature-row{display:grid; grid-template-columns:1.1fr 0.9fr; gap:2px; margin-bottom:2px;}
  .feature-row img{width:100%; height:520px; object-fit:cover;}
  .feature-row.rev{grid-template-columns:0.9fr 1.1fr;}
  .feature-cap{
    background:var(--charcoal); display:flex; flex-direction:column; justify-content:center; padding:50px;
  }
  .feature-cap .tag{color:var(--gold-soft); font-size:12px; letter-spacing:0.14em; margin-bottom:14px;}
  .feature-cap h3{color:var(--white); font-size:26px; margin-bottom:14px; font-weight:400;}
  .feature-cap p{color:var(--silver); font-size:14.5px; line-height:1.7; font-weight:300;}
  @media (max-width:900px){
    .feature-row, .feature-row.rev{grid-template-columns:1fr;}
    .feature-row img{height:340px;}
  }

  /* ---------- CTA DARK BANDS ---------- */
  .cta-band{
    background:var(--black); color:var(--white); text-align:center; padding:110px 0;
    position:relative; overflow:hidden;
  }
  .cta-band::before{
    content:''; position:absolute; top:0; left:50%; transform:translateX(-50%); width:1px; height:60px; background:var(--gold);
  }
  .cta-band h2{font-size:clamp(28px,4vw,44px); font-weight:400; margin-bottom:30px; max-width:680px; margin-left:auto; margin-right:auto;}
  .cta-band p{color:var(--silver); max-width:520px; margin:0 auto 40px; font-size:16px; font-weight:300;}

  /* ---------- FOOTER ---------- */
  footer{background:var(--black); color:var(--silver); padding:70px 0 30px;}
  .footer-top{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:50px; padding-bottom:50px; border-bottom:1px solid rgba(255,255,255,0.08);}
  .footer-top h4{color:var(--white); font-size:13px; letter-spacing:0.1em; margin-bottom:20px; font-family:'Inter',sans-serif; font-weight:600;}
  .footer-top a, .footer-top p{display:block; font-size:14px; color:var(--silver); margin-bottom:10px; font-weight:300;}
  .footer-top a:hover{color:var(--gold-soft);}
  .footer-brand .brand-text .name{color:var(--white);}
  .footer-brand p{max-width:280px; line-height:1.7; margin-top:18px; font-size:14px;}
  .footer-bottom{display:flex; justify-content:space-between; align-items:center; padding-top:26px; font-size:12.5px; flex-wrap:wrap; gap:12px;}
  .footer-area{padding:34px 0; border-bottom:1px solid rgba(255,255,255,0.08);}
  .footer-area h4{color:var(--gold); font-size:13px; letter-spacing:0.1em; margin-bottom:16px; font-family:'Inter',sans-serif; font-weight:600;}
  .footer-area-list{display:flex; flex-wrap:wrap; gap:8px 22px; font-size:14px; color:var(--silver); font-weight:300;}
  @media (max-width:800px){
    .footer-top{grid-template-columns:1fr 1fr; row-gap:36px;}
  }

  /* ============ PAGE SYSTEM ============ */
  .page{display:none;}
  .page.active{display:block;}

  /* ---------- INNER HERO (About / Projects / Contact) ---------- */
  .inner-hero{
    position:relative; height:56vh; min-height:400px; display:flex; align-items:center;
    background:#000;
  }
  .inner-hero img{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0.5;}
  .inner-hero::before{content:''; position:absolute; inset:0; background:linear-gradient(180deg, rgba(10,11,13,0.75), rgba(10,11,13,0.5));}
  .inner-hero-content{position:relative; z-index:2;}
  .inner-hero .eyebrow{color:var(--gold-soft);}
  .inner-hero h1{color:var(--white); font-size:clamp(34px,5vw,58px); font-weight:400; max-width:700px;}
  .inner-hero p{color:var(--white-dim); margin-top:20px; max-width:480px; font-size:16px; font-weight:300; line-height:1.6;}

  /* ---------- ABOUT PAGE ---------- */
  .approach-grid{display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center;}
  .approach-grid img{width:100%; height:600px; object-fit:cover; border-radius:2px;}
  .approach-list{display:flex; flex-direction:column;}
  .approach-item{border-top:1px solid rgba(27,28,30,0.1); padding:26px 0;}
  .approach-item:last-child{border-bottom:1px solid rgba(27,28,30,0.1);}
  .approach-item h4{font-size:18px; margin-bottom:8px; display:flex; gap:14px; align-items:baseline; font-weight:500;}
  .approach-item h4 span{color:var(--gold); font-family:'Playfair Display', Georgia, serif; font-size:14px;}
  .approach-item p{font-size:14.5px; color:#5a5c60; line-height:1.65; font-weight:300; padding-left:28px;}

  .owner-section{background:var(--black); color:var(--white);}
  /* Full-bleed owner feature: image spans the full page width, edge to edge */
  .owner-feature{background:var(--black); line-height:0; font-size:0;}
  .owner-feature picture{display:block;}
  .owner-feature img{display:block; width:100%; height:auto; margin:0;}
  .owner-grid{display:grid; grid-template-columns:0.85fr 1.15fr; gap:70px; align-items:center;}
  .owner-grid img{width:100%; height:640px; object-fit:cover; border-radius:2px;}
  .owner-grid .eyebrow{color:var(--gold-soft);}
  .owner-grid h2{color:var(--white); font-size:clamp(28px,3.6vw,42px); font-weight:400; margin-bottom:24px;}
  .owner-grid p{color:var(--silver); font-size:16px; line-height:1.8; margin-bottom:20px; font-weight:300;}
  .owner-sign{font-family:'Playfair Display', Georgia, serif; font-style:italic; font-size:26px; color:var(--gold-soft); margin-top:28px;}
  .owner-title{color:var(--gold-soft); font-size:13px; letter-spacing:0.1em; margin-top:6px;}
  @media (max-width:900px){
    .approach-grid, .owner-grid{grid-template-columns:1fr; gap:40px;}
    .approach-grid img, .owner-grid img{height:360px;}
    .owner-grid{direction:ltr;}
  }

  .standard-band{
    background:var(--charcoal); color:var(--white); text-align:center; padding:100px 0;
  }
  .standard-band .rule{margin-left:auto; margin-right:auto;}
  .standard-band h2{font-family:'Playfair Display', Georgia, serif; font-style:italic; font-weight:400; font-size:clamp(24px,3.4vw,36px); line-height:1.5; color:var(--white-dim); max-width:760px; margin:0 auto;}
  .standard-band h2 em{color:var(--gold-soft); font-style:italic;}

  /* ---------- SERVICES PAGE ---------- */
  .service-block{padding:90px 0; border-bottom:1px solid rgba(27,28,30,0.08);}
  .service-block-inner{display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center;}
  .service-block-inner img{width:100%; height:460px; object-fit:cover; border-radius:2px;}
  .service-block:nth-child(even) .service-block-inner{direction:rtl;}
  .service-block:nth-child(even) .service-block-inner > *{direction:ltr;}
  .service-num{font-family:'Playfair Display', Georgia, serif; color:var(--gold); font-size:15px; margin-bottom:16px;}
  .service-block h3{font-size:clamp(24px,3vw,34px); margin-bottom:18px; font-weight:400;}
  .service-block p{color:#4a4c50; font-size:15.5px; line-height:1.75; margin-bottom:22px; font-weight:300;}
  .service-tags{display:flex; flex-wrap:wrap; gap:10px;}
  .service-tags span{
    font-size:12.5px; border:1px solid rgba(183,160,107,0.4); color:var(--gold); padding:7px 14px; border-radius:20px;
  }
  @media (max-width:900px){
    .service-block-inner, .service-block:nth-child(even) .service-block-inner{grid-template-columns:1fr; direction:ltr; gap:32px;}
    .service-block-inner img{height:320px;}
  }

  /* ---------- PROJECTS PAGE ---------- */
  .filter-bar{display:flex; gap:10px; flex-wrap:wrap; margin-bottom:50px;}
  .filter-btn{
    font-size:13px; padding:10px 20px; border:1px solid rgba(27,28,30,0.18); border-radius:20px;
    background:transparent; cursor:pointer; color:#3a3c40; transition:all .25s ease; font-family:'Inter',sans-serif;
  }
  .filter-btn.active, .filter-btn:hover{background:var(--black); color:var(--white); border-color:var(--black);}
  .gallery-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
  .gallery-item{cursor:pointer; overflow:hidden; border-radius:2px; position:relative;}
  .gallery-item .imgwrap{overflow:hidden; height:320px;}
  .gallery-item img{width:100%; height:100%; object-fit:cover; transition:transform .6s ease;}
  .gallery-item:hover img{transform:scale(1.06);}
  .gallery-cap{padding:18px 2px;}
  .gallery-cap .loc{font-size:12px; color:var(--gold); letter-spacing:0.06em; margin-bottom:6px;}
  .gallery-cap h4{font-size:16.5px; font-weight:500;}
  .gallery-item.hide{display:none;}
  .gallery-item.big .imgwrap{height:460px;}
  @media (max-width:900px){
    .gallery-grid{grid-template-columns:1fr 1fr;}
    .gallery-item .imgwrap, .gallery-item.big .imgwrap{height:260px;}
  }

  /* ---------- LIGHTBOX ---------- */
  .lightbox{
    position:fixed; inset:0; z-index:2000; background:rgba(10,11,13,0.94);
    display:none; align-items:center; justify-content:center; padding:40px;
    opacity:0; transition:opacity .25s ease;
  }
  .lightbox.open{display:flex; opacity:1;}
  .lightbox-inner{max-width:1100px; width:100%; max-height:90vh; display:flex; flex-direction:column; align-items:center;}
  .lightbox-inner img{max-width:100%; max-height:75vh; object-fit:contain; border-radius:2px; box-shadow:0 20px 60px rgba(0,0,0,0.5);}
  .lightbox-cap{margin-top:20px; text-align:center; color:var(--white);}
  .lightbox-cap .loc{color:var(--gold-soft); font-size:12.5px; letter-spacing:0.08em; margin-bottom:6px;}
  .lightbox-cap h4{font-family:'Playfair Display', Georgia, serif; font-size:20px; font-weight:400;}
  .lightbox-close{
    position:absolute; top:24px; right:28px; width:42px; height:42px; border-radius:50%;
    border:1px solid rgba(248,245,239,0.3); background:transparent; color:var(--white);
    font-size:20px; line-height:1; cursor:pointer; transition:border-color .25s ease, background .25s ease;
  }
  .lightbox-close:hover{border-color:var(--gold); background:rgba(182,135,76,0.12);}
  .lightbox-nav{
    position:absolute; top:50%; transform:translateY(-50%); width:46px; height:46px; border-radius:50%;
    border:1px solid rgba(248,245,239,0.3); background:rgba(12,13,15,0.4); color:var(--white);
    font-size:22px; line-height:1; cursor:pointer; transition:border-color .25s ease, background .25s ease;
    display:flex; align-items:center; justify-content:center;
  }
  .lightbox-nav:hover{border-color:var(--gold); background:rgba(182,135,76,0.18);}
  .lightbox-prev{left:20px;}
  .lightbox-next{right:20px;}
  .lightbox-counter{margin-top:10px; font-size:12.5px; color:var(--silver); letter-spacing:0.06em;}
  @media (max-width:560px){
    .gallery-grid{grid-template-columns:1fr;}
  }

  /* ---------- CONTACT PAGE ---------- */
  .contact-grid{display:grid; grid-template-columns:1.1fr 0.9fr; gap:70px;}
  .form-card{background:var(--white); border:1px solid rgba(27,28,30,0.1); padding:46px; border-radius:2px;}
  .form-card h3{font-size:22px; margin-bottom:6px; font-weight:500;}
  .form-card > p{color:#5a5c60; font-size:14px; margin-bottom:32px; font-weight:300;}
  .form-row{display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-bottom:20px;}
  .field{display:flex; flex-direction:column; gap:8px; margin-bottom:20px;}
  .field label{font-size:12.5px; letter-spacing:0.04em; color:#3a3c40; font-weight:500;}
  .field input, .field select, .field textarea{
    border:none; border-bottom:1px solid rgba(27,28,30,0.25); padding:11px 2px; font-size:14.5px;
    font-family:'Inter',sans-serif; background:transparent; color:var(--ink); transition:border-color .25s ease;
  }
  .field input:focus, .field select:focus, .field textarea:focus{outline:none; border-color:var(--gold);}
  .field textarea{resize:vertical; min-height:100px;}
  .file-drop{
    border:1.5px dashed rgba(183,160,107,0.5); border-radius:2px; padding:26px; text-align:center;
    font-size:13.5px; color:#6a6c70; margin-bottom:12px; cursor:pointer; transition:background .25s ease, border-color .25s ease;
  }
  .file-drop:hover, .file-drop.dragover{background:rgba(183,160,107,0.08); border-color:var(--gold);}
  .file-drop strong{color:var(--gold); font-weight:500;}
  .file-drop input[type="file"]{display:none;}
  .file-list{list-style:none; margin:0 0 26px; padding:0;}
  .file-list:empty{margin-bottom:0;}
  .file-list li{
    display:flex; align-items:center; justify-content:space-between; gap:12px;
    padding:9px 12px; border:1px solid rgba(27,28,30,0.12); border-radius:2px; margin-top:8px;
    font-size:13px; color:var(--ink); background:rgba(183,160,107,0.04);
  }
  .file-list li .file-name{overflow:hidden; text-overflow:ellipsis; white-space:nowrap;}
  .file-list li button{
    border:none; background:none; color:#9a1f1f; font-size:13px; cursor:pointer; flex-shrink:0; font-weight:500;
  }
  .submit-btn{
    width:100%; background:var(--black); color:var(--white); border:none; padding:16px; font-size:14px;
    letter-spacing:0.05em; font-weight:600; cursor:pointer; transition:background .3s ease; border-radius:2px;
  }
  .submit-btn:hover{background:var(--gold); color:var(--black);}
  .form-note{font-size:12px; color:#8a8c90; margin-top:14px; text-align:center;}

  .contact-info{display:flex; flex-direction:column; gap:34px;}
  .info-card{background:var(--black); color:var(--white); padding:36px; border-radius:2px;}
  .info-card h4{font-size:12.5px; letter-spacing:0.12em; color:var(--gold-soft); margin-bottom:16px; font-family:'Inter',sans-serif; font-weight:600;}
  .info-card a, .info-card p{display:block; color:var(--white-dim); font-size:15px; margin-bottom:10px; font-weight:300;}
  .info-card a:hover{color:var(--gold-soft);}
  .social-row{display:flex; gap:16px; margin-top:6px;}
  .social-row a{
    width:38px; height:38px; border:1px solid rgba(248,245,239,0.25); border-radius:50%;
    display:flex; align-items:center; justify-content:center; transition:border-color .3s ease, background .3s ease;
  }
  .social-row a:hover{border-color:var(--gold); background:rgba(183,160,107,0.1);}
  .social-row svg{width:16px; height:16px; stroke:var(--white-dim);}
  .footer-top .social-row{margin-top:22px;}
  .footer-top .social-row a{display:flex; margin-bottom:0;}
  .area-card{border:1px solid rgba(27,28,30,0.1); padding:30px; border-radius:2px;}
  .area-card h4{font-size:12.5px; letter-spacing:0.1em; color:var(--gold); margin-bottom:14px; font-weight:600;}
  .area-list{display:flex; flex-wrap:wrap; gap:8px 20px; font-size:14px; color:#4a4c50; font-weight:300;}
  @media (max-width:900px){ .contact-grid{grid-template-columns:1fr;} .form-row{grid-template-columns:1fr;} }
  /* Google reviews */
  .hero-rating{display:inline-flex; align-items:center; gap:10px; margin-top:26px; font-size:13.5px; color:var(--white-dim); letter-spacing:0.02em;}
  .hero-rating .stars{color:var(--gold-soft); letter-spacing:2px; font-size:15px;}
  .hero-rating:hover span:last-child{color:var(--gold-soft);}
  .reviews{background:var(--white-dim);}
  .reviews-score{display:flex; align-items:center; justify-content:center; gap:12px; margin-top:18px; color:#5a5c60; font-size:14.5px;}
  .reviews-score strong{font-family:'Playfair Display', Georgia, serif; font-size:30px; font-weight:500; color:var(--ink);}
  .reviews-score .stars{color:var(--gold); letter-spacing:3px; font-size:18px;}
  .review-grid{display:grid; grid-template-columns:repeat(3,1fr); gap:28px;}
  .review-card{background:var(--white); border:1px solid rgba(27,28,30,0.08); padding:38px 34px 32px; display:flex; flex-direction:column; border-radius:2px;}
  .review-card .stars{color:var(--gold); letter-spacing:3px; font-size:15px; margin-bottom:20px;}
  .review-card blockquote{font-family:'Playfair Display', Georgia, serif; font-size:18px; line-height:1.55; color:var(--ink); font-weight:400; flex:1;}
  .review-card .who{margin-top:26px; padding-top:20px; border-top:1px solid var(--line); font-size:14px; font-weight:500;}
  .review-card .who span{display:block; margin-top:4px; font-size:11.5px; letter-spacing:0.12em; color:var(--gold); font-weight:600; text-transform:uppercase;}
  .reviews-cta{text-align:center; margin-top:50px;}
  .btn-dark-outline{display:inline-block; padding:15px 30px; border:1px solid var(--ink); color:var(--ink); font-size:13px; font-weight:600; letter-spacing:0.08em; text-transform:uppercase; transition:background .3s ease, color .3s ease;}
  .btn-dark-outline:hover{background:var(--ink); color:var(--white);}
  @media (max-width:900px){ .review-grid{grid-template-columns:1fr; gap:20px;} .review-card{padding:30px 26px;} }
  /* Keep each letter separate (no joined fi/ff/fl pairs) */
  h1,h2,h3,h4,blockquote,.review-card blockquote,.reviews-score strong{font-variant-ligatures:no-common-ligatures no-discretionary-ligatures; font-feature-settings:"liga" 0, "dlig" 0;}
  .nav-actions{display:flex; align-items:center; gap:18px;}
  .call-btn{display:none; width:38px; height:38px; border:1px solid var(--gold); border-radius:50%; align-items:center; justify-content:center; background:rgba(183,160,107,0.12);}
  .call-btn svg{width:17px; height:17px; stroke:var(--gold-soft);}
  .call-btn:active{background:rgba(183,160,107,0.3);}
  @media (max-width:900px){ .call-btn{display:flex;} }

  /* ---------- multi-page additions ---------- */
  .nav-links a.current, .mobile-menu a.current{color:#d8c594;}
  a.service-item{display:block; color:inherit; text-decoration:none;}
  .tint{background:var(--white-dim);}
  .service-more{display:inline-block; margin-top:26px;}
  .detail-grid{display:grid; grid-template-columns:repeat(2,1fr); gap:40px 60px;}
  .detail-grid h3{font-size:19px; margin-bottom:10px; font-weight:500;}
  .detail-grid p{font-size:14.5px; color:#5a5c60; line-height:1.7; font-weight:300;}
  .steps-grid{display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:start;}
  .steps-grid .lede{color:#4a4c50; font-size:16px; line-height:1.75; font-weight:300; margin-top:22px; max-width:440px;}
  .area-copy{max-width:720px;}
  .area-copy p{color:#4a4c50; font-size:16px; line-height:1.75; font-weight:300; margin-top:20px;}
  .area-copy .area-list{margin-top:26px;}
  .other-services{display:flex; flex-wrap:wrap; gap:10px; margin-top:40px;}
  .other-services a{font-size:13px; border:1px solid rgba(183,160,107,0.5); color:var(--ink, #1b1c1e); padding:9px 16px; border-radius:20px; text-decoration:none;}
  .other-services a:hover{border-color:var(--gold); color:var(--gold);}
  @media (max-width:900px){
    .detail-grid, .steps-grid{grid-template-columns:1fr; gap:34px;}
  }
  .service-block h2.h3{font-size:clamp(24px,3vw,34px); margin-bottom:18px; font-weight:400;}
