@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');
:root{font-family:'DM Sans',sans-serif;color:#163c35;background:#f5f6f0;font-synthesis:none}*{box-sizing:border-box}body{margin:0}header{display:flex;align-items:center;justify-content:space-between;padding:24px 5%;border-bottom:1px solid #dfe5da;background:#fff}a{color:inherit}.brand{display:flex;gap:10px;align-items:center;text-decoration:none;font-size:26px;font-weight:800}.brand>span{font-size:21px}.green{color:#488159}small{display:block;font-size:9px;letter-spacing:2px;margin-top:4px}nav{display:flex;gap:32px}nav a{text-decoration:none;font-size:14px}button,select{font:inherit;cursor:pointer;border:1px solid #cad6ca;background:white;border-radius:9px;padding:11px 16px;color:#163c35}button:hover{background:#eaf1df}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d2a135;outline-offset:3px}main{max-width:1400px;margin:auto;padding:0 5%}.intro{display:grid;grid-template-columns:1.1fr 1fr;align-items:center;gap:50px;padding:52px 0 30px}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;color:#658368}h1{font-family:Manrope,sans-serif;font-size:clamp(34px,4vw,53px);line-height:1.14;letter-spacing:-2px;margin:15px 0}p{line-height:1.6}.intro p:last-child{color:#66766b;font-size:14px}label{display:block;font-weight:600;margin-bottom:12px;font-size:14px}form{display:flex;gap:7px;background:white;padding:7px;border:1px solid #dfe5da;border-radius:12px}input{min-width:0;flex:1;border:0;background:transparent;padding:8px;font:inherit;font-size:14px}form button{background:#173f35;color:white;white-space:nowrap}.text-button{border:0;background:transparent;font-size:13px;padding-left:0}.city-tabs{display:flex;gap:8px;flex-wrap:wrap}.city-tabs button{border-radius:24px;font-size:12px}.city-tabs button.active{color:white;background:#173f35}#status{font-size:12px;color:#607568;min-height:20px}.overview{display:grid;grid-template-columns:.9fr 1.3fr;gap:20px}.current{background:radial-gradient(ellipse at top right,#527b57,transparent 70%),#163f38;border-radius:20px;padding:28px;color:#fff}.topline{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1px;color:#c7d9c6}.current h2{font-size:28px;margin-bottom:5px}.temperature{display:flex;align-items:center;justify-content:space-between;font:600 78px Manrope,sans-serif;letter-spacing:-5px}.temperature>span:last-child{font-size:65px;color:#e6d584}.current p{margin:4px 0;font-size:14px}.current-stats{display:flex;justify-content:space-between;gap:8px;border-top:1px solid #ffffff30;margin-top:26px;padding-top:22px;font-size:9px;letter-spacing:1px}.current-stats strong{display:block;font-size:16px;letter-spacing:0;margin-top:7px}.panel{background:#fff;border:1px solid #e1e6da;border-radius:20px;padding:26px;min-width:0}.section-heading{display:flex;align-items:center;justify-content:space-between;gap:15px}.section-heading h2{font:700 20px Manrope,sans-serif;margin:0}.section-heading>span{font-size:9px;letter-spacing:1px;color:#718472}.hourly{display:flex;overflow-x:auto;gap:12px;padding:28px 0 15px}.hour{min-width:68px;text-align:center;background:#f7f8f2;border-radius:12px;padding:15px 7px;font-size:12px}.hour .symbol{font-size:27px;margin:18px 0}.hour strong{display:block;font-size:20px}.prob{display:block;color:#568193;font-size:11px;margin-top:9px}.muted{color:#718070;font-size:12px}.seven,.map-panel{margin-top:22px}.daily{display:grid;grid-template-columns:repeat(7,1fr);gap:10px;margin-top:25px}.day{text-align:center;padding:18px 8px;border-right:1px solid #e4e9df;font-size:12px}.day:last-child{border:0}.day .symbol{font-size:33px;margin:18px 0}.low{color:#899585;margin-left:5px}.map-panel .eyebrow{margin-top:0}#map{height:430px;border-radius:12px;background:#e5ecdf;z-index:0}.map-label{background:#173f35;color:white;padding:5px 9px;border-radius:15px;font-size:12px;white-space:nowrap;width:max-content!important;height:auto!important;border:2px solid #fff}.leaflet-popup-content button{font-size:12px}footer{padding:35px 0;color:#6c7c6c;font-size:11px}footer strong{font-size:17px;color:#173f35}#results button{display:block;text-align:left;width:100%;margin-top:5px}.error{color:#9b432a!important}@media(max-width:800px){header{padding:18px 5%}nav{display:none}.intro{grid-template-columns:1fr;gap:16px;padding-top:24px}.overview{grid-template-columns:1fr}.daily{overflow:auto;display:flex}.day{min-width:95px}.panel,.current{padding:20px}.section-heading h2{font-size:18px}.topline{font-size:8px}#map{height:350px}.brand>span{font-size:18px}header>button{font-size:12px;padding:8px}}
