
:root{
  --bg:#f3ecd9; --text:#0f2a1f; --muted:#3b564b; --accent:#e89a3e; --card:#fff;
  --shadow: 0 10px 30px rgba(0,0,0,.08);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;color:var(--text);background:var(--bg);line-height:1.6}
.container{width:min(1200px,92%);margin-inline:auto}

/* Centered header */
.header{position:sticky;top:0;z-index:1000;background:rgba(243,236,217,.9);backdrop-filter:blur(6px);border-bottom:1px solid rgba(0,0,0,.06)}
.nav{display:flex;justify-content:center;align-items:center;padding:12px 0}
.brand{display:flex;align-items:center;gap:12px}
.brand img{height:36px;border-radius:6px;box-shadow:var(--shadow)}
.brand span{font-weight:900;font-size:20px;letter-spacing:.2px;white-space:nowrap}

/* Hero */
.hero{padding:clamp(60px,7vw,110px) 0 36px;background:radial-gradient(1000px 380px at 80% -10%, rgba(232,154,62,.18), transparent 60%)}
.hero h1{margin:0 0 10px;font-size:clamp(30px,4.2vw,54px);line-height:1.08}
.hero p{max-width:62ch}

/* Sections */
.section{padding:clamp(54px,7vw,96px) 0}
.section h2{font-size:clamp(26px,3vw,40px);margin:0 0 12px}
.section p.lead{font-size:18px;color:var(--muted);margin:0 0 24px}

/* About */
.about-intro{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:20px;box-shadow:var(--shadow)}
.cards{display:grid;gap:18px;grid-template-columns:repeat(3,1fr)}
.card{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:14px;padding:18px;box-shadow:var(--shadow)}
@media (max-width:900px){.cards{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.cards{grid-template-columns:1fr}}

/* Services */
.cards.services .row{display:flex;gap:14px;align-items:center}
.animal{width:56px;height:56px;border-radius:10px;object-fit:contain;display:block}

/* Gallery */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.gallery-grid img{width:100%;height:100%;object-fit:cover;border-radius:12px;box-shadow:var(--shadow);border:1px solid rgba(0,0,0,.06)}
@media (max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.gallery-grid{grid-template-columns:1fr}}

/* Contact */
.contact-form{background:var(--card);border:1px solid rgba(0,0,0,.06);border-radius:16px;padding:18px;box-shadow:var(--shadow)}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
@media (max-width:600px){.form-row{grid-template-columns:1fr}}
label{font-weight:700}
input,textarea{width:100%;padding:12px;border-radius:10px;border:1px solid rgba(0,0,0,.12);background:#fff}
textarea{resize:vertical}
.form-actions{display:flex;align-items:center;gap:14px;margin-top:10px;flex-wrap:wrap}
.cta{background:var(--accent);color:#111;border:none;padding:10px 16px;border-radius:10px;font-weight:800;cursor:pointer}

/* Footer */
.footer{background:#0f2a1f;color:#e8f0eb;padding:32px 0;margin-top:40px}
.footer a{color:#e8f0eb}
.footer .grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:20px}

/* Chat bubble */
.chat-bubble{position:fixed;right:16px;bottom:16px;z-index:1200;width:56px;height:56px;border-radius:999px;border:none;background:var(--accent);color:#111;font-weight:900;cursor:pointer;box-shadow:0 12px 30px rgba(0,0,0,.18)}
.chat-panel{position:fixed;right:16px;bottom:84px;z-index:1200;width:min(380px,92vw);transform:translateY(20px);opacity:0;pointer-events:none;transition:all .2s}
.chat-panel.open{transform:translateY(0);opacity:1;pointer-events:all}
.chat-card{background:var(--card);border:1px solid rgba(0,0,0,.08);border-radius:16px;box-shadow:var(--shadow);padding:16px}
.small{font-size:14px;color:#6e867a}
