:root { --accent:#08695f; --light:#ddf3ed; --ink:#172e2c; }
body { background:#f6faf7; color:#172e2c; }
header { border-bottom:1px solid #d8e6df; }
header .nav-cta { background:#fff; }
.climate-opening,.climate-search { margin:20px 28px 0; }
.climate-opening { padding:clamp(26px,4vw,64px); border-radius:34px; background:linear-gradient(124deg,#f1faf6 5%,#d4efe1 83%); border:1px solid #badacd; }
.climate-intro { display:grid; grid-template-columns:1.05fr .95fr; align-items:center; gap:clamp(16px,3vw,48px); }
.climate-label { margin:0 0 14px; font-size:.82rem; color:#215c50; font-weight:700; }
.climate-intro h1 { font:clamp(3.1rem,5.5vw,5.8rem)/.99 Georgia,'Times New Roman',serif; letter-spacing:-.064em; color:#123e35; margin:0 0 20px; }
.climate-intro h1 i { color:#267563; font-weight:400; }
.climate-intro h1 + p { font-size:clamp(1rem,1.3vw,1.16rem); color:#3f6057; max-width:36ch; margin:0 0 16px; }
.climate-jump,.climate-note a { font-size:.88rem; font-weight:750; color:#145c50; }
.climate-jump { display:inline-flex; gap:10px; align-items:center; min-height:44px; }
.climate-art { display:grid; place-items:center; border-radius:50% 44% 46% 46%; background:radial-gradient(ellipse at center,#f6fffc 28%,#c2e4d9 60%,transparent 61%); }
.climate-art svg { width:min(100%,420px); height:auto; display:block; }
.climate-observer { margin-top:clamp(28px,3vw,44px); padding-top:24px; border-top:1px solid #a4c8ba; display:grid; grid-template-columns:1.15fr .85fr; gap:22px; align-items:start; }
.climate-observer fieldset { display:flex; gap:9px; flex-wrap:wrap; border:0; margin:0; padding:0; min-width:0; }
.climate-observer legend,.climate-search h2 { color:#163d34; }
.climate-observer legend { font:600 1.15rem/1.3 system-ui,sans-serif; padding:0; margin-bottom:11px; }
.climate-observer label { display:inline-flex; align-items:center; gap:7px; padding:9px 12px; min-height:44px; font-size:.85rem; border-radius:40px; background:#fcfffd; border:1px solid #98bcac; cursor:pointer; color:#184539; }
.climate-observer label:has(:checked) { background:#155f52; border-color:#155f52; color:#fff; }
.climate-observer input { appearance:auto; width:16px; height:16px; min-height:0; margin:0; padding:0; accent-color:#164d43; }
.climate-observer label:focus-within { outline:3px solid #09665c; outline-offset:2px; }
.climate-note { padding:12px 16px; border-left:2px solid #69a38e; align-self:center; }
.climate-note p { font-size:.92rem; line-height:1.45; margin:0; color:#284f44; }
.climate-note a:not([hidden]) { display:inline-flex; align-items:center; gap:8px; min-height:44px; }
.climate-search { background:#fff; border:1px solid #d0e3da; border-radius:23px; display:grid; grid-template-columns:.48fr 1fr; align-items:start; gap:clamp(16px,3vw,48px); padding:clamp(22px,3.2vw,42px); }
.climate-search h2 { font:normal clamp(1.75rem,2.7vw,3rem)/1.1 Georgia,serif; letter-spacing:-.05em; margin:5px 0; }
.climate-search .finder { border:0; padding:0; background:transparent; }
.climate-search .finder .button { border-radius:30px; }
.climate-search .finder-fields { display:flex; }
.climate-search .finder .button { width:auto; margin:0; }
.climate-search .city-examples:empty { display:none; }
.section h2,.prepare-drawer>summary { font-family:Georgia,'Times New Roman',serif; font-weight:500; }
.service-card { border-radius:22px; }
@media(max-width:740px) {
  .climate-opening,.climate-search { margin:12px 12px 0; }
  .climate-opening { padding:24px 20px; border-radius:24px; }
  .climate-intro { grid-template-columns:1fr minmax(78px,25%); gap:0; }
  .climate-intro h1 { font-size:clamp(2.65rem,8.5vw,4rem); }
  .climate-art { align-self:start; margin:28px -8px 0 -8px; }
  .climate-art svg { width:100%; }
  .climate-intro h1 + p { font-size:.95rem; }
  .climate-observer,.climate-search { grid-template-columns:1fr; gap:14px; }
  .climate-observer { margin-top:19px; padding-top:17px; }
  .climate-note { padding:6px 12px; }
  .climate-search h2 br { display:none; }
  .climate-search .finder-fields { display:grid; grid-template-columns:1fr; }
  .climate-search .finder .button { width:100%; }
}
@media(max-width:360px) { .climate-intro { grid-template-columns:1fr; }.climate-art { display:none; } }
