/* CARMA landing: a quiet page with character. Navy sky, the country, the week's rain. */
body.landing{display:block;background:#fff}body.landing .main{max-width:none;padding:0;margin:0;min-height:100vh;display:flex;flex-direction:column}
.lp-nav{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px clamp(16px,5vw,64px)}
.lp-brand{display:inline-flex;align-items:center;gap:9px;color:var(--ink);font-weight:600;font-size:17px;text-decoration:none}.lp-brand .mark{width:28px;height:28px}
.lp-cta{display:flex;gap:8px}
.lp-hero{flex:1;padding:clamp(28px,5vw,64px) clamp(16px,5vw,64px) clamp(28px,5vw,56px);max-width:1180px;margin:0 auto;width:100%}
.lp-date{display:block;font-size:13px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--text2);margin-bottom:14px}
.lp-hero h1{font-size:clamp(40px,7vw,88px);line-height:.98;letter-spacing:-.04em;font-weight:600;margin:0 0 18px;color:var(--ink)}
.lp-lead{font-size:17px;line-height:1.5;color:var(--text2);max-width:560px;margin:0 0 36px}.lp-lead b{color:var(--ink);font-weight:600}
.lp-today{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}
.lp-tile{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:4px;padding:18px 16px 16px;border-radius:14px;background:#fff;border:1px solid var(--line);color:var(--ink);min-width:0;font:inherit;cursor:pointer;transition:border-color .15s,box-shadow .15s}.lp-tile:hover{border-color:#B8C2D6}.lp-tile.on{border-color:var(--ink);box-shadow:0 0 0 1px var(--ink) inset}
.lp-tile-ico{margin-bottom:8px}.lp-tile-ico svg{display:block}
.lp-tile b{font-size:15px;font-weight:600}
.lp-tile-temp{display:flex;align-items:baseline;gap:6px;font-variant-numeric:tabular-nums}.lp-tile-temp span{font-size:30px;font-weight:600;letter-spacing:-.03em;line-height:1}.lp-tile-temp span.hot{color:#B91C1C}.lp-tile-temp small{font-size:14px;color:var(--text2)}
.lp-tile-sub{font-size:12px;color:var(--text2);line-height:1.35}
.lp-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px clamp(16px,5vw,64px);font-size:13px;color:var(--text2);flex-wrap:wrap}
.lp-links{display:flex;gap:18px}.lp-links a{color:var(--text2);font-weight:500}.lp-links a:hover{color:var(--ink);text-decoration:none}
@media(max-width:1099px){.lp-today{grid-template-columns:repeat(3,1fr)}}
@media(max-width:599px){.lp-today{grid-template-columns:repeat(2,1fr);gap:8px}.lp-tile{padding:14px 12px 12px}.lp-tile-temp span{font-size:26px}.lp-foot{flex-direction:column;align-items:flex-start}}

/* conditions */
.lp-lead .c-rain{color:var(--accent)}.lp-lead .c-hot{color:#B91C1C}
.lp-key{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px;font-size:12px;color:#8A98B3}.lp-key i{display:inline-block;width:10px;height:10px;border-radius:50%;margin-right:6px;vertical-align:-1px}
.k-sun{background:#F59E0B}.k-partly{background:#FBBF24}.k-cloud{background:#94A3B8}.k-rain{background:#2457F5}.k-storm{background:#8B5CF6}.k-hot{background:#EF4444}

/* the week for one town, opened from its tile */
.lp-week{margin-top:14px;border:1px solid var(--line);border-radius:14px;padding:18px 20px;background:#fff}
.lp-week-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap;margin-bottom:10px}.lp-week-head b{font-size:16px;font-weight:600}.lp-week-head span{font-size:13px;color:var(--text2)}
.lp-days{display:flex;flex-direction:column}
.lp-day{display:grid;grid-template-columns:96px 36px 80px 72px 1fr;align-items:center;gap:12px;padding:10px 0;border-top:1px solid var(--line)}.lp-day.today{font-weight:600}
.lp-day-name{display:flex;flex-direction:column;line-height:1.15}.lp-day-name small{font-size:12px;color:var(--text2);font-weight:400}
.lp-day-ico svg{display:block;width:28px;height:28px}
.lp-day-temp{font-variant-numeric:tabular-nums}.lp-day-temp b{font-size:17px;font-weight:600}.lp-day-temp b.hot{color:#B91C1C}.lp-day-temp small{margin-left:6px;color:var(--text2)}
.lp-day-rain{font-size:13px;color:var(--text2);font-variant-numeric:tabular-nums}.lp-day-rain.wet{color:var(--accent);font-weight:600}
.lp-day-tips{display:flex;gap:6px;flex-wrap:wrap}.lp-day-tips i{font-style:normal;font-size:11px;font-weight:600;padding:3px 8px;border-radius:999px;background:var(--well);color:var(--text2)}
.lp-day-tips .tip-spray{background:#EAF3EE;color:#1E6B3E}.lp-day-tips .tip-plant{background:#E6EEFF;color:#1D4ED8}.lp-day-tips .tip-irrigate{background:#FFF4D6;color:#B45309}.lp-day-tips .tip-heat{background:#FEE2E2;color:#B91C1C}.lp-day-tips .tip-storm{background:#EDE9FE;color:#6D28D9}
.lp-week-note{margin:12px 0 0;font-size:13px;line-height:1.5;color:var(--text2)}
@media(max-width:599px){.lp-day{grid-template-columns:72px 28px 64px 1fr;gap:8px}.lp-day-tips{grid-column:1/-1;padding-left:0}.lp-week{padding:14px}}

/* motion: the page lands, tiles lift, a town's week unfolds row by row */
@keyframes lpRise{from{opacity:0;transform:translate3d(0,12px,0)}to{opacity:1;transform:none}}
@keyframes lpUnfold{from{opacity:0;transform:translate3d(0,-6px,0) scaleY(.98)}to{opacity:1;transform:none}}
.lp-hero > *{animation:lpRise .55s cubic-bezier(.22,1,.36,1) both}.lp-hero > :nth-child(2){animation-delay:.06s}.lp-hero > :nth-child(3){animation-delay:.12s}.lp-hero > :nth-child(4){animation-delay:.18s}
.lp-today .lp-tile{animation:lpRise .5s cubic-bezier(.22,1,.36,1) both}.lp-today .lp-tile:nth-child(2){animation-delay:.22s}.lp-today .lp-tile:nth-child(3){animation-delay:.26s}.lp-today .lp-tile:nth-child(4){animation-delay:.3s}.lp-today .lp-tile:nth-child(5){animation-delay:.34s}.lp-today .lp-tile:nth-child(6){animation-delay:.38s}
.lp-tile{transition:transform .4s cubic-bezier(.34,1.3,.64,1),border-color .2s,box-shadow .3s}.lp-tile:hover{transform:translate3d(0,-3px,0)}.lp-tile:active{transform:scale(.98)}.lp-tile.on{transform:translate3d(0,-2px,0)}
.lp-week{transform-origin:top;animation:lpUnfold .45s cubic-bezier(.22,1,.36,1) both}
.lp-day{animation:lpRise .4s cubic-bezier(.22,1,.36,1) both}.lp-day:nth-child(2){animation-delay:.05s}.lp-day:nth-child(3){animation-delay:.1s}.lp-day:nth-child(4){animation-delay:.15s}.lp-day:nth-child(5){animation-delay:.2s}.lp-day:nth-child(6){animation-delay:.25s}.lp-day:nth-child(7){animation-delay:.3s}
@media (prefers-reduced-motion: reduce){.lp-hero > *,.lp-today .lp-tile,.lp-week,.lp-day{animation:none!important}.lp-tile{transition:none}}
