@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#202a2d;--muted:#657174;--green:#679c25;--green-dark:#47751b;--blue:#0560b3;--pale:#f1f6eb;--line:#e3e9dd;--white:#fff;--shadow:0 18px 45px rgba(45,75,24,.09)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 44px));margin:0 auto}.site-header{height:86px;border-bottom:1px solid #edf0ef;background:rgba(255,255,255,.96);position:sticky;top:0;z-index:20;backdrop-filter:blur(12px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{display:block;width:190px;height:auto;max-height:68px;object-fit:contain;object-position:left center}.brand span{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-family:Manrope,sans-serif;font-size:23px;letter-spacing:-1px}.brand small{font-size:9px;letter-spacing:1.4px;font-weight:700;margin-top:4px}.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:600}.main-nav>a:not(.nav-cta):hover,.site-footer a:hover{color:var(--green)}.nav-cta{background:var(--green);color:white;padding:12px 17px;border-radius:7px}.nav-cta:hover,.button-primary:hover{background:var(--green-dark)}.nav-cta span,.service-card a span,.site-footer a span{margin-left:8px}.menu-toggle{display:none;border:1px solid var(--line);border-radius:6px;background:#fff;padding:9px 12px;font:inherit}
.hero{padding:68px 0 76px;background:linear-gradient(110deg,#fcfdf9 0%,#f5f8f0 100%);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1fr 1.03fr;gap:54px;align-items:center}.eyebrow{font-size:11px;letter-spacing:1.8px;font-weight:700;color:var(--green);margin:0 0 17px}.eyebrow-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:8px;vertical-align:1px}.hero h1,.section h2{font-family:Manrope,Arial,sans-serif;letter-spacing:-1.8px;line-height:1.12}.hero h1{font-size:clamp(38px,4.3vw,57px);margin:0 0 22px;font-weight:800}.hero h1 span{color:var(--green)}.hero-text{font-size:17px;color:var(--muted);max-width:470px;line-height:1.75;margin:0 0 28px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:7px;padding:14px 18px;font:600 14px 'DM Sans',sans-serif;cursor:pointer;transition:.2s}.button-primary{background:var(--green);color:white}.button-secondary{background:white;border:1px solid #dce5d2;color:var(--ink)}.button-secondary:hover{border-color:var(--green);color:var(--green)}.wa-icon{font-size:18px}.trust-list{display:flex;flex-wrap:wrap;gap:18px;margin-top:29px;font-size:12px;color:#52605e}.trust-list i{font-style:normal;color:var(--green);font-weight:700;margin-right:5px}
.hero-visual{height:420px;position:relative;overflow:hidden;border-radius:14px;background:#edf2e5;box-shadow:var(--shadow);isolation:isolate}.hero-photo{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.hero-visual:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(180deg,transparent,rgba(20,35,28,.22));z-index:1;pointer-events:none}.visual-caption{position:absolute;z-index:4;bottom:18px;left:18px;right:18px;border-radius:9px;background:rgba(255,255,255,.94);padding:13px 15px;display:flex;align-items:center;gap:12px;box-shadow:0 6px 20px #263c3020}.caption-mark{font-family:Manrope,sans-serif;color:var(--green);font-weight:800;font-size:19px;border-right:1px solid var(--line);padding-right:12px}.visual-caption strong,.visual-caption small{display:block}.visual-caption strong{font-size:12px}.visual-caption small{font-size:11px;color:var(--muted);margin-top:2px}
.section{padding:82px 0}.section-heading{display:grid;grid-template-columns:1.2fr .8fr;gap:45px;align-items:end;margin-bottom:34px}.section h2{font-size:clamp(30px,3vw,39px);margin:0;font-weight:800}.section-heading>p{color:var(--muted);margin:0 0 3px;max-width:400px;font-size:14px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.service-card{border:1px solid var(--line);border-radius:10px;padding:23px 21px 20px;min-height:226px;display:flex;flex-direction:column;background:#fff;transition:transform .2s,box-shadow .2s,border-color .2s}.service-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:#cbdcb6}.service-icon{width:42px;height:42px;border-radius:9px;background:var(--pale);color:var(--green);display:grid;place-items:center;font-size:23px;font-weight:500;margin-bottom:17px}.service-card h3{font-family:Manrope,sans-serif;font-size:16px;line-height:1.35;margin:0 0 9px;letter-spacing:-.3px}.service-card p{font-size:12px;line-height:1.65;color:var(--muted);margin:0 0 18px}.service-card a{font-size:11px;font-weight:700;color:var(--green);margin-top:auto}
.about{background:#f5f8f0}.about-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:90px;align-items:center}.about-stamp{background:#fff;border:1px solid #e3eadc;border-radius:12px;padding:34px;text-align:center;max-width:290px;box-shadow:var(--shadow)}.about-stamp p{font-family:Manrope,sans-serif;font-weight:800;font-size:22px;line-height:1.2;letter-spacing:1px;margin:15px 0;color:var(--blue)}.about-stamp span{font-size:8px;font-weight:700;letter-spacing:1.4px;color:var(--green)}.about-logo{display:block;width:100%;max-width:230px;height:auto;margin:0 auto 14px}.about-copy>p:not(.eyebrow){font-size:15px;color:var(--muted);line-height:1.85;max-width:630px}.about-points{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:27px}.about-points span{font-size:12px;font-weight:600;display:flex;flex-direction:column;gap:9px}.about-points b{font-family:Manrope,sans-serif;font-size:21px;color:var(--green)}
.contact-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start}.contact h2{margin-bottom:20px}.contact-intro{color:var(--muted);font-size:14px;line-height:1.8;max-width:430px;margin-bottom:25px}.button-wide{width:100%}.small-note{font-size:11px;color:var(--muted);margin-top:13px}.contact-form{border:1px solid var(--line);border-radius:12px;padding:28px;box-shadow:0 8px 30px rgba(45,75,24,.04)}.contact-form h3{font-family:Manrope,sans-serif;font-size:21px;margin:0 0 20px}.contact-form label{display:block;font-size:12px;font-weight:700;margin:13px 0 6px}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #dce5d2;border-radius:6px;background:#fff;padding:12px 13px;font:14px 'DM Sans',sans-serif;color:var(--ink);outline:none}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px #679c2518}.contact-form textarea{resize:vertical}.contact-form button{margin-top:18px}.form-note,.form-status{font-size:11px;color:var(--muted);line-height:1.5;margin:10px 0 0}.site-footer{background:#fff;color:var(--ink);padding:29px 0 18px;border-top:1px solid var(--line)}.footer-row{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:23px}.footer-brand strong{color:var(--ink)}.footer-brand small{color:var(--muted)}.footer-row>p{font-size:12px;color:var(--muted)}.footer-row>a:last-child{font-size:13px;color:var(--green);font-weight:700}.footer-bottom{border-top:1px solid var(--line);padding-top:15px;display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:10px}
@media(max-width:900px){.hero-grid{gap:28px}.hero-visual{height:360px}.service-grid{grid-template-columns:repeat(2,1fr)}.about-grid{gap:40px}.contact-grid{gap:35px}.main-nav{gap:18px}.nav-cta{padding:11px 12px}}
@media(max-width:650px){.container{width:min(100% - 32px,520px)}.site-header{height:72px}.brand img{width:170px;height:auto;max-height:54px}.brand strong{font-size:20px}.brand small{font-size:8px}.menu-toggle{display:none}.main-nav{display:flex;position:static;background:transparent;padding:0;border:0;box-shadow:none;flex-direction:row;align-items:center;gap:13px;overflow-x:auto;white-space:nowrap;font-size:12px}.main-nav .nav-cta{display:none}.nav-cta{text-align:center}.hero{padding:46px 0 50px}.hero-grid{grid-template-columns:1fr;gap:31px}.hero h1{font-size:40px}.hero-text{font-size:15px}.hero-actions{flex-direction:column;align-items:stretch}.trust-list{gap:10px 15px}.hero-visual{height:315px}.section{padding:58px 0}.section-heading{grid-template-columns:1fr;gap:15px;margin-bottom:25px}.section h2{font-size:31px}.service-grid{gap:11px}.service-card{padding:17px 14px;min-height:230px}.service-card h3{font-size:14px}.service-card p{font-size:11px}.service-card a{font-size:10px}.service-icon{width:37px;height:37px;margin-bottom:13px}.about-grid,.contact-grid{grid-template-columns:1fr;gap:30px}.about-stamp{margin:0 auto;padding:25px;max-width:260px}.about-points{grid-template-columns:1fr;gap:13px}.about-points span{flex-direction:row;align-items:center}.about-points b{min-width:32px}.contact-form{padding:21px 17px}.footer-row{align-items:flex-start;flex-wrap:wrap}.footer-row>p{order:3;width:100%;margin:0}.footer-bottom{flex-direction:column;gap:6px}.visual-caption{left:12px;right:12px;bottom:12px}.visual-caption strong{font-size:11px}}

/* Gallery feature */
.gallery-feature{display:grid;grid-template-columns:1.15fr .85fr;gap:34px;align-items:center;border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;box-shadow:var(--shadow)}
.gallery-feature>img{display:block;width:100%;height:340px;object-fit:cover}
.gallery-feature>div{padding:28px 32px 28px 0}
.gallery-feature h3{font-size:clamp(23px,2.5vw,32px);line-height:1.2;margin:8px 0 12px}
.gallery-feature p:not(.eyebrow){font-size:14px;color:var(--muted);margin-bottom:22px}
@media(max-width:650px){.gallery-feature{grid-template-columns:1fr;gap:0}.gallery-feature>img{height:230px}.gallery-feature>div{padding:22px}}

/* Keep the brand mark proportional and remove unused gallery layout. */
.brand img{object-fit:contain}
@media(max-width:650px){.nav-wrap{gap:12px}.brand{min-width:0}.brand img{width:132px;max-height:48px}.main-nav{gap:12px;max-width:calc(100% - 145px);font-size:11px}.main-nav>a:not(.nav-cta){flex:0 0 auto}.footer-brand img{width:170px;max-height:60px}.footer-row{align-items:center}}


/* Email enquiry option and hidden form transport */
.button-email { background: #fff; color: #176000; border: 1px solid #176000; margin-top: 10px; }
.button-email:hover { background: #f4f8f1; }
.website-trap { position: absolute !important; left: -10000px !important; width: 1px !important; height: 1px !important; opacity: 0 !important; }
.form-submit-frame { position: absolute; width: 1px; height: 1px; border: 0; opacity: 0; pointer-events: none; }

/* Enquiry form actions */
#contact { scroll-margin-top: 10px; }
.form-actions { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 18px; }
.form-actions .button { margin-top: 0; }
.button-whatsapp { background: #168b4b; color: #fff; border: 1px solid #168b4b; }
.button-whatsapp:hover { background: #11763f; }
@media(max-width:650px) {
  #contact { scroll-margin-top: 4px; padding-top: 22px; }
  .contact-grid { gap: 14px; }
  .contact h2 { margin-bottom: 8px; font-size: 27px; }
  .contact-intro { margin-bottom: 10px; line-height: 1.5; }
  .contact-form { padding: 14px 15px; }
  .contact-form h3 { font-size: 18px; margin-bottom: 8px; }
  .contact-form label { margin: 7px 0 4px; }
  .contact-form input, .contact-form select, .contact-form textarea { padding: 8px 10px; }
  .contact-form textarea { min-height: 58px; }
  .form-actions { grid-template-columns: 1fr 1fr; gap: 8px; margin-top: 12px; }
  .form-actions .button { padding: 11px 8px; font-size: 12px; }
}
