:root{--primary:#0d5c49;--accent:#f4b400;--bg:#f0f4f3;--card-bg:#fff;--text:#1a1a1a;--muted:#666;--radius-md:14px;--radius-lg:22px;--shadow-sm:0 2px 14px #0000000f;--shadow-md:0 8px 30px #0d5c491c;--shadow-lg:0 20px 52px #0d5c492e;--transition:all .36s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}.services-container{background:var(--bg);min-height:100vh;padding:72px 6% 80px;position:relative;overflow:hidden}.services-container:before{content:"";pointer-events:none;background:radial-gradient(circle,#0d5c4912 0%,#0000 70%);border-radius:50%;width:420px;height:420px;animation:9s ease-in-out infinite floatOrb;position:absolute;top:-120px;right:-120px}.services-container:after{content:"";pointer-events:none;background:radial-gradient(circle,#f4b40012 0%,#0000 70%);border-radius:50%;width:360px;height:360px;animation:11s ease-in-out infinite reverse floatOrb;position:absolute;bottom:-100px;left:-100px}@keyframes floatOrb{0%,to{transform:translate(0)scale(1)}50%{transform:translate(20px,20px)scale(1.06)}}.services-title{text-align:center;color:var(--primary);letter-spacing:-.6px;margin-bottom:14px;font-size:2.8rem;font-weight:700;animation:.7s cubic-bezier(.4,0,.2,1) both fadeSlideDown;position:relative}.services-title:after{content:"";background:var(--accent);border-radius:4px;width:60px;height:3.5px;margin:14px auto 0;animation:.8s cubic-bezier(.4,0,.2,1) .4s both growLine;display:block}@keyframes growLine{0%{opacity:0;width:0}to{opacity:1;width:60px}}.services-grid{z-index:1;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:28px;margin-top:52px;display:grid;position:relative}.service-card{background:var(--card-bg);border-radius:var(--radius-lg);transition:var(--transition);box-shadow:var(--shadow-sm);border:1px solid #0d5c4917;flex-direction:column;justify-content:center;align-items:center;animation:.6s cubic-bezier(.4,0,.2,1) both fadeSlideUp;display:flex;position:relative;overflow:hidden}.service-card:first-child{animation-delay:.1s}.service-card:nth-child(2){animation-delay:.2s}.service-card:nth-child(3){animation-delay:.3s}.service-card:nth-child(4){animation-delay:.4s}.service-card:before{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));transform-origin:0;z-index:2;height:3px;transition:transform .42s cubic-bezier(.4,0,.2,1);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.service-card:hover{box-shadow:var(--shadow-lg);border-color:#0d5c492e;transform:translateY(-10px)}.service-card:hover:before{transform:scaleX(1)}.service-icon{object-fit:cover;background:#e8f0ee;width:100%;height:220px;transition:transform .52s cubic-bezier(.4,0,.2,1);display:block}.service-card:hover .service-icon{transform:scale(1.06)}.service-card .content-wrapper{flex-direction:column;flex:1;padding:22px 22px 26px;display:flex}.service-name{color:var(--primary);letter-spacing:.1px;text-align:center;margin-bottom:11px;font-size:1.12rem;font-weight:700;line-height:1.3;transition:color .22s}.service-card:hover .service-name{color:#0a4a3b}.service-description{text-align:center;color:var(--muted);flex:1;font-size:.9rem;line-height:1.72}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-22px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}@media (max-width:1280px){.services-container{padding:64px 5% 72px}.services-title{font-size:2.5rem}}@media (max-width:1024px){.services-grid{grid-template-columns:repeat(2,1fr);gap:24px}.services-title{font-size:2.2rem}}@media (max-width:768px){.services-container{padding:52px 5% 60px}.services-title{font-size:1.9rem}.services-grid{gap:20px;margin-top:40px}.service-icon{height:190px}.service-card .content-wrapper{padding:18px 18px 22px}}@media (max-width:600px){.services-grid{grid-template-columns:1fr;max-width:460px;margin-left:auto;margin-right:auto}.service-icon{height:210px}}@media (max-width:480px){.services-container{padding:40px 4% 50px}.services-title{letter-spacing:-.3px;font-size:1.65rem}.service-icon{height:185px}.service-name{font-size:1rem}.service-description{font-size:.86rem}.service-card .content-wrapper{padding:16px 16px 20px}}@media (max-width:380px){.services-title{font-size:1.45rem}.service-icon{height:165px}.services-grid{gap:16px;margin-top:32px}}
