@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap');

:root{--green:#31c400;--green-dark:#139600;--black:#050707;--dark:#0c1110;--white:#fff;--muted:#545b66;--line:#e8e8e8;--shadow:0 22px 60px rgba(0,0,0,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--black);background:#fff;font-family:Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}a{text-decoration:none;color:inherit}
.header{height:78px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50}.logo img{width:205px;display:block}.nav{display:flex;gap:42px;font-size:16px;font-weight:600}.nav a:hover{color:var(--green-dark)}
.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;gap:12px;border-radius:7px;min-height:48px;padding:0 22px;font-size:16px;font-weight:800;transition:.2s ease}.header-cta,.btn.primary{background:linear-gradient(135deg,#31c400,#159e00);color:#fff;box-shadow:0 15px 35px rgba(39,183,0,.22)}.btn.secondary{background:#fff;border:1.5px solid var(--black);color:#111}.header-cta:hover,.btn:hover{transform:translateY(-2px)}
.hero{min-height:610px;padding:70px 4vw 48px;display:grid;grid-template-columns:.98fr 1.02fr;gap:50px;align-items:center;background:linear-gradient(180deg,#fff,#fbfbfb);position:relative;overflow:hidden}.eyebrow{margin:0 0 18px;color:var(--green-dark);text-transform:uppercase;font-size:13px;font-weight:900;letter-spacing:.01em}.hero h1{margin:0;font-size:clamp(48px,5vw,76px);line-height:1.03;letter-spacing:-.065em;font-weight:900}.hero-text{max-width:650px;margin:26px 0 32px;color:var(--muted);font-size:18px;line-height:1.55}.hero-actions{display:flex;gap:18px;flex-wrap:wrap}
.hero-photo{position:relative;height:500px;border-radius:0;overflow:visible}.hero-photo>img{width:100%;height:100%;object-fit:cover;display:block;border-radius:0;filter:saturate(.98) contrast(1.03)}.hero-photo:before{content:"";position:absolute;left:-2px;top:0;bottom:0;width:46%;background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.88) 34%,rgba(255,255,255,.35) 68%,rgba(255,255,255,0) 100%);z-index:2;pointer-events:none}.hero-photo:after{content:"";position:absolute;left:0;right:0;bottom:0;height:32%;background:linear-gradient(180deg,rgba(255,255,255,0),rgba(255,255,255,.95));z-index:2;pointer-events:none}
.dark-metric{position:absolute;right:22px;width:210px;min-height:132px;padding:17px 18px 56px;border-radius:10px;background:linear-gradient(145deg,rgba(11,16,16,.96),rgba(22,28,28,.88));color:#fff;border:1px solid rgba(255,255,255,.13);box-shadow:0 22px 45px rgba(0,0,0,.25);z-index:4;overflow:hidden}.metric-revenue{top:24px}.metric-roas{top:184px}.metric-leads{top:344px}.dark-metric span{display:block;font-size:13px;font-weight:700;color:#e8eeee}.dark-metric strong{display:inline-block;margin-top:9px;font-size:28px;letter-spacing:-.05em}.dark-metric small{color:var(--green);font-size:12px;font-weight:900;margin-left:9px}.dark-metric svg{position:absolute;left:18px;right:18px;bottom:12px;width:calc(100% - 36px);height:40px}.dark-metric path{fill:none;stroke:var(--green);stroke-width:3}.bars{height:46px;margin-top:10px;display:flex;align-items:flex-end;justify-content:flex-end;gap:8px}.bars i{width:15px;background:rgba(49,196,0,.7)}.bars i:nth-child(1){height:18px}.bars i:nth-child(2){height:30px}.bars i:nth-child(3){height:38px}.bars i:nth-child(4){height:50px}
.trust-strip{margin:0 4vw 0;padding:0 0 52px;display:grid;grid-template-columns:1.1fr 5.5fr;gap:0;background:#fff}.trust-card,.trust-row{background:#fff;border:1px solid var(--line);box-shadow:0 24px 60px rgba(0,0,0,.08)}.trust-card{border-radius:12px 0 0 12px;padding:24px 26px;display:flex;flex-direction:column;justify-content:center}.trust-card p{margin:0 0 12px;font-size:15px;font-weight:900;line-height:1.4}.clutch-logo{width:110px;height:auto;object-fit:contain;margin:0 0 8px}.stars{color:#ffb400;font-size:16px;letter-spacing:2px;margin-bottom:6px}.trust-card span,.trust-item span{color:#4b515b;font-size:13px;line-height:1.35}.trust-row{border-left:0;border-radius:0 12px 12px 0;display:grid;grid-template-columns:1.1fr 1.1fr .85fr .95fr .85fr 1.65fr;align-items:center}.trust-item{min-height:112px;display:grid;place-items:center;text-align:center;padding:0 20px;border-right:1px solid #dce0e2}.trust-item:last-child{border-right:0}.logo-item img{max-width:118px;max-height:58px;object-fit:contain}.trust-item:nth-child(2) img{max-width:112px}.trust-item.stat strong{font-size:26px;letter-spacing:-.04em}.industry-icons{display:flex;gap:10px;margin-bottom:8px;justify-content:center}.industry-icons i{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#eaf3e7;color:#697468;font-style:normal}
.section{padding:72px 4vw}.section-head{display:grid;grid-template-columns:1fr 1.18fr;gap:70px;align-items:end;margin-bottom:34px}.section-head h2,.testimonial-head h2,.faq-title h2{margin:0;font-size:clamp(34px,3.5vw,52px);line-height:1.08;letter-spacing:-.055em;font-weight:900}.section-head>p{max-width:650px;color:#272e36;font-size:17px;line-height:1.6;margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service-card{min-height:300px;padding:26px;border-radius:9px;color:#fff;background:radial-gradient(circle at 12% 8%,rgba(49,196,0,.14),transparent 25%),linear-gradient(145deg,#0d1110,#141918);border:1px solid rgba(255,255,255,.12);box-shadow:0 20px 44px rgba(0,0,0,.16)}.icon{width:50px;height:50px;display:grid;place-items:center;border-radius:12px;background:rgba(49,196,0,.1);color:var(--green);font-size:28px;font-weight:900;margin-bottom:18px}.service-card h3{margin:0 0 18px;font-size:22px;line-height:1.08;letter-spacing:-.04em}.service-card p{color:rgba(255,255,255,.82);line-height:1.55;font-size:14px;margin:0 0 18px}.service-card ul{display:grid;grid-template-columns:1fr 1fr;gap:9px 18px;list-style:none;padding:18px 0 0;margin:0;border-top:1px solid rgba(255,255,255,.14)}.service-card li{font-size:13px;color:rgba(255,255,255,.9)}.service-card li:before{content:"✓";color:var(--green);font-weight:900;margin-right:9px}.service-card a{display:inline-flex;gap:8px;color:var(--green);font-weight:800;margin-top:20px;font-size:14px}
.testimonials{padding:70px 4vw 60px;background:#fff;border-top:1px solid var(--line)}.testimonial-head{margin-bottom:36px}.testimonial-slider{position:relative;padding:0 58px}.quote-track{display:flex;gap:28px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:8px 2px 22px;scrollbar-width:none}.quote-track::-webkit-scrollbar{display:none}.quote{flex:0 0 calc(50% - 14px);scroll-snap-align:start;min-height:250px}.quote-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:1px solid rgba(19,150,0,.35);border-radius:50%;background:#fff;color:var(--green-dark);font-size:40px;line-height:1;display:grid;place-items:center;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.08)}.quote-prev{left:0}.quote-next{right:0}.quote span{color:var(--green-dark);display:block;font-size:64px;line-height:.5;font-weight:900}.quote p{color:#1d2430;font-size:17px;line-height:1.55;margin:14px 0 24px}.quote strong{display:block;font-size:13px;margin-bottom:7px}.quote small{color:#171b20;font-size:13px;font-weight:700}.quote small i{color:var(--green);margin:0 8px;font-style:normal}
.faq{background:radial-gradient(circle at 85% 8%,rgba(49,196,0,.08),transparent 26%),#fff;border-top:1px solid var(--line);padding-top:74px}.faq-title{max-width:880px;margin-bottom:40px}.faq-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}details{border-bottom:1px solid #dfe3e6;padding:0 0 24px;margin-bottom:24px}summary{list-style:none;cursor:pointer;display:flex;align-items:baseline;justify-content:space-between;gap:22px;font-size:16px;font-weight:900;line-height:1.4}summary::-webkit-details-marker{display:none}summary:after{content:"+";font-size:22px;font-weight:500;color:#101010}details[open] summary:after{content:"−"}summary span{color:var(--green-dark);margin-right:18px;font-weight:900}details p{margin:16px 0 0 50px;color:var(--muted);font-size:15px;line-height:1.65}.final-cta{margin-top:50px;min-height:136px;border-radius:10px;padding:30px 48px;display:flex;align-items:center;justify-content:space-between;background:radial-gradient(circle at 92% 50%,rgba(49,196,0,.18),transparent 25%),linear-gradient(145deg,#0d1110,#151918);color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.16)}.final-cta h2{margin:0 0 8px;font-size:32px;letter-spacing:-.04em}.final-cta p{margin:0;font-size:19px;font-weight:700}
.footer{padding:32px 4vw;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px;background:#fff}.footer img{width:190px}.footer div{display:flex;gap:24px;font-weight:700}.footer p{color:var(--muted);margin:0}
@media(max-width:1200px){.nav{gap:28px}.hero{grid-template-columns:1fr;min-height:auto}.hero-photo{height:520px}.trust-strip{grid-template-columns:1fr}.trust-card{border-radius:12px 12px 0 0}.trust-row{border-left:1px solid var(--line);border-top:0;border-radius:0 0 12px 12px;grid-template-columns:repeat(3,1fr)}.service-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.header{height:76px;padding:0 5vw}.logo img{width:180px}.nav,.header-cta{display:none}.hero,.section,.testimonials,.footer{padding-left:5vw;padding-right:5vw}.hero{padding-top:48px;gap:42px}.hero h1{font-size:42px}.hero-text{font-size:17px}.hero-actions{flex-direction:column;align-items:flex-start}.hero-photo{height:auto;display:grid;gap:14px}.hero-photo>img{height:370px}.hero-photo:before,.hero-photo:after{display:none}.dark-metric{position:relative;right:auto;top:auto!important;width:100%;margin-top:0}.trust-strip{margin:0 5vw;padding-bottom:48px}.trust-row,.section-head,.service-grid,.faq-grid{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid #dce0e2}.section-head{gap:24px}.service-card ul{grid-template-columns:1fr}.testimonial-slider{padding:0}.quote-track{gap:22px}.quote{flex:0 0 88%;min-height:230px}.quote-arrow{display:none}.quote p{font-size:16px}summary{font-size:15px}details p{margin-left:0;font-size:15px}.final-cta{flex-direction:column;align-items:flex-start;gap:24px;padding:28px}.footer{flex-direction:column;align-items:flex-start}.footer div{flex-wrap:wrap}}


/* Contact page */
.contact-hero {
  padding: 90px 4vw 42px;
  display: grid;
  grid-template-columns: 1.15fr .85fr;
  gap: 64px;
  align-items: end;
  background: radial-gradient(circle at 78% 12%, rgba(49,196,0,.10), transparent 28%), #fff;
}

.contact-hero h1,
.thank-you h1 {
  margin: 0;
  font-size: clamp(46px, 5vw, 76px);
  line-height: 1.03;
  letter-spacing: -.065em;
  font-weight: 900;
}

.contact-hero p:not(.eyebrow),
.thank-you p {
  color: var(--muted);
  font-size: 19px;
  line-height: 1.65;
  max-width: 760px;
}

.contact-side-card {
  background: linear-gradient(145deg,#0d1110,#151918);
  color: white;
  border-radius: 12px;
  padding: 32px;
  box-shadow: 0 18px 45px rgba(0,0,0,.16);
}

.contact-side-card span {
  display: block;
  color: var(--green);
  font-weight: 900;
  margin-bottom: 16px;
  text-transform: uppercase;
  font-size: 13px;
}

.contact-side-card ul {
  margin: 0;
  padding-left: 20px;
  color: rgba(255,255,255,.86);
  line-height: 1.7;
}

.contact-section {
  padding: 36px 4vw 90px;
  background: #fff;
}

.consultation-form {
  max-width: 980px;
  margin: 0 auto;
  padding: 34px;
  border: 1px solid var(--line);
  border-radius: 14px;
  box-shadow: var(--shadow);
  background: #fff;
  display: grid;
  gap: 22px;
}

.form-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 22px;
}

.consultation-form label {
  display: grid;
  gap: 9px;
  font-weight: 800;
  color: #15191f;
}

.consultation-form input,
.consultation-form select,
.consultation-form textarea {
  width: 100%;
  border: 1px solid #dfe3e6;
  border-radius: 8px;
  min-height: 50px;
  padding: 13px 14px;
  font: inherit;
  background: #fbfbfb;
}

.consultation-form textarea {
  resize: vertical;
}

.consultation-form button {
  border: 0;
  min-height: 56px;
  border-radius: 7px;
  padding: 0 26px;
  justify-self: start;
  background: linear-gradient(135deg,#31c400,#159e00);
  color: #fff;
  font: inherit;
  font-weight: 900;
  cursor: pointer;
  box-shadow: 0 15px 35px rgba(39,183,0,.22);
}

.hidden-field {
  display: none;
}

.thank-you {
  min-height: 62vh;
  padding: 120px 4vw;
  display: grid;
  place-content: center;
  text-align: center;
}

.thank-you .btn {
  justify-self: center;
  margin-top: 18px;
}

@media(max-width:780px){
  .contact-hero,
  .form-grid {
    grid-template-columns: 1fr;
  }

  .contact-hero {
    padding: 64px 5vw 30px;
  }

  .contact-section {
    padding: 30px 5vw 70px;
  }

  .consultation-form {
    padding: 24px;
  }
}


/* FOOTER */

.site-footer{
  margin-top:80px;
  padding:80px 4vw 32px;
  border-top:1px solid #e8ecef;
  background:#fff;
}

.footer-grid{
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr .9fr;
  gap:60px;
  padding-bottom:50px;
  border-bottom:1px solid #eceff1;
}

.footer-logo{
  width:260px;
  margin-bottom:28px;
}

.footer-text,
.footer-location{
  color:#30353a;
  line-height:1.8;
  font-size:17px;
  margin-bottom:28px;
}

.footer-email{
  color:#111;
  text-decoration:none;
  font-weight:600;
}

.site-footer h4{
  font-size:14px;
  letter-spacing:.12em;
  color:#1c7f08;
  margin-bottom:28px;
}

.site-footer ul{
  list-style:none;
  padding:0;
  margin:0;
  display:grid;
  gap:18px;
}

.site-footer li a{
  color:#17191c;
  text-decoration:none;
  transition:.2s ease;
}

.site-footer li a:hover,
.footer-email:hover{
  color:#31c400;
}

.linkedin-link{
  display:flex;
  align-items:center;
  gap:18px;
  text-decoration:none;
  color:#111;
}

.linkedin-icon{
  width:54px;
  height:54px;
  border:2px solid #111;
  border-radius:12px;
  display:grid;
  place-items:center;
  font-weight:900;
  font-size:28px;
}

.linkedin-link strong{
  display:block;
  margin-bottom:4px;
}

.linkedin-link span:last-child{
  color:#666;
  font-size:14px;
}

.footer-bottom{
  padding-top:28px;
  display:flex;
  justify-content:space-between;
  gap:24px;
  flex-wrap:wrap;
  font-size:14px;
  color:#555;
}

.footer-legal{
  display:flex;
  gap:22px;
}

.footer-legal a{
  color:#444;
  text-decoration:none;
}

@media(max-width:980px){
  .footer-grid{
    grid-template-columns:1fr 1fr;
  }
}

@media(max-width:680px){
  .footer-grid{
    grid-template-columns:1fr;
  }

  .footer-bottom{
    flex-direction:column;
  }

  .footer-logo{
    width:220px;
  }
}
