:root{
  --brand:#142E61; --brand-2:#1E4390; --tint:#6DA9FF; --accent:#39B980;
  --bg:#FAFAFA; --surface:#FFFFFF; --panel:#F4F5F7; --ink:#0E1B33; --muted:#5B6478; --line:#E4E7ED;
  --wash:radial-gradient(1100px 620px at 12% -8%, rgba(109,169,255,.30), transparent 62%), radial-gradient(900px 520px at 96% 4%, rgba(57,185,128,.22), transparent 60%);
  --btn:#214E3F;
}
html[data-pal="forest"]{
  --brand:#214E3F; --brand-2:#2C6551; --tint:#7BA893; --accent:#C7A95A;
  --bg:#FFFDF8; --surface:#FFFFFF; --panel:#E8E7E3; --ink:#1A2B24; --muted:#5E6B63; --line:#E0DCD2;
  --wash:radial-gradient(1100px 620px at 12% -8%, rgba(123,168,147,.34), transparent 62%), radial-gradient(900px 520px at 96% 4%, rgba(199,169,90,.26), transparent 60%);
  --btn:#214E3F;
}
html[data-pal="pine"]{
  --brand:#01796F; --brand-2:#0A9287; --tint:#7FC9C0; --accent:#C7A95A;
  --bg:#FBFDFC; --surface:#FFFFFF; --panel:#E8EFEC; --ink:#0F2420; --muted:#556862; --line:#D9E4E0;
  --wash:radial-gradient(1100px 620px at 12% -8%, rgba(127,201,192,.34), transparent 62%), radial-gradient(900px 520px at 96% 4%, rgba(199,169,90,.24), transparent 60%);
  --btn:#01796F;
}
*{box-sizing:border-box}
[hidden]{display:none !important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,"Hind Siliguri",system-ui,sans-serif;-webkit-font-smoothing:antialiased;text-wrap:pretty}
a{color:var(--brand);text-decoration:none}
a:hover{color:var(--accent)}
button,input,select,textarea{font-family:inherit}

@keyframes floaty{0%,100%{transform:translate3d(0,0,0) scale(1)}50%{transform:translate3d(0,-22px,0) scale(1.04)}}
@keyframes drift{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(18px,14px,0)}}
@keyframes pulseRing{0%{box-shadow:0 0 0 0 rgba(57,185,128,.45)}70%{box-shadow:0 0 0 16px rgba(57,185,128,0)}100%{box-shadow:0 0 0 0 rgba(57,185,128,0)}}
@keyframes slideUp{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
::selection{background:var(--tint);color:#fff}

.pulse-dot{animation:pulseRing 2.4s infinite}

/* header / nav */
.nav-link{border:0;background:transparent;padding:9px 10px;border-radius:10px;font-size:14px;font-weight:600;color:var(--muted);cursor:pointer;transition:all .2s;white-space:nowrap;display:inline-block}
.nav-link:hover{background:var(--panel);color:var(--ink)}
.nav-link.is-active{background:var(--panel);color:var(--ink)}
.more-dropdown{position:relative}
.more-menu{position:absolute;top:calc(100% + 8px);right:0;min-width:196px;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:8px;box-shadow:0 24px 48px -24px rgba(0,0,0,.35);display:grid;gap:2px;z-index:80}
.more-menu-item{text-align:left;border:0;background:transparent;padding:12px 14px;border-radius:11px;font-size:14.5px;font-weight:600;color:var(--ink);cursor:pointer;white-space:nowrap;display:block}
.more-menu-item:hover{background:var(--panel);color:var(--ink)}
.mobile-menu.is-open{display:grid !important}
.mobile-menu-item{text-align:left;border:0;background:transparent;padding:13px 12px;border-radius:10px;font-size:16px;font-weight:600;color:var(--ink);cursor:pointer;min-height:48px;display:flex;align-items:center}
.mobile-menu-item:hover{background:var(--panel)}
.topbar-icon{width:26px;height:26px;border-radius:50%;background:rgba(255,255,255,.16);color:#fff;display:grid;place-items:center;font-size:11.5px;font-weight:700;transition:background .2s}
.topbar-icon:hover{background:rgba(255,255,255,.34);color:#fff}
.footer-icon{width:40px;height:40px;border-radius:12px;background:rgba(255,255,255,.12);display:grid;place-items:center;color:#fff;font-size:14px;font-weight:800;transition:background .25s}
.footer-icon:hover{background:rgba(255,255,255,.24);color:#fff}
.footer-link{text-align:left;border:0;background:transparent;color:#fff;opacity:.78;font-size:14.5px;cursor:pointer;padding:0}
.footer-link:hover{opacity:1;color:#fff}

.btn-primary{border:0;background:var(--btn);color:#fff;padding:11px 18px;border-radius:11px;font-size:14.5px;font-weight:700;cursor:pointer;transition:transform .22s, box-shadow .22s;box-shadow:0 8px 22px -10px color-mix(in srgb, var(--btn) 85%, transparent);display:inline-flex;align-items:center}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 14px 30px -12px color-mix(in srgb, var(--btn) 90%, transparent);color:#fff}
.btn-outline{display:inline-flex;align-items:center;gap:7px;border:1px solid var(--line);background:var(--surface);padding:10px 15px;border-radius:11px;font-size:14px;font-weight:700;color:var(--ink);transition:all .2s;white-space:nowrap}
.btn-outline:hover{border-color:var(--brand);color:var(--brand)}
.btn-large{border:0;background:var(--btn);color:#fff;padding:17px 30px;border-radius:14px;font-size:16.5px;font-weight:700;cursor:pointer;transition:transform .25s, box-shadow .25s;box-shadow:0 14px 34px -14px color-mix(in srgb, var(--btn) 90%, transparent);display:inline-block}
.btn-large:hover{transform:translateY(-3px);box-shadow:0 22px 44px -16px color-mix(in srgb, var(--btn) 90%, transparent);color:#fff}
.btn-large-outline{border:1px solid var(--brand);background:transparent;color:var(--brand);padding:15px 26px;border-radius:13px;font-size:16px;font-weight:700;cursor:pointer;transition:all .25s;display:inline-block}
.btn-large-outline:hover{background:var(--btn);color:#fff;transform:translateY(-2px)}

.card{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:30px 26px;transition:transform .3s, box-shadow .3s}
.card:hover{transform:translateY(-6px);box-shadow:0 26px 50px -28px rgba(0,0,0,.35)}

.chat-panel{width:372px;max-width:calc(100vw - 44px);height:520px;background:var(--surface);border:1px solid var(--line);border-radius:24px;box-shadow:0 40px 90px -40px rgba(0,0,0,.5);display:flex;flex-direction:column;overflow:hidden}
.chat-panel.is-open{display:flex}
.chat-msg-bot{align-self:flex-start;max-width:88%;background:var(--surface);border:1px solid var(--line);color:var(--ink);padding:12px 15px;border-radius:16px 16px 16px 4px;font-size:14.5px;line-height:1.55;animation:slideUp .25s ease both}
.chat-msg-me{align-self:flex-end;max-width:82%;background:var(--brand);color:#fff;padding:12px 15px;border-radius:16px 16px 4px 16px;font-size:14.5px;line-height:1.5;animation:slideUp .25s ease both}
.chat-quick{border:1px solid var(--line);background:var(--bg);color:var(--ink);padding:7px 12px;border-radius:999px;font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s}
.chat-quick:hover{border-color:var(--brand);color:var(--brand)}
.wa-fab{width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 16px 34px -14px rgba(37,211,102,.9);font-size:15px;font-weight:900;transition:transform .25s;animation:pulseRing 3s infinite}
.wa-fab:hover{transform:scale(1.08);color:#fff}

[data-reveal]{opacity:0;transform:translateY(22px);transition:opacity .55s cubic-bezier(.22,.7,.3,1), transform .55s cubic-bezier(.22,.7,.3,1), box-shadow .3s}
[data-reveal].is-visible{opacity:1;transform:none}

.form-field{border:1px solid var(--line);background:var(--bg);border-radius:999px;padding:18px 24px;font-size:16px;color:var(--ink);min-height:56px;outline:none;width:100%}
.form-field:focus{border-color:var(--brand);background:var(--surface)}
textarea.form-field{border-radius:22px;resize:vertical}
.field-error{color:#c0392b;font-size:13.5px;margin-top:-6px}

@media (max-width:1120px){
  [data-r="nav"]{display:none !important}
  [data-r="menu"]{display:grid !important}
  [data-r="hidetext"]{display:none !important}
  [data-r="showmobile"]{display:inline !important}
  [data-r="hdrname"]{white-space:normal !important;overflow:visible !important;text-overflow:clip !important}
  [data-r="hdrlogo"]{min-width:0}
}
@media (max-width:1000px){
  [data-r="metric"]{border-left:0 !important;padding-left:0 !important;padding-right:0 !important}
  [data-r="g5"]{grid-template-columns:repeat(3,1fr) !important}
  [data-r="g4"]{grid-template-columns:repeat(2,1fr) !important}
  [data-r="g3"]{grid-template-columns:repeat(2,1fr) !important}
  [data-r="g6"]{grid-template-columns:repeat(3,1fr) !important;gap:34px 0 !important}
  [data-r="g6"] > div:first-child{display:none !important}
  [data-r="split"]{grid-template-columns:1fr !important;gap:36px !important}
  [data-r="cols3"]{columns:2 !important}
}
@media (max-width:720px){
  [data-r="topbar"]{gap:10px !important;font-size:12px !important}
  [data-r="topbar"] span:nth-child(2){display:none !important}
  [data-r="g5"],[data-r="g4"],[data-r="g3"],[data-r="g6"],[data-r="g2"]{grid-template-columns:1fr !important}
  [data-r="cols3"]{columns:1 !important}
  [data-r="pad"]{padding-left:18px !important;padding-right:18px !important}
  [data-r="hidetext"]{display:none !important}
  [data-r="showmobile"]{display:inline !important}
  [data-r="cal"]{gap:5px !important}
  [data-r="slots"]{grid-template-columns:repeat(2,1fr) !important}
  h1,h2{text-wrap:balance}
}
@media (max-width:900px){
  [data-r="g5"]{grid-template-columns:repeat(2,1fr) !important}
  [data-r="g6"]{grid-template-columns:repeat(2,1fr) !important}
  [data-r="kv"]{grid-template-columns:1fr !important;gap:2px !important}
  [data-r="bigcard"]{padding:34px 26px !important;border-radius:26px !important}
}
@media (max-width:720px){
  [data-r="g2"]{grid-template-columns:1fr !important}
  [data-r="caserow"]{grid-template-columns:52px 1fr !important;gap:18px !important}
  [data-r="casefig"]{grid-column:1 / -1 !important;text-align:left !important;max-width:280px}
  [data-r="bigcard"]{padding:26px 20px !important}
  section{padding-left:18px !important;padding-right:18px !important}
  footer{padding-left:18px !important;padding-right:18px !important}
}
@media (max-width:520px){
  [data-r="cal"] button{height:40px !important;font-size:13.5px !important}
  [data-r="slots"]{grid-template-columns:1fr !important}
  [data-r="bigcard"]{padding:22px 16px !important}
}
@media (max-width:820px){
  [data-r="hdr"]{padding:10px 16px !important;gap:10px !important}
  [data-r="hdrsub"]{display:none !important}
  [data-r="hdr"] button, [data-r="hdr"] a{min-height:44px}
}
@media (max-width:460px){
  [data-r="hdr"]{padding:9px 14px !important;gap:8px !important}
  [data-r="hdrlogo"] > div:first-child{width:38px !important;height:38px !important;border-radius:12px !important}
  [data-r="hdrname"]{font-size:14px !important}
  [data-r="topbar"]{padding:8px 14px !important;gap:8px !important;font-size:11.5px !important}
  [data-r="social"] a{width:44px !important;height:44px !important;font-size:14px !important}
}
