/* ===== CSS RESET ===== */
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:'Inter',sans-serif;color:#333;line-height:1.7;background:#F8F6F2;overflow-x:hidden}
.container{max-width:1140px;margin:0 auto;padding:0 20px}
h1,h2,h3,h4,h5,h6 { font-family: 'Lora', serif; font-weight: 500; }

/* ===== COLOR & FONT VARIABLES ===== */
:root{
  --clr-primary: #2E4636;   /* глибокий зелений */
  --clr-accent: #D87D4A;    /* теракотовий */
  --clr-bg: #F8F6F2;      /* світлий беж */
  --clr-text: #333333;
  --clr-border: #E5E0D8;
}

/* ===== HEADER ===== */
.header{position:fixed;top:0;left:0;width:100%;background:rgba(248, 246, 242, .85);backdrop-filter:blur(10px);border-bottom:1px solid var(--clr-border);z-index:1000}
.nav-content{display:flex;align-items:center;justify-content:space-between;padding:16px 0}
.logo img{height:44px}
.nav-menu{display:flex;gap:36px;list-style:none}
.nav-menu a{font-weight:500;color:var(--clr-text);text-decoration:none;transition:.3s;font-size: 15px;}
.nav-menu a:hover{color:var(--clr-accent)}
.menu-toggle{display:none;flex-direction:column;gap:4px;background:none;border:none;cursor:pointer}
.menu-toggle span{width:25px;height:2px;background:var(--clr-text);transition:.3s}

/* ===== HERO ===== */
.hero{padding:150px 0 120px;text-align:center;background-color: var(--clr-bg);}
.hero-content{max-width:720px;margin:0 auto}
.hero h1{font-size:clamp(2.8rem,5vw,3.8rem);line-height:1.2;font-weight:500;margin-bottom:24px;color:var(--clr-text)}
.highlight{color:var(--clr-primary)}
.hero p{font-size:18px;color:var(--clr-text);opacity: .8; margin-bottom:40px}
.hero-buttons{display:flex;gap:20px;justify-content:center;flex-wrap:wrap}
.btn-primary,.btn-secondary{padding:14px 32px;font-size:16px;border-radius:50px;font-weight:500;cursor:pointer;transition:.3s;display:inline-block;text-decoration:none}
.btn-primary{background:var(--clr-primary);color:#fff;border:2px solid var(--clr-primary)}
.btn-primary:hover{background:#1F3A2A;border-color:#1F3A2A;}
.btn-secondary{background:transparent;color:var(--clr-primary);border:2px solid var(--clr-primary)}
.btn-secondary:hover{background:var(--clr-primary);color:#fff}

/* ===== VALUE PROP ===== */
.value-section{background:transparent;padding:90px 0;text-align:center}
.value-icon{width:120px;height:60px;margin:0 auto 32px}
.value-content h2{font-size:32px;font-weight:500;margin-bottom:16px;color:var(--clr-text)}
.value-content p{font-size:18px;color:var(--clr-text);opacity:.7;}

/* ===== PARTNERS & CLIENTS ===== */
.partners, .clients-section{padding:60px 0;text-align: center;}
.partners .section-title, .clients-section h2 { font-size: 24px; font-weight: 500; margin-bottom: 40px; color: var(--clr-text); opacity: .8; }
.partners-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:28px;align-items:center}
.partners-grid img{opacity:.4;filter:grayscale(100%);transition:.3s;width:100%;height:60px;object-fit:contain}
.partners-grid img:hover{opacity:1;filter:none}
.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:28px;align-items:center;font-family: 'Lora', serif;}
.clients-grid span { font-size: 18px; opacity: .7; }

/* ===== ABOUT ===== */
.about-section{padding:90px 0;text-align:center;background:#fff;border-top: 1px solid var(--clr-border); border-bottom: 1px solid var(--clr-border);}
.about-section h2{font-size:40px;font-weight:500;margin-bottom:18px}
.about-subtitle{max-width:620px;margin:0 auto 60px;font-size:18px;color:var(--clr-text); opacity: .8;}
.about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:56px}
.about-item h3{font-size:24px;font-weight:600;margin:24px 0 16px;color:var(--clr-primary)}
.about-item p{color:var(--clr-text);opacity:.8;}
.about-icon{width:80px;height:80px;margin:0 auto}

/* ===== FAQ ===== */
.faq-section{background:var(--clr-bg);padding:90px 0}
.faq-accordion{max-width:800px;margin:0 auto}
.faq-item{border-bottom:1px solid var(--clr-border)}
.faq-header{display:flex;justify-content:space-between;align-items:center;padding:26px 0;cursor:pointer;transition:.3s}
.faq-header:hover{color:var(--clr-accent)}
.faq-header h3{font-size:20px;font-weight:600}
.faq-toggle{font-size:28px;color:var(--clr-primary);transition:.3s}
.faq-item.active .faq-toggle{transform:rotate(45deg)}
.faq-content{max-height:0;overflow:hidden;transition:max-height .35s ease}
.faq-item.active .faq-content{max-height:220px;padding-bottom:22px}
.faq-content p{color:var(--clr-text);opacity:.8;}

/* ===== WORK ===== */
.work-section{padding:90px 0; text-align: center;}
.work-section .section-title { font-size: 40px; margin-bottom: 50px; }
.work-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:42px}
.work-item{border-radius:12px;overflow:hidden;border: 1px solid var(--clr-border); transition:.3s; background: #fff;}
.work-item:hover{transform:translateY(-8px); box-shadow: 0 12px 28px rgba(0,0,0,.05);}
.work-item img{width:100%;height:240px;object-fit:cover}
.work-content{padding:28px; text-align: left;}
.work-content h3{font-size:22px;font-weight:600;margin-bottom:12px}
.work-content p{color:var(--clr-text); opacity: .8;}

/* ===== TESTIMONIAL ===== */
.testimonial-section{background:var(--clr-primary);color:#fff;padding:90px 0;text-align:center}
.testimonial-content{max-width:750px;margin:0 auto}
.quote-icon{width:60px;height:60px;margin:0 auto 28px; opacity: .5;}
.testimonial-content blockquote{font-size:24px;line-height:1.6;margin-bottom:28px;font-family: 'Lora', serif; font-style: italic;}
.testimonial-content cite{font-size:16px;opacity:.9; font-style: normal;}

/* ===== TEAM ===== */
.team-section{background:var(--clr-bg);padding:90px 0;text-align:center}
.team-section h2{font-size:40px;font-weight:500;margin-bottom:50px}
.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:40px}
.team-member img{width:150px;height:150px;border-radius:50%;object-fit:cover;margin-bottom:18px}
.team-member h3{font-size:20px;font-weight:600;margin-bottom:4px}
.team-member p { opacity: .7; }

/* ===== INSIGHTS ===== */
.insights-section{padding:90px 0;text-align:center; background: #fff; border-top: 1px solid var(--clr-border);}
.insights-section h2{font-size:40px;font-weight:500;margin-bottom:50px}
.insights-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:40px}
.insight-item{background:#fff;border-radius:12px;overflow:hidden;border: 1px solid var(--clr-border); transition:.3s;text-align:left}
.insight-item:hover{transform:translateY(-6px); box-shadow: 0 12px 28px rgba(0,0,0,.05);}
.insight-item img{width:100%;height:200px;object-fit:cover}
.insight-content{padding:28px}
.insight-content h3{font-size:20px;font-weight:600;margin-bottom:14px}
.insight-date{font-size:14px;color:var(--clr-accent);font-weight:500}

/* ===== CTA ===== */
.cta-section{background-color: var(--clr-accent);color:#fff;padding:90px 0;text-align:center}
.cta-content h2{font-size:34px;font-weight:500;margin-bottom:28px}
.cta-section .btn-primary{background:#fff;color:var(--clr-primary)}
.cta-section .btn-primary:hover{background:#f0e9e9}

/* ===== FOOTER ===== */
.footer{background:var(--clr-primary);color:#fff;padding:70px 0 32px}
.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:38px;margin-bottom:40px}
.footer-section h3{font-size:18px;font-weight:600;margin-bottom:18px;color:var(--clr-accent)}
.footer-section ul{list-style:none}
.footer-section ul li{margin-bottom:10px}
.footer-section a{color:#eee;text-decoration:none;transition:.3s; opacity: .8;}
.footer-section a:hover{color:#fff; opacity: 1;}
.footer-section p{color:#eee;margin-bottom:10px; opacity: .8;}
.social-links{display:flex;gap:16px;margin-top:20px}
.social-links a{width:40px;height:40px;background:rgba(255,255,255,.1);border-radius:50%;display:flex;align-items:center;justify-content:center;transition:.3s}
.social-links a:hover{background:var(--clr-accent)}
.social-links svg{width:20px;height:20px;stroke:currentColor;fill:currentColor;stroke-width:0}
.footer-bottom{text-align:center;padding-top:24px;border-top:1px solid rgba(255,255,255,.1);color:#eee; opacity: .6;}

/* ===== ANIMATION ===== */
@keyframes fadeInUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
.fade-in{animation:fadeInUp .8s ease-out}

/* ===== RESPONSIVE ===== */
@media(max-width:768px){
  .nav-menu{display:none;position:absolute;top:100%;left:0;right:0;background:#fff;flex-direction:column;padding:20px;box-shadow:0 6px 20px rgba(0,0,0,.08)}
  .nav-menu.active{display:flex}
  .menu-toggle{display:flex}
  .hero{padding:120px 0 70px}
  .about-grid,.work-grid,.insights-grid{grid-template-columns:1fr}
}