.rg-wrap{padding-top:40px;}
.rg-hero{position:relative;display:flex;align-items:flex-end;min-height:440px;border-radius:24px;overflow:hidden;margin:0 0 20px;background:var(--bg-panel-2);}
.rg-hero-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.rg-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,16,30,0) 30%,rgba(6,16,30,.55) 62%,rgba(6,16,30,.88));pointer-events:none;}
.rg-hero-txt{position:relative;z-index:1;padding:36px 40px;max-width:720px;}
.rg-hero .sp-eyebrow{color:rgba(255,255,255,.75);}
.rg-title{font-family:var(--font-head);font-size:clamp(30px,4.4vw,48px);font-weight:800;letter-spacing:-.03em;line-height:1.08;margin:0 0 12px;color:#fff;}
.rg-lead{font-size:17px;line-height:1.55;color:rgba(255,255,255,.88);margin:0 0 22px;}
.rg-credit{position:absolute;z-index:1;right:16px;bottom:12px;font-size:11.5px;color:rgba(255,255,255,.6);}

.rg-map-wrap{position:relative;z-index:0;isolation:isolate;margin:0 0 42px;}
.rg-map{height:560px;border-radius:20px;overflow:hidden;background:#1E1C18;box-shadow:var(--lg-edge);}
.rg-map .leaflet-control-attribution{background:rgba(6,16,30,.6);color:var(--text-muted);font-size:10px;}
.rg-map .leaflet-control-attribution a{color:var(--text-muted);}
.rg-map .leaflet-top.leaflet-right{margin:2px 2px 0 0;}
.rg-map .leaflet-control-zoom{border:0 !important;border-radius:14px;overflow:hidden;background:rgba(6,16,30,.55);-webkit-backdrop-filter:blur(10px) saturate(160%);backdrop-filter:blur(10px) saturate(160%);box-shadow:inset 1.5px 1.5px 0 -.5px rgba(255,255,255,.6), inset 0 0 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(0,0,0,.3);}
.rg-map .leaflet-control-zoom a{width:40px;height:40px;line-height:40px;font-size:20px;font-weight:600;background:transparent !important;color:#fff !important;border:0 !important;border-radius:0 !important;}
.rg-map .leaflet-control-zoom a + a{border-top:1px solid rgba(255,255,255,.12) !important;}
.rg-map .leaflet-control-zoom a:hover{background:rgba(255,255,255,.12) !important;}
.rg-map .leaflet-control-zoom a.leaflet-disabled{color:rgba(255,255,255,.3) !important;background:transparent !important;}
.rg-map-btn{position:absolute;z-index:500;display:inline-flex;align-items:center;padding:10px 16px;border-radius:999px;border:0;color:var(--text);font-family:inherit;font-weight:700;font-size:14px;text-decoration:none;cursor:pointer;}
.rg-map-open{top:12px;left:12px;}
.rg-map-uas{bottom:30px;left:12px;}
.rg-map-uas::before{content:"";display:inline-block;width:9px;height:9px;border-radius:50%;margin-right:9px;background:rgba(255,255,255,.35);transition:background .2s var(--ease),box-shadow .2s var(--ease);}
.rg-map-uas[aria-pressed="true"]::before{background:var(--amber);box-shadow:0 0 0 3px rgba(240,167,60,.3);}
.rg-pin{filter:drop-shadow(0 3px 4px rgba(6,25,46,.45));}
.leaflet-tooltip.rg-tip{background:rgba(6,16,30,.82);-webkit-backdrop-filter:blur(12px) saturate(160%);backdrop-filter:blur(12px) saturate(160%);color:#fff;border:0;border-radius:12px;padding:8px 13px;font-family:inherit;font-size:13px;font-weight:700;letter-spacing:-.005em;white-space:nowrap;box-shadow:inset 1px 1px 0 -.5px rgba(255,255,255,.5), inset 0 0 0 1px rgba(255,255,255,.12), 0 10px 24px rgba(0,0,0,.35);}
.leaflet-tooltip-top.rg-tip::before{border-top-color:rgba(6,16,30,.82);}

.rg-text{font-size:14.5px;line-height:1.65;color:var(--text-muted);margin:0 0 18px;max-width:820px;}
.rg-map-btn:focus-visible,.rg-nav-btn:focus-visible{outline:2px solid var(--sky);outline-offset:3px;}
.rg-carrousel-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;}
.rg-carrousel-head h2{margin:0;}
.rg-nav{display:flex;gap:8px;flex-shrink:0;}
.rg-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:0;color:var(--text);cursor:pointer;}
.rg-nav-btn:disabled{opacity:.35;cursor:default;}
.rg-statique .rg-nav{display:none;}
.rg-piste{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;touch-action:pan-x pan-y;padding:6px 4px 44px;margin:-6px -4px -32px;cursor:grab;}
.rg-piste::-webkit-scrollbar{display:none;}
.rg-piste{--fondu-g:0px;--fondu-d:0px;-webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fondu-g),#000 calc(100% - var(--fondu-d)),transparent 100%);mask-image:linear-gradient(90deg,transparent 0,#000 var(--fondu-g),#000 calc(100% - var(--fondu-d)),transparent 100%);transition:--fondu-g .25s ease,--fondu-d .25s ease;}
.rg-piste.rg-suite-g{--fondu-g:64px;}
.rg-piste.rg-suite-d{--fondu-d:64px;}
@property --fondu-g{syntax:'<length>';inherits:false;initial-value:0px;}
@property --fondu-d{syntax:'<length>';inherits:false;initial-value:0px;}
.rg-piste.rg-glisse{cursor:grabbing;scroll-snap-type:none;user-select:none;}
.rg-piste.rg-glisse a{pointer-events:none;}
.rg-piste.rg-anim{scroll-snap-type:none;}
.rg-piste.rg-glisse > *{transform:none !important;transition:none !important;}
.rg-piste .sp-near-card{flex:0 0 280px;scroll-snap-align:start;box-shadow:var(--lg-edge), 0 10px 24px rgba(0,0,0,.24);}
.rg-piste .sp-near-card:hover{box-shadow:var(--lg-edge), 0 16px 32px rgba(0,0,0,.3);}
.rg-piste a:focus-visible{outline:2px solid var(--sky);outline-offset:3px;}
.rg-note{display:inline-flex;align-items:center;gap:4px;color:var(--text);font-weight:700;}
.rg-star{width:13px;height:13px;fill:var(--amber);}

.rg-texte{font-size:16px;line-height:1.75;color:var(--text);margin:0 0 14px;}
.rg-intro{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:22px 48px;align-items:start;}
.rg-intro .rg-texte{margin:0;}
.rg-intro .rg-text{margin-bottom:0;}
.rg-faq-liste{border-top:1px solid rgba(255,255,255,.1);margin-top:0;}
.rg-faq-item{border-bottom:1px solid rgba(255,255,255,.1);}
.rg-faq-q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:20px;background:none;border:none;text-align:left;cursor:pointer;padding:20px 4px;font-family:inherit;font-size:16.5px;font-weight:700;letter-spacing:-.01em;color:#fff;}
.rg-faq-q > span:first-child{transition:transform .35s var(--ease);}
.rg-faq-q:hover > span:first-child{transform:translateX(8px);}
.rg-faq-q:focus-visible{outline:2px solid var(--sky);outline-offset:2px;border-radius:8px;}
.rg-faq-signe{position:relative;flex-shrink:0;width:30px;height:30px;border-radius:8px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);transition:background .3s ease, transform .4s var(--ease);}
.rg-faq-signe::before,.rg-faq-signe::after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;border-radius:2px;background:#fff;transition:transform .4s var(--ease);}
.rg-faq-signe::after{transform:rotate(90deg);}
.rg-faq-item.open .rg-faq-signe{background:rgba(255,255,255,.16);transform:rotate(180deg);}
.rg-faq-item.open .rg-faq-signe::after{transform:rotate(0deg);}
.rg-faq-a{display:grid;grid-template-rows:0fr;transition:grid-template-rows .45s var(--ease);}
.rg-faq-item.open .rg-faq-a{grid-template-rows:1fr;}
.rg-faq-a > div{overflow:hidden;}
.rg-faq-a p{margin:0;padding:0 50px 22px 4px;color:var(--text-muted);font-size:15px;line-height:1.65;opacity:0;transform:translateY(-6px);transition:opacity .35s ease, transform .45s var(--ease);}
.rg-faq-item.open .rg-faq-a p{opacity:1;transform:none;transition-delay:.08s;}
.rg-faq-item:not(.open) .rg-faq-a{visibility:hidden;transition:grid-template-rows .45s var(--ease), visibility 0s linear .45s;}
.rg-faq-item.open .rg-faq-a{visibility:visible;transition:grid-template-rows .45s var(--ease);}

.rg-wx-grille{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;}
.rg-wx{display:flex;flex-direction:column;gap:6px;min-height:168px;padding:16px 18px;border-radius:18px;background:var(--lg-bg), rgba(10,26,44,.3);box-shadow:var(--lg-edge);}
.rg-wx-ville{font-weight:800;font-size:15px;}
.rg-wx-sk{flex:1;border-radius:12px;}
.rg-wx-haut{display:flex;align-items:center;gap:10px;margin-top:2px;}
.rg-wx-ico .wx-ico{width:34px;height:34px;color:#fff;}
.rg-wx-temp{font-family:var(--font-head);font-size:30px;font-weight:800;letter-spacing:-.03em;font-variant-numeric:tabular-nums;}
.rg-wx-cond{font-size:13.5px;color:var(--text);}
.rg-wx-vent{font-size:13px;color:var(--text-muted);font-variant-numeric:tabular-nums;}
.rg-wx-avis{display:flex;align-items:center;gap:8px;margin-top:auto;padding-top:6px;font-size:13px;font-weight:700;}
.rg-wx-point{width:9px;height:9px;border-radius:50%;flex-shrink:0;}
.rg-wx-vide{margin:auto 0 0;font-size:13px;color:var(--text-muted);}

.rg-pro{display:flex;align-items:center;justify-content:space-between;gap:20px;background:var(--lg-bg), rgba(10,26,44,.3);box-shadow:var(--lg-edge);border-radius:20px;padding:22px 26px;}
.rg-pro h2{margin-bottom:6px;}
.rg-pro .rg-text{margin:0;}
.rg-pro .btn{flex-shrink:0;}

.rg-other{flex:0 0 172px;scroll-snap-align:start;display:flex;flex-direction:column;align-items:center;gap:12px;padding:20px 14px 16px;border-radius:18px;background:var(--lg-bg), rgba(10,26,44,.3);box-shadow:var(--lg-edge);text-decoration:none;font-size:14px;font-weight:700;line-height:1.25;text-align:center;transition:transform .25s var(--ease),box-shadow .25s var(--ease);}
.rg-other svg{width:96px;height:96px;}
.rg-other path{fill:rgba(143,211,244,.14);stroke:rgba(143,211,244,.75);stroke-width:2;stroke-linejoin:round;vector-effect:non-scaling-stroke;transition:fill .25s var(--ease);}
.rg-other:hover{transform:translateY(-3px);box-shadow:var(--lg-edge), 0 16px 34px rgba(0,0,0,.3);}
.rg-other:hover path{fill:rgba(143,211,244,.3);}

@media(max-width:1000px){
  .rg-intro{grid-template-columns:minmax(0,1fr);}
  .rg-wx-grille{grid-template-columns:repeat(2,minmax(0,1fr));}
  .rg-hero{min-height:400px;}
  .rg-map{height:480px;}
}
@media(max-width:700px){
  .rg-wx-grille{gap:10px;}
  .rg-wx{min-height:150px;padding:14px;}
  .rg-wx-temp{font-size:26px;}
  .rg-faq-q{font-size:15.5px;padding:18px 0;}
  .rg-faq-a p{padding-right:10px;font-size:14.5px;}
  .rg-texte{font-size:15px;}
  .rg-map-btn{font-size:13px;padding:9px 14px;}
  .rg-wrap{padding-top:24px;}
  .rg-hero{min-height:380px;border-radius:20px;}
  .rg-hero-txt{padding:52px 20px 24px;}
  .rg-credit{top:12px;bottom:auto;}
  .rg-lead{font-size:15.5px;}
  .rg-map{height:420px;border-radius:18px;}
  .rg-pro{flex-direction:column;align-items:flex-start;}
  .rg-nav{display:none;}
  .rg-piste{margin:-6px -16px -32px;padding:6px 16px 44px;scroll-padding-left:16px;}
  .rg-piste.rg-suite-g{--fondu-g:28px;}
  .rg-piste.rg-suite-d{--fondu-d:28px;}
  .rg-piste .sp-near-card{flex-basis:78%;}
  .rg-other{flex-basis:150px;}
}
