:root{--black:#080907;--charcoal:#11130f;--green:#1d2d22;--gold:#d69b1f;--cream:#f5f0e7;--sand:#eadfca;--text:#1b1d1a;--muted:#6b7168;--shadow:0 24px 70px rgba(0,0,0,.22);--container:min(1180px,calc(100% - 40px))}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--cream);color:var(--text);-webkit-font-smoothing:antialiased}body.menu-open{overflow:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:var(--container);margin:0 auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:100;padding:14px 0;transition:.3s}.site-header.solid{background:rgba(8,9,7,.84);backdrop-filter:blur(16px);border-bottom:1px solid rgba(214,155,31,.2)}.nav-wrap{width:min(1240px,calc(100% - 28px));margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:10px 14px;border-radius:28px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(16px)}.brand{display:flex;align-items:center;gap:.85rem;min-width:0;flex:0 0 auto}.brand-logo{width:182px;height:64px;border-radius:20px;background:#fff;padding:6px;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 1px rgba(214,155,31,.35),0 22px 45px rgba(0,0,0,.35);overflow:hidden}.brand-logo img{width:100%;height:100%;object-fit:contain}.brand-text{display:flex;flex-direction:column;line-height:1}.brand-text strong{color:#fff;font-weight:900}.brand-text em{font-style:normal;color:rgba(255,255,255,.68);font-size:.66rem;letter-spacing:.17em;text-transform:uppercase;margin-top:.24rem}.nav-links{display:flex;align-items:center;gap:1.2rem;color:rgba(255,255,255,.84);font-weight:800}.nav-links a:not(.nav-cta):hover{color:#fff}.nav-cta{background:linear-gradient(135deg,#ffd66f,#d69b1f 55%,#a66c10);color:#130e04;padding:.9rem 1.1rem;border-radius:999px}.menu-btn{display:none;border:0;background:#fff;color:#111;border-radius:14px;padding:.75rem .95rem;font-weight:900;white-space:nowrap}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;padding:1rem 1.25rem;font-weight:900;border:1px solid transparent;transition:.25s}.btn:hover{transform:translateY(-2px)}.btn.primary{background:linear-gradient(135deg,#ffd66f,#d69b1f 55%,#a66c10);color:#130e04;box-shadow:0 18px 40px rgba(214,155,31,.25)}.btn.ghost{border-color:rgba(255,255,255,.3);color:#fff;background:rgba(255,255,255,.07)}.btn.dark{background:#111;color:#fff;border-color:rgba(214,155,31,.28)}.eyebrow{margin:0;color:var(--gold);font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;font-weight:900}.section{padding:6.5rem 0}.section-dark{background:radial-gradient(circle at 18% 12%,rgba(214,155,31,.15),transparent 28%),linear-gradient(135deg,#080907,#172218 58%,#0c0f0b);color:#fff}.hero{min-height:105vh;display:flex;align-items:center;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:24%;background:linear-gradient(transparent,var(--cream));pointer-events:none}.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:.92fr 1.08fr;gap:4rem;align-items:center;padding-top:7rem}.hero h1{font-family:"Playfair Display",Georgia,serif;font-size:clamp(3.7rem,7.5vw,7.8rem);line-height:.92;letter-spacing:-.06em;margin:.85rem 0 1.15rem;max-width:790px}.hero-lead{font-size:1.16rem;line-height:1.85;color:rgba(255,255,255,.84);max-width:660px;border-left:3px solid var(--gold);padding-left:1rem}.hero-actions{display:flex;flex-wrap:wrap;gap:1rem;margin-top:2rem}.trust-row{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.3rem}.trust-row span{border:1px solid rgba(214,155,31,.22);background:rgba(0,0,0,.25);padding:.75rem .95rem;border-radius:999px;color:rgba(255,255,255,.82);font-weight:800;font-size:.9rem}.hero-media{position:relative;min-height:700px}.hero-image{position:absolute;margin:0;overflow:hidden;border-radius:38px;box-shadow:var(--shadow);border:1px solid rgba(214,155,31,.2)}.hero-image img{width:100%;height:100%;object-fit:cover}.hero-image.main{right:0;top:55px;width:76%;height:74%;transform:rotate(1.2deg)}.hero-image.small{width:42%;height:32%;left:0}.hero-image.top{top:24px;transform:rotate(-4deg)}.hero-image.bottom{bottom:46px;transform:rotate(4deg)}.hero-badge{position:absolute;right:6%;bottom:18px;background:linear-gradient(135deg,rgba(0,0,0,.86),rgba(42,51,38,.86));border:1px solid rgba(214,155,31,.34);padding:1rem 1.15rem;border-radius:20px;box-shadow:var(--shadow);transform:rotate(-1.5deg)}.hero-badge strong,.hero-badge span{display:block}.hero-badge span{margin-top:.25rem;color:rgba(255,255,255,.7);font-size:.9rem}.service-strip{background:#0a0a08;border-top:1px solid rgba(214,155,31,.18);border-bottom:1px solid rgba(214,155,31,.18);color:#fff}.strip-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1rem;padding:1.1rem 0}.strip-grid span{text-align:center;border:1px solid rgba(214,155,31,.16);background:linear-gradient(135deg,rgba(214,155,31,.14),rgba(255,255,255,.035));padding:.85rem 1rem;border-radius:999px;font-weight:800;font-size:.9rem}.section-heading{max-width:880px;margin-bottom:2.4rem}.section-heading.split{max-width:none;display:grid;grid-template-columns:1.1fr .9fr;gap:2rem;align-items:end}.section-heading h2,.about-copy h2,.contact-info h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2.5rem,5vw,4.8rem);line-height:1;letter-spacing:-.055em;margin:.75rem 0 0}.section-heading p,.about-copy p,.contact-info p{line-height:1.8;color:var(--muted)}.section-dark .about-copy p{color:rgba(255,255,255,.76)}.services-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.service-card{background:linear-gradient(180deg,#fff,#f7efe0);border:1px solid rgba(214,155,31,.14);border-radius:34px;padding:1.6rem;box-shadow:0 28px 70px rgba(18,22,17,.12);min-height:260px;transition:.25s}.service-card:hover{transform:translateY(-6px);box-shadow:0 35px 90px rgba(18,22,17,.18)}.service-card span,.process-card span{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(135deg,#111,#26392c);color:var(--gold);font-weight:900}.service-card h3,.process-card h3{color:var(--green);font-size:1.18rem;margin:1.2rem 0 .7rem}.service-card p,.process-card p{line-height:1.75;color:var(--muted);margin:0}.service-card.highlight{grid-column:span 2;background:linear-gradient(135deg,#111,#26392c);color:#fff}.service-card.highlight h3,.service-card.highlight p{color:#fff}.portfolio-section{background:linear-gradient(180deg,#efe7d9,#f7f1e6)}.portfolio-feature{display:grid;grid-template-columns:.85fr 1fr .72fr;gap:1rem;align-items:stretch;margin-bottom:1rem}.feature-photo,.feature-copy{border-radius:34px;overflow:hidden;box-shadow:0 24px 60px rgba(0,0,0,.16)}.feature-photo img{width:100%;height:100%;object-fit:cover}.feature-photo.portrait{aspect-ratio:4/5}.feature-photo.square{aspect-ratio:1/1;align-self:end}.feature-copy{background:linear-gradient(135deg,#111,#1f2d23);color:#fff;padding:2rem;display:flex;flex-direction:column;justify-content:center}.feature-copy h3{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2rem,4vw,4rem);line-height:1;letter-spacing:-.05em;margin:.8rem 0 1rem}.feature-copy p{line-height:1.8;color:rgba(255,255,255,.73)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.gallery-card{position:relative;border:0;padding:0;background:#111;border-radius:30px;overflow:hidden;box-shadow:0 20px 55px rgba(0,0,0,.15);cursor:pointer}.gallery-card.portrait{aspect-ratio:4/5}.gallery-card.square{aspect-ratio:1/1}.gallery-card.wide{grid-column:span 2;aspect-ratio:16/10}.gallery-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:.35s}.gallery-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.62));pointer-events:none}.gallery-card span{position:absolute;left:14px;bottom:14px;z-index:2;background:linear-gradient(135deg,#fff,#f0d289);color:#111;padding:.7rem .9rem;border-radius:999px;font-weight:900}.gallery-card:hover img{transform:scale(1.06)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:center}.ticks{padding:0;margin:1.4rem 0 0;display:grid;gap:.8rem}.ticks li{list-style:none;display:flex;gap:.8rem;color:#fff;font-weight:800}.ticks li:before{content:"✓";width:24px;height:24px;border-radius:50%;background:var(--gold);color:#111;display:grid;place-items:center;flex:0 0 24px}.about-collage{position:relative;min-height:620px}.about-collage img{position:absolute;object-fit:cover;border-radius:34px;box-shadow:var(--shadow);border:1px solid rgba(214,155,31,.18)}.collage-a{left:0;top:20px;width:58%;height:58%;transform:rotate(-2deg)}.collage-b{right:0;top:0;width:42%;height:42%;transform:rotate(3deg)}.collage-c{right:40px;bottom:20px;width:52%;height:48%;transform:rotate(-1deg)}.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.process-card{background:#fff;border-radius:34px;padding:1.6rem;border:1px solid rgba(214,155,31,.14);box-shadow:0 24px 60px rgba(18,22,17,.1)}.contact-section{background:linear-gradient(135deg,#0b0c09,#172218);color:#fff}.contact-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:1.3rem;align-items:start}.contact-info p{color:rgba(255,255,255,.74)}.contact-list{display:grid;gap:.8rem;margin-top:1.4rem}.contact-list a,.contact-list div{display:block;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);border-radius:20px;padding:1rem}.contact-list span{display:block;color:rgba(255,255,255,.55);text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:900;margin-bottom:.3rem}.contact-list strong{color:#fff}.quote-form{background:#fff;color:var(--text);border-radius:34px;padding:2rem;box-shadow:var(--shadow);display:grid;gap:1rem}.quote-form label{display:grid;gap:.55rem;font-weight:800}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid rgba(20,25,20,.13);background:#fbf8f2;border-radius:18px;padding:1rem;outline:none}.quote-form textarea{min-height:150px;resize:vertical}.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 4px rgba(214,155,31,.18)}.footer{background:#080908;color:#fff;border-top:1px solid rgba(214,155,31,.18);padding:4rem 0 2rem}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem}.footer-logo{width:260px;max-width:100%;height:auto;background:#fff;border-radius:18px;padding:10px;box-shadow:0 18px 40px rgba(0,0,0,.3)}.footer p,.footer a{line-height:1.85;color:rgba(255,255,255,.72)}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:2rem;padding-top:1rem;color:rgba(255,255,255,.5)}.whatsapp-float{position:fixed;right:18px;bottom:18px;z-index:90;width:62px;height:62px;border-radius:22px;background:linear-gradient(135deg,#25d366,#128c3e);color:#fff;display:grid;place-items:center;font-size:1.6rem;font-weight:900;box-shadow:0 18px 45px rgba(37,211,102,.35)}.lightbox{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.88);display:none;align-items:center;justify-content:center;padding:1rem}.lightbox.open{display:flex}.lightbox img{max-width:94vw;max-height:88vh;border-radius:26px;box-shadow:var(--shadow)}.lightbox button{position:absolute;top:18px;right:18px;width:44px;height:44px;border:0;border-radius:50%;font-size:1.2rem;font-weight:900}.reveal{opacity:0;transform:translateY(26px);transition:.7s ease}.reveal.in{opacity:1;transform:none}@media(max-width:1080px){.hero-grid,.about-grid,.contact-grid,.section-heading.split{grid-template-columns:1fr}.hero-media{min-height:560px}.services-grid,.process-grid{grid-template-columns:repeat(2,1fr)}.strip-grid{grid-template-columns:repeat(2,1fr)}.portfolio-feature{grid-template-columns:1fr 1fr}.feature-copy{grid-column:1/-1;order:-1}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:860px){.nav-wrap{gap:.65rem}.brand{max-width:calc(100% - 92px)}.brand-logo{width:150px;height:52px;padding:5px}.brand-text{display:none}.menu-btn{display:inline-flex;margin-left:auto}.nav-links{position:fixed;top:82px;left:14px;right:14px;display:none;flex-direction:column;align-items:flex-start;background:rgba(8,9,7,.96);border:1px solid rgba(214,155,31,.16);border-radius:24px;padding:1rem}.nav-links.open{display:flex}.nav-cta{width:100%;text-align:center}.hero{min-height:auto;padding-top:3rem}.hero h1{font-size:3.55rem}.hero-media{min-height:460px}.gallery-card.wide{grid-column:auto;aspect-ratio:4/5}}@media(max-width:620px){.section{padding:4.4rem 0}.nav-wrap{padding:8px 10px;border-radius:22px}.brand-logo{width:118px;height:42px;border-radius:14px}.menu-btn{padding:.72rem .9rem;font-size:.92rem}.hero-grid{padding-top:6.7rem;gap:2rem}.hero h1{font-size:3.1rem}.hero-lead{font-size:1rem}.hero-media{min-height:420px}.hero-image.main{width:76%;height:58%}.hero-image.small{width:42%;height:30%}.hero-badge{left:16px;right:16px;bottom:-6px}.strip-grid,.services-grid,.portfolio-feature,.gallery-grid,.process-grid,.footer-grid{grid-template-columns:1fr}.service-card.highlight{grid-column:auto}.feature-photo.square,.feature-photo.portrait,.gallery-card.square,.gallery-card.portrait,.gallery-card.wide{aspect-ratio:4/5}.about-collage{min-height:480px}.collage-a{left:0;top:20px;width:62%;height:52%}.collage-b{right:0;top:0;width:42%;height:34%}.collage-c{right:24px;bottom:12px;width:54%;height:40%}.quote-form{padding:1.35rem}.footer-logo{width:190px}}


/* IMAGE LOADING SAFETY FIX */
.hero{
  background:
    linear-gradient(90deg,rgba(8,9,7,.95),rgba(8,9,7,.62)),
    url('../images/landscape-18.jpg') center/cover no-repeat !important;
}
.hero-media{display:block !important;visibility:visible !important;opacity:1 !important}
.hero-image img,.feature-photo img,.gallery-card img,.about-collage img,.footer-logo,.brand-logo img{
  display:block !important;
  opacity:1 !important;
  visibility:visible !important;
}
.gallery-card img,.hero-image img,.feature-photo img{
  object-position:center center;
}


/* =========================
   GREEN THEME + CLEAN COPY PASS
   ========================= */
:root{
  --bg:#f2f6ef;
  --text:#152218;
  --muted:#55675a;
  --green:#1f6a3a;
  --green-2:#295b38;
  --green-3:#4f8f5e;
  --accent:#dce9d8;
  --shadow:0 30px 80px rgba(19,41,25,.14);
}
body{background:var(--bg);color:var(--text)}
.eyebrow{color:var(--green);}
.site-header.solid .nav-wrap,
.nav-wrap{border-color:rgba(31,106,58,.12)}
.brand{color:var(--text)}
.menu-btn,.btn.ghost,.nav-cta{border-color:rgba(31,106,58,.16)}
.menu-btn,.nav-cta{background:rgba(255,255,255,.72)}
.btn.primary{background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff}
.btn.primary:hover,.btn.dark:hover{filter:brightness(1.03)}
.btn.ghost{background:#fff;color:var(--green)}
.btn.dark{background:linear-gradient(135deg,var(--green),var(--green-2));color:#fff}
.hero{
  background:
    linear-gradient(100deg,rgba(12,20,13,.94),rgba(12,20,13,.52)),
    url('../images/landscape-18.jpg') center/cover no-repeat !important;
}
.hero:before{background:radial-gradient(circle at top right,rgba(111,170,118,.22),transparent 34%),radial-gradient(circle at bottom left,rgba(65,122,72,.22),transparent 30%)}
.hero-badge{background:linear-gradient(135deg,rgba(20,45,26,.92),rgba(32,83,45,.84));border-color:rgba(135,205,146,.24)}
.service-strip{background:#0e1710;border-top:1px solid rgba(95,154,104,.18);border-bottom:1px solid rgba(95,154,104,.18)}
.strip-grid span{border-color:rgba(113,173,121,.15);background:linear-gradient(135deg,rgba(82,153,93,.18),rgba(255,255,255,.03))}
.service-card{background:linear-gradient(180deg,#ffffff,#f0f6ee);border-color:rgba(31,106,58,.10);box-shadow:0 28px 70px rgba(19,41,25,.10)}
.service-card span,.process-card span{background:linear-gradient(135deg,#14301b,#2d6d40);color:#e7f6ea}
.service-card h3,.process-card h3{color:var(--green)}
.service-card.highlight{background:linear-gradient(135deg,#163221,#295c38)}
.portfolio-section{background:linear-gradient(180deg,#edf4ea,#f7fbf5)}
.feature-copy{background:linear-gradient(135deg,#122418,#244b31)}
.gallery-card span{background:linear-gradient(135deg,#fff,#d9eedc);color:#163020}
.section-dark,.contact-section,.footer{background:linear-gradient(135deg,#0f1610,#172319)}
.quote-form input:focus,.quote-form select:focus,.quote-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 4px rgba(31,106,58,.14)}
.footer{border-top-color:rgba(95,154,104,.18)}
.footer-bottom{border-top-color:rgba(255,255,255,.08)}
.whatsapp-float{box-shadow:0 18px 45px rgba(37,211,102,.25)}
/* remove overt meta-styling look in feature descriptions */
.feature-copy .eyebrow{display:none}

/* reveal safety for small screens */
@media(max-width:760px){
  .reveal{opacity:1 !important;transform:none !important;transition:none !important}
  .gallery-grid{display:grid !important;grid-template-columns:1fr !important;gap:1rem !important}
  .gallery-card,.gallery-card.portrait,.gallery-card.square,.gallery-card.wide{display:block !important;grid-column:auto !important;aspect-ratio:4/5 !important;overflow:hidden}
  .gallery-card img{position:absolute !important;inset:0 !important;width:100% !important;height:100% !important;opacity:1 !important;visibility:visible !important;display:block !important;object-fit:cover !important}
  .portfolio-feature{grid-template-columns:1fr !important}
  .feature-photo,.feature-photo.portrait,.feature-photo.square{display:block !important;aspect-ratio:4/5 !important}
}
