:root{
	--primary:#2a9d8f;
	--accent:#264653;
	--muted:#f4f4f4;
	--max-width:1200px;
	--radius:12px;
	--transition:300ms;
	--content-font: "Helvetica Neue", Arial, sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
	margin:0;
	font-family:var(--content-font);
	color:#222;
	background:linear-gradient(180deg,#fff 0%,#f8fcfb 100%);
	-webkit-font-smoothing:antialiased;
	-moz-osx-font-smoothing:grayscale;
}
.container{max-width:var(--max-width);margin:0 auto;padding:24px}
/* Header */
header{background:transparent;position:sticky;top:0;z-index:40;padding:12px 0;backdrop-filter:saturate(140%) blur(6px)}
.nav{display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:12px}
.brand img{width:44px;height:44px;border-radius:8px}
.brand h1{font-size:18px;margin:0;color:var(--accent)}
.menu{display:flex;gap:14px;align-items:center}
.menu a{color:#0b3b36;text-decoration:none;padding:8px 10px;border-radius:8px;transition:background var(--transition)}
.menu a:hover{background:rgba(42,157,143,0.08)}
.cta{background:var(--primary);color:#fff;padding:8px 12px;border-radius:8px;text-decoration:none}

/* Hero */
.hero{display:grid;grid-template-columns:1fr 420px;gap:24px;align-items:center;padding:48px 0}
.hero .panel{background:linear-gradient(180deg,rgba(42,157,143,0.06),transparent);padding:28px;border-radius:var(--radius)}
.hero h2{margin:0 0 8px 0;font-size:28px;color:var(--accent)}
.hero p{margin:0 0 16px 0;color:#355b57}
.hero .actions{display:flex;gap:12px}
.hero .actions a{padding:10px 14px;border-radius:10px;text-decoration:none}
.hero .visual{border-radius:var(--radius);overflow:hidden;box-shadow:0 8px 30px rgba(10,10,10,0.06)}
.hero .visual img{display:block;width:100%;height:100%;object-fit:cover}

/* Sections */
.section{padding:48px 0}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:#fff;padding:18px;border-radius:12px;box-shadow:0 6px 18px rgba(10,10,10,0.04);transition:transform var(--transition),box-shadow var(--transition)}
.card:hover{transform:translateY(-6px);box-shadow:0 12px 30px rgba(10,10,10,0.08)}
.card img{width:100%;height:180px;object-fit:cover;border-radius:8px}
.card h3{margin:12px 0 8px 0}
.meta{font-size:13px;color:#667}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.filters button{padding:8px 12px;border-radius:999px;border:1px solid #e8f0ef;background:transparent;cursor:pointer}
.filters button.active{background:var(--primary);color:#fff;border-color:var(--primary)}

/* Footer */
footer{padding:28px 0;color:#456; font-size:14px}
.footer-grid{display:flex;gap:18px;flex-wrap:wrap;justify-content:space-between}
.small{font-size:13px;color:#6b7}

/* Responsive */
@media (max-width:980px){
	.hero{grid-template-columns:1fr}
	.grid{grid-template-columns:repeat(2,1fr)}
	.brand h1{font-size:16px}
}
@media (max-width:620px){
	.grid{grid-template-columns:1fr}
	.nav{padding:8px}
	.menu{display:none}
}

/* Animation helpers */
.reveal{opacity:0;transform:translateY(14px);transition:opacity 500ms ease,transform 500ms ease}
.reveal.visible{opacity:1;transform:none}

/* Contact form */
.form-row{display:flex;gap:12px}
.form-row .field{flex:1}
.field input,.field textarea{width:100%;padding:10px;border-radius:8px;border:1px solid #e6efec}
.field textarea{min-height:120px;resize:vertical}
.btn{background:var(--accent);color:#fff;padding:10px 14px;border-radius:8px;border:none;cursor:pointer}


