:root{
  --color-primary:#2f6f5a;
  --color-primary-dark:#184a39;
  --color-accent:#edf5f1;
  --color-bg:#f7f9f8;
  --color-text:#22312d;
  --color-muted:#5b6d68;
  --max-width:1180px;
  --shadow-soft:0 18px 40px rgba(22,56,45,.10);
}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,system-ui,Arial,sans-serif;line-height:1.6;color:var(--color-text);background:linear-gradient(180deg,#fcfefe 0%,#f4f7f5 45%,#eef4f1 100%)}
img{max-width:100%;display:block}
.container{width:min(100%,var(--max-width));margin:0 auto;padding:24px}
.site-header{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(10px);border-bottom:1px solid rgba(24,74,57,.08);z-index:20;box-shadow:0 8px 24px rgba(24,74,57,.04)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.logo{font-family:Merriweather,serif;font-size:1.15rem;font-weight:700;color:var(--color-primary-dark);display:flex;align-items:center}
.logo img{height:160px;max-width:640px;object-fit:contain}
.nav{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.nav a{color:var(--color-text);text-decoration:none;font-weight:500}
.btn{border-radius:999px;padding:12px 20px;text-decoration:none;display:inline-flex;align-items:center;gap:10px;font-weight:600;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease,color .18s ease}
.btn-primary{background:var(--color-primary);color:#fff;box-shadow:0 12px 24px rgba(47,111,90,.18)}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 16px 30px rgba(47,111,90,.24)}
.nav .btn-primary{background:linear-gradient(135deg,#2f6f5a 0%,#1b4a3c 100%);color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 14px 28px rgba(24,74,57,.18)}
.nav .btn-primary:hover{background:linear-gradient(135deg,#35745f 0%,#20523f 100%);color:#fff}
.btn-secondary{border:2px solid rgba(47,111,90,0.18);color:var(--color-primary-dark);background:#fff}
.btn-secondary:hover{background:#f5fbf8;transform:translateY(-1px)}
.hero{padding:68px 0;background:
  radial-gradient(circle at top left, rgba(47,111,90,.08), transparent 24%),
  linear-gradient(180deg, rgba(47,111,90,.06), transparent 55%)}
.hero-inner{display:grid;grid-template-columns:1.2fr .8fr;gap:32px;align-items:center}
.hero-copy h1{font-family:Merriweather,serif;font-size:min(3.6rem,6vw);line-height:1.02;letter-spacing:-.03em;margin:0 0 18px;color:var(--color-primary-dark);text-wrap:balance}
.hero-copy p{max-width:640px;margin:0 0 28px;color:var(--color-muted);font-size:1.05rem}
.eyebrow{display:inline-block;font-size:.92rem;letter-spacing:.18em;text-transform:uppercase;color:var(--color-primary);font-weight:700;margin:0 0 10px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}
.authority-badges{display:grid;gap:8px;padding:0;margin:0;list-style:none;color:var(--color-text)}
.authority-badges li{display:flex;align-items:center;gap:10px}
.authority-badges li::before{content:"✓";color:var(--color-primary);font-weight:700}
.hero-image{border-radius:28px;overflow:hidden;box-shadow:0 30px 80px rgba(47,111,90,.14);border:1px solid rgba(47,111,90,.08)}
.section{padding:60px 0}
.section h2{font-family:Merriweather,serif;font-size:2.05rem;line-height:1.15;margin:0 0 16px;color:var(--color-primary-dark);letter-spacing:-.02em}
.section p{color:var(--color-muted);max-width:740px}
.section-bg{background:#fff}
.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}
.cards.three-up{grid-template-columns:repeat(3,minmax(0,1fr))}
.card{background:linear-gradient(180deg,#fff 0%,#f7fbf8 100%);padding:24px;border-radius:24px;box-shadow:var(--shadow-soft);border:1px solid rgba(47,111,90,.10);transition:transform .18s ease,box-shadow .18s ease}.card:hover{transform:translateY(-4px);box-shadow:0 26px 66px rgba(43,98,76,.16)}
.card h3{margin-top:0;color:var(--color-primary-dark)}
.card p{color:var(--color-muted);margin:12px 0 0}
.two-col{display:grid;grid-template-columns:1.2fr .8fr;gap:36px;align-items:center}
.about-list{list-style:none;padding:0;margin:20px 0 0;color:var(--color-muted);display:grid;gap:10px}
.about-list li::before{content:"•";color:var(--color-primary);display:inline-block;width:18px}
.testimonial-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:28px}
.testimonial{background:#fff;padding:24px;border-radius:20px;box-shadow:0 20px 50px rgba(47,111,90,.08)}
.testimonial p{margin:0;color:var(--color-text);font-style:italic}
.testimonial span{display:block;margin-top:14px;font-weight:700;color:var(--color-primary-dark)}
.review-highlight{background:rgba(47,111,90,.08)}
.review-card{display:grid;grid-template-columns:1fr;gap:18px;padding:32px 24px;border-radius:28px;box-shadow:var(--shadow-soft);background:linear-gradient(180deg,#fff 0%,#f6fbf8 100%);border:1px solid rgba(47,111,90,.10)}
.review-score{max-width:660px}
.review-score h2{font-size:2rem;margin:0 0 12px;color:var(--color-primary-dark)}
.review-metric{display:flex;align-items:center;gap:16px;font-size:1.5rem;font-weight:700;color:var(--color-primary-dark);margin-bottom:12px}
.stars{color:#f2b01e}
.review-summary{margin:0 0 8px;color:var(--color-text);font-size:1.05rem}
.review-subtext{margin:0;color:var(--color-muted)}
.contact-inner{display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}
.contact-box{background:linear-gradient(160deg,#f4fbf7 0%,#ffffff 100%);color:var(--color-primary-dark);padding:28px;border-radius:26px;box-shadow:var(--shadow-soft);border:1px solid rgba(47,111,90,.12)}
.contact-box p{color:var(--color-text);margin:0 0 10px}
.contact-box a{color:var(--color-primary-dark);text-decoration:none}
.contact-box .contact-data strong{color:var(--color-primary-dark)}
.contact-box .contact-data a{color:var(--color-primary);font-weight:700;text-decoration:underline;text-decoration-color:rgba(47,111,90,.35)}
.contact-box .btn-primary{background:#fff;color:var(--color-primary-dark);box-shadow:0 12px 24px rgba(15,40,33,.14)}
.contact-box .btn-primary:hover{background:#f3faf6}
.contact-form{background:#fff;padding:28px;border-radius:24px;box-shadow:0 20px 55px rgba(47,111,90,.08)}
.contact-form label{display:block;margin-bottom:14px;font-weight:600;color:var(--color-primary-dark)}
.contact-form input,.contact-form textarea{width:100%;padding:14px 16px;border-radius:14px;border:1px solid #dfe4e1;background:#fafafa;font:inherit;resize:vertical}
.contact-form button{width:100%;margin-top:12px}
.footer{padding:22px 0;background:#fff;border-top:1px solid #e8e8e8;text-align:center;color:var(--color-muted)}
@media(max-width:960px){.hero-inner,.two-col,.testimonial-grid,.contact-inner,.cards.three-up,.cards{grid-template-columns:1fr}.nav{display:none}.header-inner{padding:16px 0}.logo img{height:150px;max-width:420px}.hero-actions{flex-direction:column;align-items:stretch}}
@media(max-width:640px){.container{padding:18px}.hero{padding:40px 0}.section{padding:40px 0}.btn{width:100%;justify-content:center}.hero-copy p{font-size:1rem}.hero-copy h1{font-size:2.1rem}.authority-badges{font-size:.95rem}}
