
:root{
  --red:#d7192a;
  --red-dark:#a80f1c;
  --green:#08743d;
  --green-dark:#064f2b;
  --gold:#c8a96a;
  --ink:#131a16;
  --muted:#687076;
  --cream:#faf8f2;
  --line:#e7e1d2;
  --white:#fff;
  --shadow:0 22px 70px rgba(5,35,19,.13);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Tahoma,Arial,sans-serif;line-height:1.75;color:var(--ink);background:#fff}
a{text-decoration:none;color:inherit}
.container{width:min(1180px,92%);margin:auto}

/* Top contact bar */
.top-contact{
  background:linear-gradient(90deg,var(--green-dark),var(--green));
  color:#fff;font-weight:800;font-size:14px
}
.top-contact .container{
  min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap
}
.top-contact a{color:#fff}

/* Header */
.header{
  position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);
  backdrop-filter:blur(14px);border-bottom:1px solid rgba(231,225,210,.9)
}
.nav-wrap{height:86px;display:flex;align-items:center;justify-content:space-between;gap:16px}
.brand{display:flex;gap:12px;align-items:center}
.mark.logo-holder{
  width:86px;height:72px;background:#fff;border:1px solid var(--line);
  border-radius:20px;display:grid;place-items:center;box-shadow:0 10px 32px rgba(0,0,0,.08);overflow:hidden
}
.mark.logo-holder img{width:100%;height:100%;object-fit:contain;padding:4px}
.brand strong{display:block;color:var(--green-dark);font-size:23px;line-height:1.15}
.brand small{display:block;color:var(--muted);font-size:12px;direction:ltr}
.nav{display:flex;gap:16px;align-items:center}
.nav a{font-weight:900;color:#24322b;font-size:15px;position:relative}
.nav a:hover,.nav .active{color:var(--red)}
.nav a.active:after,.nav a:hover:after{
  content:"";position:absolute;right:0;left:0;bottom:-10px;height:3px;background:var(--red);border-radius:99px
}
.cta{
  background:linear-gradient(135deg,var(--red),var(--red-dark));
  color:#fff!important;padding:12px 20px;border-radius:999px;box-shadow:0 12px 30px rgba(215,25,42,.25)
}
.menu{display:none;background:var(--green);color:#fff;border:0;border-radius:14px;font-size:25px;padding:9px 13px}
.mobile{display:none;padding:14px;border-top:1px solid var(--line);background:#fff}
.mobile a{display:block;padding:11px;font-weight:900}

/* Hero */
.hero,.inner{
  background:
    radial-gradient(circle at 15% 18%,rgba(255,255,255,.16),transparent 24%),
    linear-gradient(135deg,#06140c 0%,#0b4f2b 54%,#92131f 100%);
  color:#fff;position:relative;overflow:hidden
}
.hero:after{
  content:"";position:absolute;inset:auto -10% -30% -10%;height:46%;
  background:rgba(255,255,255,.08);filter:blur(45px);transform:rotate(-4deg)
}
.hero-grid{position:relative;z-index:1;min-height:680px;display:grid;grid-template-columns:1.1fr .9fr;gap:46px;align-items:center}
.badge{
  display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);
  border-radius:999px;padding:8px 15px;font-weight:900;color:#fff
}
.hero h1,.inner h1{font-size:58px;line-height:1.12;margin:22px 0 16px}
.hero p,.inner p{font-size:20px;color:rgba(255,255,255,.86);max-width:760px}
.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;border:0;border-radius:999px;
  padding:14px 23px;font-weight:900;cursor:pointer
}
.red{background:linear-gradient(135deg,var(--red),var(--red-dark));color:#fff;box-shadow:0 14px 34px rgba(215,25,42,.25)}
.green{background:#25d366;color:#fff;box-shadow:0 14px 34px rgba(37,211,102,.25)}
.outline{border:1px solid rgba(255,255,255,.45);color:#fff;background:rgba(255,255,255,.05)}
.trust{display:flex;gap:10px;flex-wrap:wrap;margin-top:25px}
.trust span{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:9px 13px;font-weight:800}

.hero-card{
  background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);border-radius:34px;
  padding:28px;text-align:center;box-shadow:var(--shadow);backdrop-filter:blur(16px)
}
.hero-logo{
  width:min(330px,78vw);height:auto;margin:0 auto 20px;display:block;
  background:#fff;border-radius:28px;padding:14px;box-shadow:0 22px 60px rgba(0,0,0,.18)
}
.hero-card h2{font-size:34px;margin:10px 0;color:#fff}
.hero-card p{font-size:16px;margin:0;color:rgba(255,255,255,.82)}
.hero-card strong{display:inline-block;margin-top:15px;font-size:30px;background:#fff;color:var(--green-dark);padding:10px 20px;border-radius:999px;direction:ltr}

/* Sections */
.inner{padding:90px 0}.inner .container{position:relative}
.section{padding:82px 0}.light{background:var(--cream)}.dark{background:#0a1510;color:#fff}
.head{text-align:center;max-width:780px;margin:0 auto 44px}
.head span{display:inline-block;background:#eff8f2;color:var(--green);border-radius:999px;padding:8px 15px;font-weight:900}
.dark .head span{background:rgba(255,255,255,.12);color:#fff}
.head h2{font-size:43px;margin:13px 0;color:inherit}
.head p{color:var(--muted)}.dark .head p{color:rgba(255,255,255,.72)}

.quick{background:var(--cream)}
.quick-box{
  transform:translateY(-42px);background:#fff;border:1px solid var(--line);border-radius:30px;
  box-shadow:var(--shadow);padding:28px;display:grid;grid-template-columns:.8fr 1.2fr;gap:20px;align-items:center
}
.quick-form{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:10px}
input,select,textarea{width:100%;padding:14px;border:1px solid var(--line);border-radius:14px;font-family:inherit;background:#fff}
.grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.card,.review,.post{
  background:#fff;border:1px solid var(--line);border-radius:25px;padding:24px;
  box-shadow:0 10px 30px rgba(0,0,0,.04)
}
.card:hover{border-color:rgba(215,25,42,.32);transform:translateY(-5px);transition:.25s;box-shadow:var(--shadow)}
.icon{font-size:43px}
.card h3{color:var(--green-dark);margin:10px 0}
.card p{color:var(--muted);font-size:15px}
.card a,.post a{color:var(--red);font-weight:900}

.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.area-grid div{
  background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:25px;padding:27px
}
.area-grid h3{font-size:27px;margin:0 0 8px}.area-grid p{color:rgba(255,255,255,.75)}
.white-area div{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
.white-area p{color:var(--muted)!important}

.two,.service-grid,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}
.two h2,.contact-grid h2{font-size:42px;margin-top:14px}
.check{list-style:none;padding:0}
.check li{background:var(--cream);margin:10px 0;padding:13px 16px;border-radius:15px;font-weight:800}
.process,.side{
  background:linear-gradient(135deg,var(--green),var(--green-dark));color:#fff;border-radius:30px;padding:31px;box-shadow:var(--shadow)
}
.reviews{background:var(--cream)}
.review-grid,.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.review span{color:#f5a400;font-size:23px}.review p{color:#34403a}
.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}
.gallery-grid div{
  height:190px;background:linear-gradient(135deg,#e9f7ee,#fff,#ffe8ea);
  border:1px dashed rgba(20,115,59,.25);border-radius:25px;display:grid;place-items:center;font-weight:900;color:var(--green-dark)
}
.dark .post{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.12)}
.dark .post h3{color:#fff}.dark .post p{color:rgba(255,255,255,.72)}
.contact-card{display:grid;gap:12px}
.contact-card a{background:var(--cream);padding:15px;border-radius:15px;font-weight:900;color:var(--green-dark);direction:ltr;text-align:right}
.form{background:var(--cream);border-radius:28px;padding:25px;display:grid;gap:12px}
textarea{min-height:130px}.map iframe{width:100%;height:260px;border:0;border-radius:23px;margin-top:20px}
.float{position:fixed;left:22px;bottom:22px;width:62px;height:62px;border-radius:50%;background:#25d366;color:#fff;display:grid;place-items:center;font-size:32px;z-index:60;box-shadow:0 16px 35px rgba(37,211,102,.4)}
.footer{background:#06100a;color:#fff;padding:50px 0 16px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:30px}.footer a{display:block;color:rgba(255,255,255,.72);margin:7px 0}.footer p{color:rgba(255,255,255,.55)}
.copy{text-align:center;border-top:1px solid rgba(255,255,255,.1);padding-top:16px;margin-top:30px;color:rgba(255,255,255,.45)}
@media(max-width:900px){
  .top-contact .container{justify-content:center;text-align:center;padding:8px 0}
  .nav{display:none}.menu{display:block}.mobile.open{display:block}
  .hero-grid,.quick-box,.two,.service-grid,.contact-grid{grid-template-columns:1fr}
  .hero-grid{min-height:auto;padding:80px 0}.hero h1,.inner h1{font-size:36px}.hero p,.inner p{font-size:17px}
  .quick-box{transform:none}.quick{padding:25px 0}.quick-form,.grid4,.area-grid,.review-grid,.blog-grid,.gallery-grid,.foot-grid{grid-template-columns:1fr}
  .section{padding:58px 0}.head h2,.two h2,.contact-grid h2{font-size:30px}
  .mark.logo-holder{width:68px;height:58px}
}
