/* La météo du Vallon — édition claire, localités et archives */
.weather-vdt{--wx-ink:#233e34;--wx-paper:#faf9f3;--wx-pale:#e8eee6;--wx-rule:#bbcebb;--wx-muted:#5b7366;--wx-ocher:#9c7353;background:var(--wx-paper);color:var(--wx-ink);overflow-wrap:break-word}
.weather-vdt h1,.weather-vdt h2,.weather-vdt h3{font-family:var(--serif);font-weight:400}
.weather-vdt h1 em,.weather-vdt h2 em{font-style:italic;color:var(--wx-ocher)}
.weather-vdt a{text-underline-offset:4px}
.weather-heading{background:var(--wx-pale);padding:38px 0 84px}
.weather-heading .breadcrumb{margin-bottom:61px}
.weather-kicker,.weather-label{font-size:11px;font-weight:770;text-transform:uppercase;letter-spacing:.15em;color:var(--wx-ocher)}
.weather-heading h1{font-size:clamp(53px,7.2vw,99px);line-height:1.04;letter-spacing:-.065em;max-width:1100px;margin:22px 0 26px}
.weather-lead{font:400 clamp(19px,2.35vw,27px)/1.53 var(--serif);max-width:950px;color:#456450}
.weather-switch{margin-top:-37px;position:relative;background:#fff;padding:25px 29px 22px;box-shadow:0 12px 31px rgba(33,61,38,.07);border:1px solid #d9e2d6}
.weather-switch form{display:grid;grid-template-columns:1.1fr .8fr auto;align-items:end;gap:20px}
.weather-form-field{display:flex;flex-direction:column;gap:9px}
.weather-form-field label{font-size:12px;font-weight:750;color:#506c56}
.weather-form-field select,.weather-form-field input{width:100%;min-height:46px;background:#fafcf9;color:var(--wx-ink);border:1px solid #a9baa8;font-family:var(--sans);font-size:15px;padding:9px 13px;border-radius:2px}
.weather-form-field select:focus,.weather-form-field input:focus,.weather-switch button:focus{outline:2px solid #377750;outline-offset:3px}
.weather-switch button{min-height:46px;padding:9px 22px;border:0;background:#214c35;color:#fff;font-weight:750;font-size:13px;cursor:pointer}
.weather-switch button:hover{background:#376849}
.weather-shortcuts{margin-top:19px;display:flex;align-items:center;gap:11px 20px;flex-wrap:wrap;font-size:12px}
.weather-shortcuts>span{color:#65776a}
.weather-shortcuts a{color:#386044;font-weight:700}
.weather-shortcuts a[aria-current=page]{color:#875738;text-decoration:none;border-bottom:2px solid #875738}
.weather-now{padding-top:86px;padding-bottom:85px}
.weather-section-heading{display:flex;justify-content:space-between;align-items:end;gap:28px;margin-bottom:35px}
.weather-section-heading h2{font-size:clamp(39px,5vw,66px);line-height:1.11;letter-spacing:-.05em;margin:13px 0 0}
.weather-section-heading>p{color:var(--wx-muted);font-size:13px;line-height:1.7;max-width:370px;margin:0 0 8px}
.weather-current{display:flex;gap:30px;align-items:center;justify-content:space-between;background:#e9eee6;border-top:1px solid #b9c8b5;padding:35px 38px}
.weather-main-reading{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.weather-symbol{font-size:50px;line-height:1}
.weather-temperature{font:400 clamp(47px,6vw,85px)/1 var(--serif);letter-spacing:-.055em}
.weather-main-reading strong{font-size:17px;display:block}
.weather-main-reading small{font-size:12px;color:#647969;display:block;margin-top:8px}
.weather-measures{display:flex;gap:37px;margin:0}
.weather-measures dt{font-size:12px;color:#637869}
.weather-measures dd{font:400 24px/1.2 var(--serif);margin:8px 0 0}
.weather-forecast{margin-top:36px}
.weather-forecast>h3{font-size:27px;margin-bottom:18px}
.weather-forecast-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:19px}
.weather-forecast-grid>div{border-top:1px solid var(--wx-rule);padding:19px 0 20px;display:flex;flex-direction:column;gap:7px}
.weather-weekday{font-size:12px;color:#5e7566;font-weight:750}
.weather-forecast-icon{font-size:32px;margin:10px 0 3px}
.weather-forecast-grid strong{font-family:var(--serif);font-size:19px;line-height:1.25;min-height:45px;font-weight:400}
.weather-range{font-family:var(--serif);font-size:22px;letter-spacing:-.02em}
.weather-range small{font-family:var(--sans);font-size:11px;color:#708474}
.weather-precip{font-size:12px;color:#627967}
.weather-archives{background:#e9efe7;padding:96px 0 89px}
.weather-archive-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}
.weather-archive-grid article{border-top:2px solid #809d85;padding:25px 0 20px}
.weather-archive-period{font-size:11px;font-weight:760;text-transform:uppercase;letter-spacing:.11em;color:#8a6144;margin:0 0 20px}
.weather-archive-grid h3{font-size:clamp(28px,3vw,39px);letter-spacing:-.04em;margin:0 0 25px}
.weather-history-temp{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.weather-history-temp>div{display:flex;flex-direction:column;gap:7px;border-bottom:1px solid #b9cab9;padding-bottom:24px}
.weather-history-temp span{font-size:12px;color:#617668}
.weather-history-temp strong{font:400 clamp(27px,3.1vw,42px)/1.14 var(--serif);letter-spacing:-.04em}
.weather-history-precip{color:#587160;font-size:13px;margin:14px 0 0}
.weather-micro{font-size:12px;color:#85684f;margin-top:11px}
.weather-data-warning{font-size:12px;max-width:1000px;color:#5d7362;line-height:1.8;border-top:1px solid #b9cbb9;padding-top:24px;margin:22px 0 0}
.weather-brevine{display:grid;grid-template-columns:1fr 1fr;gap:clamp(42px,7vw,100px);padding-top:100px;padding-bottom:105px;align-items:start}
.weather-brevine h2{font-size:clamp(52px,6vw,82px);letter-spacing:-.065em;line-height:1.07;margin:22px 0 30px}
.weather-brevine-copy>p:not(.weather-label){font-size:15px;color:var(--wx-muted);line-height:1.9;margin:0 0 19px}
.weather-brevine-copy>a{font-size:13px;font-weight:760;color:#1b5736;display:inline-block;margin-top:6px}
.weather-record{background:#193b30;color:#f5f6ef;padding:42px 38px 39px}
.weather-record>p:first-child{font-size:12px;line-height:1.7;text-transform:uppercase;letter-spacing:.12em;color:#d2b994}
.weather-record>strong{font:400 clamp(55px,7.1vw,100px)/1.1 var(--serif);letter-spacing:-.055em;display:block;color:#fff;margin:23px 0 12px;white-space:nowrap}
.weather-record>strong span{font-size:.42em;letter-spacing:0}
.weather-record>p:nth-of-type(2){font:400 21px/1.4 var(--serif);color:#e4d4bd}
.weather-record>small{display:block;font-size:12px;color:#cfddd0;line-height:1.65;margin:25px 0}
.weather-record>a{color:#fff;font-size:13px;font-weight:760}
.weather-method{background:#f0f2ec;padding:79px 0 77px}
.weather-method h2{font-size:clamp(29px,3.8vw,48px);letter-spacing:-.035em;margin:0 0 31px}
.weather-method-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}
.weather-method-grid>div{border-top:1px solid #bcccbc;padding:20px 0}
.weather-method-grid h3{font-size:24px;line-height:1.25;margin:0 0 13px}
.weather-method-grid p,.weather-credit{font-size:13px;color:#5b7361;line-height:1.8}
.weather-method-grid a,.weather-credit a{color:#24583b}
.weather-credit{border-top:1px solid #bcccbc;padding-top:19px;margin-top:27px;font-size:11px}
.weather-unavailable{background:#f3e7d9;border-left:3px solid #ad835b;padding:22px;font-size:14px;line-height:1.7}
.weather-return{padding:30px 0 78px}
.weather-return a{font-size:13px;color:#285a3c;font-weight:740}
@media(max-width:950px){
 .weather-current{align-items:flex-start;flex-direction:column}
 .weather-section-heading>p{max-width:270px}
 .weather-form-field select,.weather-form-field input{font-size:14px}
 .weather-switch form{grid-template-columns:1fr 1fr}
 .weather-switch button{grid-column:1/-1}
}
@media(max-width:700px){
 .weather-heading{padding:27px 0 62px}.weather-heading .breadcrumb{margin-bottom:33px}
 .weather-heading h1{font-size:clamp(45px,11.5vw,67px);letter-spacing:-.05em}
 .weather-lead{font-size:18px}
 .weather-switch{padding:20px 17px 19px;margin-top:-20px}
 .weather-switch form{grid-template-columns:1fr;gap:17px}.weather-switch button{grid-column:1}
 .weather-shortcuts{gap:10px 15px}
 .weather-now{padding-top:61px;padding-bottom:65px}
 .weather-section-heading{display:block}.weather-section-heading h2{font-size:clamp(41px,10vw,53px)}
 .weather-section-heading>p{max-width:none;margin-top:19px}
 .weather-current{padding:25px 20px}
 .weather-main-reading{gap:15px}.weather-symbol{font-size:35px}.weather-temperature{font-size:58px}
 .weather-measures{gap:26px}
 .weather-forecast-grid{grid-template-columns:1fr 1fr;gap:12px 21px}
 .weather-forecast-grid strong{font-size:18px;min-height:0}
 .weather-archives{padding:65px 0}
 .weather-archive-grid{grid-template-columns:1fr;gap:8px}
 .weather-archive-grid article{padding-top:25px;padding-bottom:27px}
 .weather-archive-grid h3{font-size:36px}
 .weather-history-temp strong{font-size:40px}
 .weather-brevine{display:block;padding-top:66px;padding-bottom:66px}
 .weather-brevine h2{font-size:61px}
 .weather-record{margin-top:40px;padding:32px 25px}
 .weather-record>strong{font-size:clamp(51px,13vw,75px)}
 .weather-method{padding:56px 0}.weather-method-grid{grid-template-columns:1fr;gap:0}
 .weather-return{padding-bottom:55px}
}
@media(max-width:355px){.weather-heading h1{font-size:43px}.weather-temperature{font-size:52px}.weather-record>strong{font-size:48px}}

/* Petit accès éditorial depuis l'accueil, sans alourdir la navigation. */
.weather-home-teaser{display:flex;justify-content:space-between;align-items:center;gap:42px;padding:45px 0 48px;border-top:1px solid #b6c7b4;border-bottom:1px solid #b6c7b4;margin-top:20px;margin-bottom:38px}
.weather-home-teaser>div{max-width:730px}
.weather-home-teaser h2{font:400 clamp(30px,3.5vw,45px)/1.2 var(--serif);letter-spacing:-.035em;margin:12px 0 14px;color:#244536}
.weather-home-teaser h2 em{font-style:italic;color:#9e7654}
.weather-home-teaser p{font-size:14px;line-height:1.75;color:#5c7261;margin:0}
.weather-home-teaser>a{display:inline-flex;gap:18px;align-items:center;color:#24543b;border-bottom:1px solid #24543b;font-size:13px;font-weight:760;text-decoration:none;flex-shrink:0;padding:11px 0}
@media(max-width:700px){.weather-home-teaser{display:block;padding:32px 0 37px;margin-bottom:25px}.weather-home-teaser>a{margin-top:15px}.weather-home-teaser h2{font-size:35px}}
/* Météo immédiatement visible sous le menu, sans encombrer le bandeau principal. */
.weather-home-ribbon{background:#e7eee6;border-bottom:1px solid #c9d7c9}
.weather-home-ribbon-inner{display:flex;align-items:center;justify-content:space-between;gap:20px 35px;min-height:87px;padding-block:15px;color:#244934;text-decoration:none}
.weather-home-ribbon-inner:hover{color:#8d5f40}
.weather-home-ribbon-title{display:flex;align-items:center;gap:15px;min-width:0}
.weather-home-ribbon-symbol{display:grid;place-items:center;width:45px;height:45px;border:1px solid #b5cbb8;border-radius:50%;font-size:27px;flex:none;color:#496a50}
.weather-home-ribbon-title strong{display:block;font:400 23px/1.25 var(--serif);letter-spacing:-.025em}
.weather-home-ribbon-title small{display:block;color:#677e6d;font-size:12px;margin-top:3px}
.weather-home-ribbon-reading{display:flex;flex-direction:column;align-items:start;gap:3px;margin-left:auto}
.weather-home-ribbon-reading strong{font:400 23px/1.2 var(--serif);white-space:nowrap}
.weather-home-ribbon-reading small{font-size:11px;color:#677c6b;line-height:1.4}
.weather-home-ribbon-link{font-size:12px;font-weight:750;line-height:1.5;white-space:nowrap;border-bottom:1px solid #9db29d;padding:5px 0}
.weather-home-ribbon-link span{font-size:15px;margin-left:9px;color:#8f694c}
@media(max-width:950px){
 .weather-home-ribbon-inner{gap:10px 20px;flex-wrap:wrap;padding-block:14px}
 .weather-home-ribbon-reading{margin-left:auto}
 .weather-home-ribbon-link{margin-left:60px}
}
@media(max-width:680px){
 .weather-home-ribbon-inner{display:grid;grid-template-columns:1fr auto;gap:10px 11px;padding-block:12px}
 .weather-home-ribbon-symbol{width:39px;height:39px;font-size:24px}
 .weather-home-ribbon-title{gap:10px}
 .weather-home-ribbon-title strong{font-size:20px}
 .weather-home-ribbon-title small{font-size:11px}
 .weather-home-ribbon-reading{margin-left:0;align-items:end;text-align:right;max-width:150px}
 .weather-home-ribbon-reading strong{font-size:20px}
 .weather-home-ribbon-reading small{font-size:10px}
 .weather-home-ribbon-link{grid-column:1/-1;margin-left:49px;font-size:11px;justify-self:start;margin-top:0;padding:0 0 3px;white-space:normal}
}
@media(max-width:360px){
 .weather-home-ribbon-title strong{font-size:18px}
 .weather-home-ribbon-reading strong{font-size:18px}
 .weather-home-ribbon-title small{font-size:10px}
}
