:root{color-scheme:light dark;--paper:#fff7ea;--card:#fffbf4;--ink:#132e43;--muted:#4c5d68;--line:#d8cbb9;--accent:#9a4018;--scene:#fde6c6;--warn:#fff0d5;--shadow:0 20px 70px #523a2010}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.55 -apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}img{display:block;max-width:100%;height:auto}a{color:inherit;text-underline-offset:4px}button,input{font:inherit}button,a,input{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:wait;opacity:.6}:focus-visible{outline:3px solid var(--accent);outline-offset:4px}[hidden]{display:none!important}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.skip{position:absolute;top:-100px;left:16px;z-index:20;padding:12px;background:var(--ink);color:var(--paper)}.skip:focus{top:10px}header{border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:108px;padding:18px 0}.brand{display:block;width:240px;flex:0 1 240px}.brand img{width:100%;height:auto;aspect-ratio:650/216;object-fit:contain}.navlinks{display:flex;gap:30px;align-items:center}.navlinks a{text-decoration:none;font-size:14px;font-weight:600;padding:12px 0}.navlinks a:hover{text-decoration:underline}.status{font-size:12px;white-space:nowrap;display:flex;align-items:center;gap:8px}.status:before{content:"";width:7px;height:7px;border-radius:50%;background:var(--accent)}h1,h2,h3,p,figure{margin:0}h1,h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(52px,6.7vw,84px);line-height:1.02}h1 em{color:var(--accent);font-weight:400}h2{font-size:clamp(33px,4vw,49px);line-height:1.12}h3{font-size:19px;font-weight:650;line-height:1.3}.eyebrow{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.15em;color:var(--accent);margin-bottom:18px}.muted{color:var(--muted)}.small{font-size:13px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;padding:54px 0 36px}.intro{font-size:18px;color:var(--muted);max-width:430px;margin-top:26px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:28px 0 16px}.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:12px 21px;min-height:46px;background:transparent;border:1px solid var(--line);border-radius:30px;color:var(--ink);font-size:14px;font-weight:650;text-decoration:none}.button:hover{border-color:var(--ink)}.button.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}.hero-visual{width:min(100%,390px);justify-self:end}.hero-art{background:var(--scene);border-radius:24px;overflow:hidden;box-shadow:var(--shadow)}.hero-art>img{width:100%;height:auto;aspect-ratio:666/1000;object-fit:contain}.hero-art figcaption{padding:0 24px 25px;color:#132e43}.hero-art figcaption .eyebrow{display:block;font-size:9px;color:#754222;margin-bottom:8px}.hero-art strong{font:700 25px/1.2 Georgia,serif;display:block;margin-bottom:5px}.hero-art figcaption>span:last-child{font-size:13px}.weather-picker{display:flex;justify-content:center;gap:8px;margin-top:16px}.weather-picker button,.quick-places button{border:1px solid var(--line);border-radius:30px;background:transparent;color:var(--ink);padding:9px 18px;min-height:44px;font-size:13px}.weather-picker [aria-pressed=true]{background:var(--ink);color:var(--paper);border-color:var(--ink)}.preview-note{font-size:11px;color:var(--muted);text-align:center;margin-top:10px}.strip{display:flex;justify-content:space-between;gap:20px;font-size:13px;color:var(--muted);border-block:1px solid var(--line);padding:22px 0;margin:20px 0 84px}.strip strong{color:var(--ink)}.section-head{display:flex;align-items:end;justify-content:space-between;gap:35px;margin-bottom:30px}.section-head>p{max-width:355px;font-size:15px;color:var(--muted)}.weather-section{margin-bottom:96px}.search-panel{border:1px solid var(--line);border-radius:22px;padding:24px;background:var(--card)}label{display:block;font-size:13px;font-weight:650;margin-bottom:8px}.search-row{display:flex;gap:12px}.search-input{flex:1;min-width:0;display:flex;align-items:center;gap:12px;border:1px solid var(--line);border-radius:12px;padding:0 15px;background:var(--paper)}.search-input>span{font-size:27px;line-height:1}input{width:100%;min-width:0;border:0;padding:13px 0;background:transparent;color:var(--ink);font-size:16px}input:focus{outline:0}.search-input:focus-within{outline:2px solid var(--accent);outline-offset:2px}#search-status{margin-top:12px}.quick-places{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:18px}.quick-places>span{font-size:12px;color:var(--muted);margin-right:6px}.quick-places button{padding:6px 15px}.place-results{list-style:none;padding:0;margin:16px 0 0;border-top:1px solid var(--line)}.place-results button{width:100%;border:0;border-bottom:1px solid var(--line);background:transparent;padding:14px 4px;display:flex;justify-content:space-between;gap:20px;text-align:left;color:var(--ink)}.place-results button:hover{background:var(--paper)}.place-results strong{display:block;font-size:16px}.place-results small{font-size:12px;color:var(--muted)}.weather-status{margin:18px 0;font-size:14px;color:var(--muted);min-height:22px}.weather-status[data-error=true]{color:var(--accent)}.weather-view{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:24px;align-items:start}.weather-scene{border-radius:24px;background:var(--scene);overflow:hidden;color:#132e43;position:relative}.current-head{padding:28px 28px 0;position:relative;z-index:1}.current-head .eyebrow{margin-bottom:10px;color:#754222}.current-head h3{font:400 clamp(28px,3vw,37px)/1.12 Georgia,serif;overflow-wrap:anywhere}.current-head .small{color:#415367}.current-head #weather-region{margin-top:5px}.temperature{font-size:76px;font-weight:350;letter-spacing:-.07em;line-height:1.15;margin:12px 0 0}.condition{font-size:17px;margin:4px 0}.weather-scene>img{width:100%;height:auto;aspect-ratio:666/1000;object-fit:contain}.weather-saying{font:600 25px/1.25 Georgia,serif;padding:0 28px 28px}.weather-data{min-width:0;display:grid;gap:16px}.card{border:1px solid var(--line);background:var(--card);border-radius:22px;padding:22px;min-width:0}.card h3{font-size:15px;margin-bottom:15px}.card-title{display:flex;gap:15px;align-items:baseline;justify-content:space-between}.card-title .small{font-size:11px}.warnings{background:var(--warn)}.warnings p{font-size:14px}.warnings details{padding:10px 0}.warnings summary{font-size:14px}.warnings details p{margin-top:10px;white-space:pre-line}.hours{display:flex;gap:20px;overflow:auto;padding:4px 2px 12px;scrollbar-width:thin}.hour{flex:0 0 49px;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:13px}.hour .weather-icon{font-size:24px}.hour strong{font-size:18px}.hour small{font-size:11px;color:var(--muted)}.rain-probability{color:#21618d!important}.facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.fact{padding:18px 20px;background:var(--card);border:1px solid var(--line);border-radius:20px}.fact h3{font-size:12px;font-weight:500;color:var(--muted);margin-bottom:8px}.fact strong{font-size:25px;font-weight:450}.fact small{display:block;font-size:11px;color:var(--muted);margin-top:4px}.days details{border-top:1px solid var(--line);padding:0}.days summary{list-style:none;display:grid;grid-template-columns:minmax(65px,1fr) 28px 40px 76px 10px;gap:8px;align-items:center;cursor:pointer;min-height:58px;font-size:14px}.days summary::-webkit-details-marker{display:none}.days summary>small{font-size:11px;color:#21618d}.days summary:after{content:'+';font-size:17px;color:var(--muted)}.days details[open] summary:after{content:'−'}.days .hours{padding-block:12px}.day-range{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.source-note{font-size:11px;color:var(--muted);margin-top:22px;max-width:790px}.app-section{margin-bottom:95px}.features{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;border-top:1px solid var(--line);padding-top:25px;margin-bottom:38px}.features h3{margin:14px 0 10px}.features p{font-size:15px;color:var(--muted)}.feature-number{font:20px Georgia,serif;color:var(--accent)}.designs{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin:30px 0 20px}.design{border-radius:24px;padding:32px;background:var(--scene);color:#132e43}.design h3{font:400 30px/1.15 Georgia,serif;margin-bottom:16px}.design p:last-child{font-size:15px;max-width:380px}.design .eyebrow{color:#754222}.nordic{background:linear-gradient(140deg,#091c31,#254967);color:#fff}.nordic .eyebrow{color:#bbdcf3}.story{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);padding-top:45px;margin-bottom:85px}.story p:not(.eyebrow){color:var(--muted)}.story .statement{font:400 29px/1.3 Georgia,serif;color:var(--ink)!important;margin-bottom:22px}.faq{max-width:830px;margin-bottom:85px}.faq h2{margin-bottom:22px}details{border-bottom:1px solid var(--line);padding:18px 0}summary{cursor:pointer;font-weight:600;padding:6px 0}.faq details p{font-size:15px;margin-top:14px;color:var(--muted)}footer{border-top:1px solid var(--line);padding:28px 0 35px}.foot{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;font-size:13px;margin-bottom:20px}.loading{display:inline-block;width:14px;height:14px;border:2px solid var(--line);border-top-color:var(--ink);border-radius:50%;animation:spin .8s linear infinite;vertical-align:-2px;margin-right:8px}@keyframes spin{to{transform:rotate(360deg)}}
@media(prefers-color-scheme:dark){:root{--paper:#192128;--card:#24313b;--ink:#fde6c6;--muted:#c8c5bf;--line:#47535b;--accent:#ffc68b;--warn:#343128;--shadow:none}.rain-probability,.days summary>small{color:#9bd1ff!important}.brand{background:#fff7ea;border-radius:10px;padding:7px 10px}.hero-art>img,.weather-scene>img{filter:brightness(.94)}}
@media(max-width:900px){.wrap{width:calc(100% - 40px)}.hero{gap:35px}.nav{gap:24px}.status{display:none}.brand{width:210px;flex-basis:210px}.navlinks{gap:20px}.hero-visual{width:min(100%,340px)}.section-head{align-items:start}.weather-view{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:16px}.card{padding:18px}.days summary{gap:5px;grid-template-columns:minmax(50px,1fr) 24px 32px 66px 8px;font-size:12px}.current-head{padding:24px 20px 0}.temperature{font-size:65px}.features{gap:24px}.fact{padding:16px}.fact strong{font-size:23px}}
@media(max-width:650px){.wrap{width:calc(100% - 36px)}.nav{flex-direction:column;gap:6px;padding:18px 0 10px;min-height:0}.brand{width:220px;flex-basis:auto}.navlinks{gap:30px}.navlinks a{font-size:13px}.hero{grid-template-columns:1fr;gap:30px;padding-top:35px}.hero h1{font-size:clamp(53px,13vw,76px)}.intro{margin-top:20px;font-size:17px}.hero-visual{width:min(100%,340px);justify-self:center}.hero-art figcaption{padding:0 22px 22px}.hero-art strong{font-size:23px}.strip{flex-wrap:wrap;gap:12px 25px;margin:15px 0 60px;font-size:12px}.section-head{display:block}.section-head>p{margin-top:18px}.weather-section{margin-bottom:65px}.search-panel{padding:18px}.search-row{flex-direction:column;gap:10px}.search-row .button{align-self:stretch}.quick-places>span{width:100%;margin-bottom:2px}.weather-view{grid-template-columns:1fr}.weather-scene{display:block}.current-head{padding:22px;min-width:0}.current-head h3{font-size:27px}.current-head .eyebrow{font-size:9px;letter-spacing:.08em}.current-head .small{font-size:11px}.temperature{font-size:64px}.condition{font-size:14px}.weather-scene>img{width:100%;height:auto}.weather-saying{font-size:23px;padding:0 22px 22px}.hours{gap:20px}.days summary{font-size:14px;grid-template-columns:minmax(65px,1fr) 28px 40px 76px 10px;gap:8px}.features,.designs,.story{grid-template-columns:1fr}.features{gap:24px}.features article{border-bottom:1px solid var(--line);padding-bottom:24px}.feature-number{float:left;margin-right:18px}.features h3{margin:0 0 10px}.features p{margin-left:40px}.design{padding:26px}.story{gap:28px;margin-bottom:60px}.app-section{margin-bottom:60px}.faq{margin-bottom:60px}.fact strong{font-size:26px}.foot{display:grid;gap:10px}}
@media(max-width:370px){.days summary{gap:5px;font-size:12px;grid-template-columns:minmax(50px,1fr) 24px 32px 66px 8px}.temperature{font-size:54px}.quick-places button{padding-inline:11px}.navlinks{gap:22px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.loading{animation:none}}

/* One layout at every width: readable weather above an intact, full-width scene. */
.current-head{position:relative;background:none;padding-bottom:22px}
.weather-scene>img{width:100%;height:auto;object-fit:contain}

/* App-style weather scene: the data lives in the sky, never beside the picture. */
.weather-scene{--scene-surface:var(--paper);display:block;background:var(--scene-surface);color:var(--ink);border:1px solid var(--line);border-radius:24px;overflow:hidden}
.scene-art{position:relative;aspect-ratio:666/850;overflow:hidden;isolation:isolate}
.scene-art>#weather-art{display:block;width:100%;max-width:100%;height:auto;object-fit:contain;filter:brightness(.9)}
.scene-art:after{content:"";position:absolute;inset:0;pointer-events:none;z-index:1;background:linear-gradient(to bottom,rgba(8,22,33,.65),rgba(8,22,33,.38) 23%,transparent 43%,transparent 75%,var(--scene-surface) 100%)}
.weather-scene .current-head{position:absolute;inset:0 0 auto;z-index:2;padding:26px 26px 0;background:none;color:#fff0d8;text-shadow:0 2px 8px #06131fc0}
.scene-location{display:flex;align-items:flex-start;gap:14px}
.scene-location>div{flex:1;min-width:0}
.weather-scene .current-head h3{font:700 clamp(25px,2.7vw,36px)/1.12 Georgia,serif;overflow-wrap:anywhere}
.weather-scene .current-head .small{color:#f1e8dc;font-size:13px;margin-top:9px;line-height:1.4}
.scene-logo{width:33%;height:auto;object-fit:contain;margin-top:3px;filter:drop-shadow(0 2px 3px #06131f80)}
.weather-scene .temperature{font:400 clamp(68px,7vw,94px)/1 Georgia,serif;letter-spacing:-.06em;margin-top:24px}
.scene-summary{padding:10px 26px 26px}
.weather-scene .weather-saying{padding:0;margin:0 0 14px;font:700 27px/1.2 Georgia,serif;color:var(--ink)}
.weather-scene .condition{font-size:18px;margin:0 0 12px}
.scene-summary .small{color:var(--muted);font-size:13px;margin-top:8px}
.weather-scene.long-place .scene-logo{display:none}
.weather-scene.long-place .current-head h3{font-size:26px}
@media(max-width:900px) and (min-width:651px){.weather-scene .current-head{padding:20px 18px 0}.weather-scene .current-head h3{font-size:24px}.weather-scene .current-head .small{font-size:11px}.weather-scene .temperature{font-size:65px;margin-top:18px}.scene-logo{width:29%}.scene-summary{padding:10px 20px 22px}}
@media(max-width:650px){.weather-scene .current-head{padding:25px 24px 0}.weather-scene .current-head h3{font-size:30px}.weather-scene .temperature{font-size:80px;margin-top:25px}.weather-scene .current-head .small{font-size:13px}.scene-summary{padding:12px 24px 25px}}
@media(max-width:370px){.weather-scene .current-head{padding:20px 18px 0}.weather-scene .current-head h3{font-size:25px}.weather-scene .current-head .small{font-size:11px}.weather-scene .temperature{font-size:65px;margin-top:18px}.scene-logo{width:30%}.weather-scene.long-place .current-head h3{font-size:23px}.scene-summary{padding:10px 20px 22px}}

.legal{max-width:820px;padding-block:48px 72px;min-height:65vh}.legal h1{font-size:clamp(36px,6vw,58px);margin:24px 0 28px}.legal h2{font-size:25px;margin:30px 0 14px}.legal address{font-style:normal;line-height:1.8}.legal p{margin-top:12px}.legal a{overflow-wrap:anywhere}.legal h3{font-size:19px;margin:22px 0 6px}.legal ul{margin:12px 0 0;padding-left:22px;line-height:1.6}.legal li+li{margin-top:6px}.legal .stand{color:var(--muted);font-size:14px}
