:root {
  --mdl-navy: #071827;
  --mdl-navy-soft: #10293a;
  --mdl-ink: #14212a;
  --mdl-ivory: #faf8f3;
  --mdl-paper: #fcfaf6;
  --mdl-paper-raised: #fffdf9;
  --mdl-mist: #dce5e5;
  --mdl-gold: #836131;
  --mdl-champagne: #c9aa6a;
  --mdl-champagne-pale: #ead8ae;
  --mdl-line: rgba(7, 24, 39, .18);
  --mdl-paper-grain: url("../../img/home/textures/paper-grain.svg");
  --mdl-serif: "Iowan Old Style", "Palatino Linotype", "Book Antiqua", Georgia, serif;
  --mdl-sans: Inter, "Helvetica Neue", Arial, sans-serif;
  --mdl-shell: min(1240px, calc(100vw - 64px));
}

/* Maison du Lac — cohérence d’expérience publique */
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
::selection{background:#c9aa6a;color:#071827}
:focus-visible{outline:1px solid #b99451;outline-offset:4px}
img{display:block}
h1,h2,h3{text-wrap:balance}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important}
}


.mdl-home-body {
  margin: 0;
  background-color: var(--mdl-paper);
  background-image: var(--mdl-paper-grain);
  background-size: 640px 640px;
  color: var(--mdl-ink);
  font-family: var(--mdl-sans);
}

.mdl-home-body * { box-sizing: border-box; }
.mdl-home-body a { color: inherit; text-decoration: none; }
.mdl-home-modular {
  overflow: clip;
  background-color: var(--mdl-paper);
  background-image: var(--mdl-paper-grain);
  background-size: 640px 640px;
}
.mdl-shell { width: var(--mdl-shell); margin-inline: auto; }
.mdl-section { position: relative; padding: clamp(88px, 9vw, 144px) 0; }
.mdl-kicker { margin: 0 0 22px; color: var(--mdl-gold); font: 600 11px/1.4 var(--mdl-sans); letter-spacing: .24em; text-transform: uppercase; }
.mdl-section-head { max-width: 720px; }
.mdl-section-head--center { margin-inline: auto; text-align: center; }
.mdl-section h2,
.mdl-custom h2 { margin: 0; font: 400 clamp(42px, 5.4vw, 76px)/.98 var(--mdl-serif); letter-spacing: -.035em; }
.mdl-lead { margin-top: 28px; color: rgba(20, 33, 42, .74); font: 400 clamp(17px, 1.5vw, 21px)/1.7 var(--mdl-serif); }
.mdl-lead p { margin: 0; }
.mdl-actions { display: flex; flex-wrap: wrap; gap: 22px; align-items: center; margin-top: 38px; }
.mdl-button {
  position: relative;
  display: inline-flex;
  min-height: 56px;
  gap: 20px;
  align-items: center;
  justify-content: center;
  padding: 0 32px;
  overflow: hidden;
  border: 1px solid rgba(184, 146, 82, .78);
  background: rgba(251, 248, 242, .16);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.16);
  color: var(--mdl-navy) !important;
  font: 600 10px/1 var(--mdl-sans);
  letter-spacing: .19em;
  text-transform: uppercase;
  isolation: isolate;
  transition: border-color .35s ease, background .35s ease, box-shadow .35s ease, color .35s ease, transform .35s ease;
}
.mdl-button::before {
  position: absolute;
  top: -85%;
  bottom: -85%;
  left: -42%;
  width: 34%;
  background: linear-gradient(105deg, transparent 0, rgba(201,170,106,.08) 20%, rgba(255,245,214,.72) 48%, rgba(201,170,106,.26) 68%, transparent 100%);
  content: "";
  opacity: 0;
  pointer-events: none;
  transform: translate3d(-180%,0,0) skewX(-18deg);
}
.mdl-button::after {
  width: 28px;
  height: 1px;
  background: var(--mdl-gold);
  content: "";
  transition: background .35s ease, transform .35s ease;
}
.mdl-button:hover {
  border-color: var(--mdl-navy);
  background: var(--mdl-navy);
  box-shadow: 0 14px 34px rgba(7,24,39,.16);
  color: #fff !important;
  transform: translateY(-2px);
}
.mdl-button:hover::before { animation: mdlButtonChampagneGlint .9s cubic-bezier(.2,.65,.25,1) 1; }
.mdl-button:hover::after { background: var(--mdl-champagne-pale); transform: translateX(4px); }
.mdl-button:focus-visible,
.mdl-text-link:focus-visible { outline: 2px solid var(--mdl-champagne); outline-offset: 4px; }
.mdl-button--light {
  border-color: rgba(201,170,106,.78);
  background: rgba(4,19,31,.18);
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.08);
  color: #fff !important;
  backdrop-filter: blur(8px);
}
.mdl-button--light::after { background: var(--mdl-champagne); }
.mdl-button--light:hover {
  border-color: var(--mdl-champagne);
  background: var(--mdl-champagne);
  box-shadow: 0 16px 40px rgba(0,0,0,.2);
  color: var(--mdl-navy) !important;
}
.mdl-button--light:hover::after { background: var(--mdl-navy); }
@keyframes mdlButtonChampagneGlint {
  0% { opacity: 0; transform: translate3d(-180%,0,0) skewX(-18deg); }
  18% { opacity: .75; }
  70% { opacity: .55; }
  100% { opacity: 0; transform: translate3d(520%,0,0) skewX(-18deg); }
}
.mdl-text-link { display: inline-flex; gap: 16px; align-items: center; padding-bottom: 8px; border-bottom: 1px solid rgba(184,146,82,.72); font: 600 10px/1.3 var(--mdl-sans); letter-spacing: .17em; text-transform: uppercase; transition: color .25s ease, border-color .25s ease; }
.mdl-text-link span { color: var(--mdl-gold); transition: transform .2s ease; }
.mdl-text-link:hover { border-color: currentColor; }
.mdl-text-link:hover span { transform: translateX(4px); }

.mdl-site-nav {
  position: relative;
  z-index: 30;
  top: 0;
  left: 0;
  display: grid;
  width: 100%;
  min-height: 96px;
  grid-template-columns: 230px 1fr auto;
  gap: 28px;
  align-items: center;
  padding: 18px clamp(24px, 4vw, 64px);
  border-bottom: 1px solid rgba(255,255,255,.2);
  background: var(--mdl-navy);
  color: #fff;
  font-family: var(--mdl-sans);
}
.mdl-site-nav a,
.mdl-site-nav a:link,
.mdl-site-nav a:visited { color: inherit !important; text-decoration: none !important; }
.mdl-site-nav__brand strong { color: #fff; }
.mdl-site-nav__brand span { color: var(--mdl-champagne); }
.mdl-site-nav__desktop a,
.mdl-site-nav__account,
.mdl-site-nav__cart,
.mdl-language-switcher summary { color: rgba(255,255,255,.9) !important; }
.mdl-language-switcher div a,
.mdl-language-switcher div a:visited { color: var(--mdl-ink) !important; }
.mdl-site-nav.is-overlay { position: absolute; background: transparent; }
.mdl-site-nav__brand { display: flex; flex-direction: column; width: max-content; }
.mdl-site-nav__brand strong { font: 400 24px/1 var(--mdl-serif); letter-spacing: .02em; }
.mdl-site-nav__brand span { margin-top: 7px; font-size: 9px; letter-spacing: .25em; text-transform: uppercase; }
.mdl-site-nav__desktop { display: flex; justify-content: center; gap: clamp(18px, 2.1vw, 34px); }
.mdl-site-nav__desktop a,
.mdl-site-nav__account,
.mdl-site-nav__cart { font-size: 10px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.mdl-site-nav__desktop a { position: relative; white-space: nowrap; }
.mdl-site-nav__desktop a { transition: color .25s ease; }
.mdl-site-nav__desktop a::after { position: absolute; right: 100%; bottom: -8px; left: 0; height: 1px; background: var(--mdl-champagne); content: ""; transition: right .25s ease; }
.mdl-site-nav__desktop a:hover,
.mdl-site-nav__desktop a:focus-visible,
.mdl-site-nav__account:hover,
.mdl-site-nav__cart:hover { color: var(--mdl-champagne-pale) !important; }
.mdl-site-nav__desktop a:hover::after { right: 0; }
.mdl-site-nav__tools { display: flex; gap: 16px; align-items: center; }
.mdl-commerce-pill { max-width: 160px; padding: 7px 12px; border: 1px solid rgba(201,170,106,.62); border-radius: 999px; color: var(--mdl-champagne-pale); font-size: 8px; letter-spacing: .14em; text-align: center; text-transform: uppercase; }
.mdl-commerce-pill--open { background: var(--mdl-champagne); color: var(--mdl-navy); }
.mdl-site-nav__cart span { display: inline-grid; width: 18px; height: 18px; margin-left: 4px; place-items: center; border-radius: 50%; background: var(--mdl-champagne); color: var(--mdl-navy); }
.mdl-language-switcher { position: relative; }
.mdl-language-switcher summary { cursor: pointer; font-size: 10px; font-weight: 700; letter-spacing: .13em; list-style: none; }
.mdl-language-switcher summary::-webkit-details-marker { display: none; }
.mdl-language-switcher div { position: absolute; top: 28px; right: 0; min-width: 150px; padding: 10px; background-color: var(--mdl-paper); background-image: var(--mdl-paper-grain); background-size: 640px 640px; box-shadow: 0 18px 40px rgba(0,0,0,.2); color: var(--mdl-ink); }
.mdl-language-switcher div a { display: block; padding: 8px; font-size: 11px; }
.mdl-site-nav__mobile { display: none; }

.mdl-hero-time {
  position: relative;
  display: grid;
  min-height: min(980px, 100svh);
  place-items: center;
  overflow: hidden;
  background: var(--mdl-navy);
  color: #fff;
  isolation: isolate;
  --mdl-hero-current-desktop: url("../../img/home/hero-dayparts/hero-day.webp");
  --mdl-hero-current-mobile: url("../../img/home/hero-dayparts/mobile/hero-day.webp");
  --mdl-hero-current: var(--mdl-hero-current-desktop);
  --mdl-parallax-x: 0px;
  --mdl-parallax-y: 0px;
}
.mdl-hero-time__image { position: absolute; z-index: -3; inset: -18px; background: var(--mdl-hero-current) center/cover no-repeat; transform: translate(var(--mdl-parallax-x), var(--mdl-parallax-y)) scale(1.025); transition: opacity var(--mdl-hero-transition-duration, 2.5s) ease, transform 1.2s ease; }
.mdl-hero-time.is-hero-transitioning .mdl-hero-time__image { opacity: .2; }
.mdl-hero-time__veil { position: absolute; z-index: -2; inset: 0; background: linear-gradient(180deg, rgba(4,17,29,.4), rgba(5,18,31,.08) 48%, rgba(5,18,31,.62)), radial-gradient(circle at 50% 47%, transparent 0, rgba(0,0,0,.25) 82%); }
.mdl-hero-time__content { animation:mdl-home-arrive 900ms ease-out both; width:min(920px,calc(100% - 40px)); margin-inline:auto; padding-top:80px; text-align:center; display:flex; flex-direction:column; align-items:center; }
@keyframes mdl-home-arrive { from { opacity:.45; transform:translateY(12px); } to { opacity:1; transform:none; } }
.mdl-hero-time__actions { align-items: center; display: flex; flex-wrap: wrap; gap: 1.25rem 2rem; justify-content: center; }
.mdl-hero-time__actions .mdl-text-link--light { color: #fff; font-size: .72rem; letter-spacing: .14em; text-decoration: none; text-transform: uppercase; }
.mdl-hero-time__logo { display:block; flex:0 0 auto; width:145px; height:auto; max-height:86px; margin:0 auto 24px!important; object-fit:contain; align-self:center; }
.mdl-hero-time .mdl-kicker { color: var(--mdl-champagne-pale); }
.mdl-hero-time h1 { margin: 0; font: 400 clamp(60px, 9.2vw, 124px)/.88 var(--mdl-serif); letter-spacing: -.055em; text-shadow: 0 4px 34px rgba(0,0,0,.2); }
.mdl-hero-time__city { margin: 24px 0 0; color: rgba(255,255,255,.9); font-size: 10px; letter-spacing: .36em; text-transform: uppercase; }
.mdl-hero-time__signature { margin: 24px auto 40px; color: var(--mdl-champagne-pale); font: italic 400 clamp(18px, 2vw, 25px)/1.4 var(--mdl-serif); }
.mdl-hero-time .mdl-button--light { min-width: 290px; }
.mdl-home-modular > section:not(.mdl-hero-time):not(:first-child),
.mdl-home-modular > footer {
  content-visibility: auto;
  contain-intrinsic-size: auto 760px;
}
/* The three entrances remain in document flow and work without JavaScript. */
.mdl-home-paths { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:12px max(24px,4vw);background:#06171d;color:#fff;position:relative; }
.mdl-home-paths a { display:flex;align-items:flex-start;gap:18px;padding:34px 26px;border-block:1px solid rgba(201,170,106,.3);min-width:0; }
.mdl-home-paths a+a { border-inline-start:1px solid rgba(201,170,106,.2); }
.mdl-home-paths a>span { color:var(--mdl-champagne);font:italic 22px/1.2 var(--mdl-serif); }
.mdl-home-paths small { display:block;color:var(--mdl-champagne-pale);font:600 10px/1.5 var(--mdl-sans);letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px; }
.mdl-home-paths strong { display:block;font:400 clamp(21px,1.9vw,28px)/1.2 var(--mdl-serif); }
.mdl-home-paths p { margin:12px 0 0;font:400 15px/1.5 var(--mdl-serif);color:rgba(255,255,255,.76); }
.mdl-home-paths i { margin-inline-start:auto;color:var(--mdl-champagne);font-style:normal;transition:transform .25s; }
.mdl-home-paths a:hover i { transform:translate(3px,-3px); }
.mdl-home-paths a:focus-visible { outline:2px solid var(--mdl-champagne);outline-offset:-4px; }
@media(max-width:820px){.mdl-home-paths{grid-template-columns:1fr;padding:0 24px;}.mdl-home-paths a{padding:24px 0;border-block-start:0;}.mdl-home-paths a+a{border-inline-start:0;}.mdl-home-paths p{margin-top:7px;}}
.mdl-prelaunch {
  background-color: var(--mdl-paper);
  background-image: linear-gradient(110deg, rgba(255,255,255,.28), transparent 42%), var(--mdl-paper-grain);
  background-size: auto, 640px 640px;
  color: var(--mdl-ink);
}

.mdl-prelaunch.is-lifecycle .mdl-section-head{
  position:relative;
  min-height:0;
  height:100%;
  padding:clamp(44px,5vw,76px);
  display:flex;
  flex-direction:column;
  justify-content:center;
  overflow:hidden;
  isolation:isolate;
  background:
    linear-gradient(90deg,rgba(250,247,240,.93) 0%,rgba(250,247,240,.78) 39%,rgba(250,247,240,.36) 72%,rgba(250,247,240,.14) 100%),
    url("../../img/home/editorial/prelaunch-alpine-lithographie-real.jpg") center/cover no-repeat;
  border:1px solid rgba(154,111,40,.16);border-right:0;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.30);
}
.mdl-prelaunch.is-lifecycle .mdl-section-head:after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:repeating-linear-gradient(0deg,rgba(83,72,53,.018) 0,rgba(83,72,53,.018) 1px,transparent 1px,transparent 4px);
  mix-blend-mode:multiply;opacity:.45
}
.mdl-prelaunch.is-lifecycle .mdl-section-head>*{position:relative;z-index:1;max-width:690px}
.mdl-prelaunch.is-lifecycle[data-stage-position="1"] .mdl-section-head{background-position:center,54% center}
.mdl-prelaunch.is-lifecycle[data-stage-position="2"] .mdl-section-head{background-position:center,63% center}
.mdl-prelaunch.is-lifecycle[data-stage-position="3"] .mdl-section-head{background-position:center,72% center}
.mdl-prelaunch.is-lifecycle[data-stage-position="4"] .mdl-section-head{background-position:center,81% center}
.mdl-prelaunch.is-lifecycle[data-stage-position="5"] .mdl-section-head{background-position:center,44% center}
.mdl-prelaunch.is-lifecycle[data-stage-position="6"] .mdl-section-head{background-position:center,34% center}

.mdl-prelaunch .mdl-section-head h2 { color: var(--mdl-ink) !important; text-shadow: none; }
.mdl-prelaunch .mdl-lead,.mdl-prelaunch .mdl-lead p { color: rgba(20, 33, 42, .82) !important; }
.mdl-prelaunch .mdl-text-link { color: var(--mdl-ink) !important; }

.mdl-prelaunch .mdl-button--tester{
  min-width:min(100%,360px);
  padding:18px 26px;
  border:1px solid #aa7928;
  background:linear-gradient(135deg,#c99539 0%,#ae7415 100%);
  color:#fffaf0!important;
  box-shadow:0 13px 30px rgba(125,84,20,.16);
  letter-spacing:.12em;
}
.mdl-prelaunch .mdl-button--tester:hover,
.mdl-prelaunch .mdl-button--tester:focus-visible{
  background:linear-gradient(135deg,#b88228 0%,#95600d 100%);
  color:#fff!important;
  transform:translateY(-1px)
}

.mdl-prelaunch::before { position: absolute; top: 0; right: 0; left: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(184,146,82,.3), transparent); content: ""; }
.mdl-prelaunch__grid { position:relative; display:grid; grid-template-columns:minmax(0,.95fr) minmax(420px,.7fr); gap:0; align-items:stretch; }
.mdl-prelaunch__status { height:100%; padding: clamp(34px, 4vw, 54px); border: 1px solid rgba(7,24,39,.17); background-color: rgba(255,253,249,.82); background-image: var(--mdl-paper-grain); background-size: 640px 640px; box-shadow: 0 24px 70px rgba(7,24,39,.06), inset 0 0 0 8px rgba(255,255,255,.2); color: var(--mdl-ink); backdrop-filter: blur(10px); }
.mdl-prelaunch__status span,.mdl-prelaunch__status p,.mdl-prelaunch__status strong { color: inherit; text-shadow: none; }
.mdl-prelaunch__status .mdl-progress__head span,.mdl-prelaunch__status .mdl-prelaunch__counter span { color: var(--mdl-ink) !important; }
.mdl-prelaunch__status .mdl-progress__head strong { color: var(--mdl-gold) !important; }
.mdl-progress__head { display: flex; justify-content: space-between; gap: 20px; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; }
.mdl-progress__head strong { color: var(--mdl-gold); font: 400 26px/1 var(--mdl-serif); }
.mdl-progress { height: 2px; margin: 20px 0 40px; background: rgba(7,24,39,.14); }
.mdl-progress span { display: block; height: 100%; background: var(--mdl-gold); }
.mdl-prelaunch__counter { display:grid; grid-template-columns:1fr auto; grid-template-areas:"label value" "copy value"; gap:7px 28px; align-items:center; padding:25px 0 28px; border-top:1px solid rgba(154,111,40,.18); border-bottom:1px solid var(--mdl-line); }
.mdl-prelaunch__counter span { grid-area:label; max-width:none; color:#85672f!important; font:600 9px/1.4 var(--mdl-sans); letter-spacing:.15em; text-transform:uppercase; }
.mdl-prelaunch__counter strong { grid-area:value; max-width:210px; text-align:right; color:#86672f!important; font:400 21px/1.18 var(--mdl-serif); }
.mdl-prelaunch__counter small { font-size: 18px; opacity: .55; }
.mdl-prelaunch__timeline { margin: 32px 0 0; padding: 0; list-style: none; }
.mdl-prelaunch__timeline li { display: grid; grid-template-columns: 34px 1fr; gap: 18px; padding: 12px 0; color: rgba(20,33,42,.5); }
.mdl-prelaunch__timeline li span { font-size: 10px; letter-spacing: .1em; }
.mdl-prelaunch__timeline li p { margin: 0; font: 400 15px/1.45 var(--mdl-serif); }
.mdl-prelaunch__timeline li.is-current { color: var(--mdl-ink); }
.mdl-prelaunch__timeline li.is-current span { color: var(--mdl-gold); }
.mdl-prelaunch__timeline li.is-complete { color: rgba(20,33,42,.72); }
.mdl-prelaunch__timeline li.is-complete span { color: #72867c; }
.mdl-prelaunch__timeline li.is-complete p::after { content: "  ✓"; color: #72867c; font: 700 10px/1 var(--mdl-sans); }
.mdl-prelaunch__timeline li.is-future { color: rgba(20,33,42,.34); }


.mdl-teasing-discovery{padding:clamp(78px,8vw,118px) 0 0;background:#061722;color:#fff}
.mdl-teasing-discovery__head{display:grid;grid-template-columns:minmax(0,1fr) minmax(320px,.7fr);gap:clamp(50px,8vw,120px);align-items:end;padding-bottom:clamp(48px,5vw,72px)}
.mdl-teasing-discovery .mdl-kicker{color:var(--mdl-champagne)}
.mdl-teasing-discovery__head h2{max-width:760px;margin:0;color:#fff;font:400 clamp(46px,5.4vw,76px)/.96 var(--mdl-serif);letter-spacing:-.045em}
.mdl-teasing-discovery__head p:not(.mdl-kicker){max-width:520px;margin:0 0 24px;color:rgba(255,255,255,.72);font:400 17px/1.65 var(--mdl-serif)}
.mdl-teasing-discovery .mdl-text-link{color:var(--mdl-champagne-pale)!important}
.mdl-teasing-discovery__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-top:1px solid rgba(201,170,106,.25);border-bottom:1px solid rgba(201,170,106,.25)}
.mdl-teasing-discovery__card{position:relative;min-height:clamp(330px,29vw,470px);overflow:hidden;color:#fff!important;isolation:isolate}
.mdl-teasing-discovery__card:nth-child(odd){border-right:1px solid rgba(201,170,106,.2)}
.mdl-teasing-discovery__card:nth-child(-n+2){border-bottom:1px solid rgba(201,170,106,.2)}
.mdl-teasing-discovery__card img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .8s ease,filter .6s ease}
.mdl-teasing-discovery__veil{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(3,15,23,.1),rgba(3,15,23,.82))}
.mdl-teasing-discovery__copy{position:absolute;right:clamp(26px,4vw,54px);bottom:clamp(26px,4vw,48px);left:clamp(26px,4vw,54px)}
.mdl-teasing-discovery__copy small{display:block;margin-bottom:14px;color:var(--mdl-champagne);font:600 9px/1 var(--mdl-sans);letter-spacing:.18em}
.mdl-teasing-discovery__copy strong{display:block;max-width:530px;font:400 clamp(34px,3.4vw,52px)/.98 var(--mdl-serif)}
.mdl-teasing-discovery__copy em{display:block;max-width:490px;margin-top:14px;color:rgba(255,255,255,.73);font:normal 15px/1.55 var(--mdl-serif)}
.mdl-teasing-discovery__copy i{display:grid;width:42px;height:42px;margin-top:22px;place-items:center;border:1px solid rgba(201,170,106,.7);border-radius:50%;color:var(--mdl-champagne-pale);font-style:normal}
.mdl-teasing-discovery__card:hover img{transform:scale(1.045);filter:saturate(1.05) brightness(1.03)}
@media(max-width:820px){.mdl-teasing-discovery__head,.mdl-teasing-discovery__grid{grid-template-columns:1fr}.mdl-teasing-discovery__card,.mdl-teasing-discovery__card:nth-child(odd),.mdl-teasing-discovery__card:nth-child(-n+2){border-right:0;border-bottom:1px solid rgba(201,170,106,.2)}.mdl-teasing-discovery__card:last-child{border-bottom:0}}
.mdl-registry { position: relative; overflow: hidden; padding: clamp(64px, 6vw, 88px) 0; border-top: 1px solid rgba(201,170,106,.3); border-bottom: 1px solid rgba(201,170,106,.24); background: radial-gradient(circle at 92% 0, rgba(201,170,106,.11), transparent 31%), linear-gradient(115deg, #04131f, #071b2a 58%, #04131f); color: #fff; }
.mdl-registry::before { position: absolute; top: -190px; right: -130px; width: 390px; height: 390px; border: 1px solid rgba(201,170,106,.12); border-radius: 50%; box-shadow: 0 0 0 44px rgba(201,170,106,.025), 0 0 0 88px rgba(201,170,106,.018); content: ""; pointer-events: none; }
.mdl-registry__inner { position: relative; display: grid; grid-template-columns: minmax(280px,.72fr) minmax(560px,1.28fr); gap: clamp(58px,7vw,116px); align-items: center; }
.mdl-registry__intro { padding-right: clamp(24px,4vw,70px); border-right: 1px solid rgba(201,170,106,.3); }
.mdl-registry__form-panel { min-width: 0; }
.mdl-registry .mdl-kicker { color: var(--mdl-champagne); }
.mdl-registry h2 { max-width: 480px; margin: 0; color: #fff; font: 400 clamp(38px,3.8vw,56px)/.98 var(--mdl-serif); letter-spacing: -.04em; }
.mdl-registry__lead { max-width: 470px; margin: 18px 0 0; color: rgba(255,255,255,.68); font: 400 16px/1.6 var(--mdl-serif); }
.mdl-registry__notice { margin: 0 0 18px; padding: 13px 15px; border: 1px solid rgba(234,216,174,.36); background: rgba(255,255,255,.05); color: var(--mdl-champagne-pale); font: 400 13px/1.45 var(--mdl-serif); }
.mdl-registry__notice.is-error { border-color: rgba(224,137,123,.58); color: #f5d2cc; }
.mdl-registry__notice.is-warning { border-color: rgba(224,197,142,.58); }
.mdl-registry__form { margin: 0; }
.mdl-registry__fields { display: grid; grid-template-columns: minmax(150px,.65fr) minmax(230px,1.15fr) minmax(205px,.8fr); gap: 12px; align-items: end; }
.mdl-registry__fields label { display: grid; gap: 10px; }
.mdl-registry__fields label > span { color: rgba(255,255,255,.72); font: 600 9px/1.2 var(--mdl-sans); letter-spacing: .16em; text-transform: uppercase; }
.mdl-registry__fields label small { font-size: 8px; font-weight: 400; letter-spacing: .08em; opacity: .58; }
.mdl-registry__fields input { width: 100%; height: 52px; padding: 0 15px; border: 1px solid rgba(234,216,174,.32); border-radius: 0; outline: 0; background: rgba(255,255,255,.045); box-shadow: none; color: #fff; font: 400 16px/1 var(--mdl-serif); transition: border-color .25s ease, background .25s ease, box-shadow .25s ease; }
.mdl-registry__fields input:focus { border-color: var(--mdl-champagne); background: rgba(255,255,255,.09); box-shadow: 0 0 0 3px rgba(201,170,106,.09); }
.mdl-registry__honeypot { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip-path: inset(50%) !important; }
.mdl-registry__consent { display: grid; grid-template-columns: 18px 1fr; gap: 10px; align-items: start; margin: 15px 0 0; color: rgba(255,255,255,.58); font: 400 11px/1.5 var(--mdl-sans); }
.mdl-registry__consent input { width: 16px; height: 16px; margin: 1px 0 0; accent-color: var(--mdl-champagne); }
.mdl-registry__consent a { color: var(--mdl-champagne-pale) !important; border-bottom: 1px solid rgba(234,216,174,.45); }
.mdl-registry__form .mdl-button { width: 100%; min-width: 0; height: 52px; padding: 0 18px; white-space: nowrap; }
.mdl-registry__promise { margin: 18px 0 0 28px; color: rgba(255,255,255,.38); font: 600 8px/1.45 var(--mdl-sans); letter-spacing: .12em; text-transform: uppercase; }

/* Photographic origin: single canonical component, including transitions. */
.mdl-origin { position:relative; display:grid; grid-template-columns:minmax(0,1fr); padding:0; overflow:hidden; background:#06171d; }
.mdl-origin__panel { position:relative; display:flex; min-width:0; min-height:640px; align-items:center; padding:clamp(40px,6vw,88px); overflow:hidden; background:var(--mdl-scene) center/cover no-repeat; color:#fff; isolation:isolate; }
.mdl-origin__panel::before { position:absolute; z-index:-1; inset:0; background:linear-gradient(90deg,rgba(4,15,25,.82),rgba(4,15,25,.42) 42%,rgba(4,15,25,.12) 80%); content:""; }
.mdl-origin__panel--source { justify-content:flex-end; }
.mdl-origin__panel--source::before { background:linear-gradient(270deg,rgba(4,15,25,.84),rgba(4,15,25,.4) 45%,rgba(4,15,25,.1)); }
.mdl-origin__panel::after { content:"";position:absolute;z-index:-1;inset:0;pointer-events:none;background:linear-gradient(180deg,#06171d,transparent 15%,transparent 85%,#06171d); }
.mdl-origin__copy { max-width:480px; position:relative; }
.mdl-origin .mdl-kicker { color:var(--mdl-champagne); }
.mdl-origin h2 { font-size:clamp(42px,4.6vw,64px); }
.mdl-origin p:not(.mdl-kicker) { max-width:440px; margin:26px 0; font:400 19px/1.65 var(--mdl-serif); color:rgba(255,255,255,.9); }
.mdl-origin__figures { display:flex; flex-wrap:wrap; gap:20px; margin:30px 0; }
.mdl-origin__figures span { display:flex; gap:8px; align-items:baseline; padding-inline-end:18px; border-inline-end:1px solid rgba(255,255,255,.25); font-size:11px; letter-spacing:.08em; text-transform:uppercase; }
.mdl-origin__figures span:last-child { border:0; padding:0; }
.mdl-origin__figures strong { color:var(--mdl-champagne-pale); font:400 30px/1 var(--mdl-serif); }
.mdl-origin .mdl-text-link { color:#fff; }
.mdl-origin .mdl-text-link span { color:var(--mdl-champagne); }
.mdl-origin::after { content:"";position:absolute;bottom:0;inset-inline:0;height:64px;pointer-events:none;background:linear-gradient(transparent,var(--mdl-ivory)); }
@media(max-width:820px){
 .mdl-origin__panel{min-height:600px;align-items:flex-end;padding:40px 24px 64px;}
 .mdl-origin__panel::before,.mdl-origin__panel--source::before{background:linear-gradient(180deg,rgba(4,15,25,.05),rgba(4,15,25,.35) 35%,rgba(4,15,25,.9));}
 .mdl-origin__panel--source{justify-content:flex-start;}
 .mdl-origin__copy{max-width:100%;}
}

.mdl-collection {
  background-color: var(--mdl-ivory);
  background-image: linear-gradient(180deg, rgba(255,255,255,.22), transparent 35%), var(--mdl-paper-grain);
  background-size: auto, 640px 640px;
}
.mdl-collection__principle { display: flex; justify-content: center; gap: 18px; align-items: center; margin: 36px 0 0; color: var(--mdl-gold); font-size: 10px; letter-spacing: .16em; text-transform: uppercase; }
.mdl-collection__principle i { width: 34px; height: 1px; background: var(--mdl-gold); opacity: .5; }
.mdl-collection__family { margin-top: clamp(48px, 5vw, 72px); }
.mdl-collection__family > header { display: flex; gap: 22px; align-items: center; margin-bottom: 32px; padding-bottom: 20px; border-bottom: 1px solid var(--mdl-line); }
.mdl-collection__family > header > span { color: var(--mdl-gold); font: 400 34px/1 var(--mdl-serif); }
.mdl-collection__family header p { margin: 0 0 4px; font-size: 9px; letter-spacing: .2em; text-transform: uppercase; }
.mdl-collection__family h3 { margin: 0; font: 400 34px/1 var(--mdl-serif); }
.mdl-collection__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px 18px; }
.mdl-creation-card { min-width: 0; }
.mdl-creation-card__image { position: relative; display: block; aspect-ratio: 4/5; overflow: hidden; background: #dfe5e4; }
.mdl-creation-card__image img { display: block; width: 100%; max-width: 100%; height: 100%; object-fit: contain; object-position: center; transition: transform .7s cubic-bezier(.2,.7,.2,1); }
.mdl-creation-card:hover .mdl-creation-card__image img { transform: scale(1.035); }
.mdl-creation-card__image.is-placeholder { background: radial-gradient(circle at 50% 33%, rgba(255,255,255,.82), transparent 24%), linear-gradient(155deg, #dfe7e5, #aebec0 52%, #627a85); color: #fff; }
.mdl-creation-card__image.is-placeholder[data-mdl-element="Terre"] { background: radial-gradient(circle at 50% 33%, rgba(238,242,224,.68), transparent 24%), linear-gradient(155deg, #cfd9cc, #849685 52%, #41594e); }
.mdl-creation-card__image.is-placeholder[data-mdl-element="Feu"] { background: radial-gradient(circle at 50% 33%, rgba(255,239,204,.68), transparent 24%), linear-gradient(155deg, #d8c9b3, #a28162 52%, #654638); }
.mdl-creation-card__image.is-placeholder[data-mdl-element="Air"] { background: radial-gradient(circle at 50% 33%, rgba(255,255,255,.9), transparent 24%), linear-gradient(155deg, #e7e8e5, #b4b9b7 52%, #788287); }
.mdl-creation-card__image.is-placeholder::before { position: absolute; inset: 13%; border: 1px solid rgba(255,255,255,.3); content: ""; }
.mdl-creation-card__placeholder { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; flex-direction: column; padding: 32px; text-align: center; }
.mdl-creation-card__placeholder small { font: 600 8px/1 var(--mdl-sans); letter-spacing: .25em; text-transform: uppercase; }
.mdl-creation-card__placeholder strong { max-width: 210px; margin: 18px 0 14px; font: 400 clamp(25px,2.1vw,34px)/.95 var(--mdl-serif); letter-spacing: -.025em; }
.mdl-creation-card__placeholder i { font: italic 400 15px/1 var(--mdl-serif); opacity: .78; }
.mdl-creation-card__number { position: absolute; top: 16px; left: 16px; display: grid; width: 34px; height: 34px; place-items: center; border: 1px solid rgba(255,255,255,.65); border-radius: 50%; background: rgba(7,24,39,.25); color: #fff; font-size: 9px; backdrop-filter: blur(7px); }
.mdl-creation-card > div { padding: 22px 4px 0; }
.mdl-creation-card > div > p:first-child { margin: 0 0 8px; color: var(--mdl-gold); font-size: 9px; letter-spacing: .13em; text-transform: uppercase; }
.mdl-creation-card h4 { margin: 0; font: 400 27px/1.1 var(--mdl-serif); }
.mdl-creation-card h4 a { border-bottom: 1px solid transparent; }
.mdl-creation-card h4 a:hover { border-color: currentColor; }
.mdl-creation-card h4 + p { min-height: 48px; margin: 12px 0 0; color: rgba(20,33,42,.66); font: 400 14px/1.55 var(--mdl-serif); }
.mdl-creation-card__foot { display: flex; justify-content: space-between; gap: 16px; margin-top: 20px; padding-top: 14px; border-top: 1px solid var(--mdl-line); font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }
.mdl-creation-card__foot strong { font-weight: 600; }
.mdl-collection__cta { display:flex;flex-wrap:wrap;gap:22px;align-items:center;justify-content:center;margin-top:72px;text-align:center; }

.mdl-circle {
  position: relative;
  overflow: hidden;
  background: #061722;
  color: #fff;
}
.mdl-circle .mdl-kicker { color: var(--mdl-champagne); }

.mdl-circle-v2__intro {
  display: grid;
  grid-template-columns: minmax(0,1.1fr) minmax(320px,.65fr);
  gap: clamp(36px,6vw,90px);
  align-items: end;
  padding-top: clamp(72px,7vw,110px);
  padding-bottom: clamp(58px,6vw,88px);
}
.mdl-circle-v2__intro h2 {
  max-width: 760px;
  margin: 0;
  color: #fff;
  font: 400 clamp(48px,5.5vw,78px)/1.02 var(--mdl-serif);
  letter-spacing: -.05em;
}
.mdl-circle-v2__intro-copy {
  display: flex;
  align-items: flex-start;
  flex-direction: column;
}
.mdl-circle-v2__intro-copy p {
  max-width: 520px;
  margin: 0 0 32px;
  color: rgba(255,255,255,.8);
  font: 400 clamp(18px,1.5vw,22px)/1.65 var(--mdl-serif);
}

.mdl-circle-v2__steps {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  border-top: 1px solid rgba(201,170,106,.26);
  border-bottom: 1px solid rgba(201,170,106,.24);
}
.mdl-circle-v2__step {
  position: relative;
  min-height: clamp(390px,31vw,500px);
  overflow: hidden;
  isolation: isolate;
}
.mdl-circle-v2__step:nth-child(odd) {
  border-right: 1px solid rgba(201,170,106,.22);
}
.mdl-circle-v2__step:nth-child(-n+2) {
  border-bottom: 1px solid rgba(201,170,106,.22);
}
.mdl-circle-v2__step img {
  position: absolute;
  z-index: -2;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.015);
  transition: transform .8s ease, filter .6s ease;
}
.mdl-circle-v2__shade {
  position: absolute;
  z-index: -1;
  inset: 0;
  background:
    linear-gradient(180deg,rgba(3,14,22,.08) 10%,rgba(3,14,22,.28) 48%,rgba(3,14,22,.9) 100%),
    linear-gradient(90deg,rgba(3,14,22,.36),transparent 58%);
}
.mdl-circle-v2__step-copy {
  position: absolute;
  right: clamp(28px,4vw,60px);
  bottom: clamp(30px,4vw,58px);
  left: clamp(28px,4vw,60px);
  max-width: 580px;
}
.mdl-circle-v2__step-copy > span {
  display: block;
  margin-bottom: 26px;
  color: rgba(234,216,174,.72);
  font: 400 12px/1 var(--mdl-serif);
  letter-spacing: .12em;
}
.mdl-circle-v2__step-copy small {
  display: block;
  margin-bottom: 11px;
  color: var(--mdl-champagne);
  font: 600 9px/1.3 var(--mdl-sans);
  letter-spacing: .17em;
  text-transform: uppercase;
}
.mdl-circle-v2__step-copy h3 {
  margin: 0;
  color: #fff;
  font: 400 clamp(44px,4.2vw,68px)/.94 var(--mdl-serif);
  letter-spacing: -.04em;
}
.mdl-circle-v2__step-copy p {
  max-width: 470px;
  margin: 19px 0 0;
  color: rgba(255,255,255,.79);
  font: 400 16px/1.55 var(--mdl-serif);
}
.mdl-circle-v2__step:hover img {
  transform: scale(1.05);
  filter: saturate(1.04) brightness(1.04);
}

.mdl-circle-v2__profiles {
  display: grid;
  grid-template-columns: 210px 1fr;
  gap: 40px;
  align-items: baseline;
  padding-top: 46px;
  padding-bottom: 52px;
}
.mdl-circle-v2__profiles small {
  color: var(--mdl-champagne);
  font: 600 9px/1.3 var(--mdl-sans);
  letter-spacing: .16em;
  text-transform: uppercase;
}
.mdl-circle-v2__profiles p {
  margin: 0;
  color: rgba(255,255,255,.62);
  font: 500 10px/1.7 var(--mdl-sans);
  letter-spacing: .09em;
  text-transform: uppercase;
}

@media(max-width:900px) {
  .mdl-circle-v2__intro {
    grid-template-columns: 1fr;
    gap: 34px;
  }
  .mdl-circle-v2__steps {
    grid-template-columns: 1fr;
  }
  .mdl-circle-v2__step,
  .mdl-circle-v2__step:nth-child(odd),
  .mdl-circle-v2__step:nth-child(-n+2) {
    min-height: 390px;
    border-right: 0;
    border-bottom: 1px solid rgba(201,170,106,.22);
  }
  .mdl-circle-v2__step:last-child { border-bottom: 0; }
  .mdl-circle-v2__profiles {
    grid-template-columns: 1fr;
    gap: 12px;
  }
}
@media(max-width:560px) {
  .mdl-circle-v2__intro {
    padding-top: 74px;
    padding-bottom: 58px;
  }
  .mdl-circle-v2__intro h2 {
    font-size: clamp(48px,14vw,64px);
  }
  .mdl-circle-v2__step {
    min-height: 340px;
  }
  .mdl-circle-v2__step-copy h3 {
    font-size: 46px;
  }
  .mdl-circle-v2__step-copy p {
    font-size: 15px;
  }
}

.mdl-gallery {
  background-color: var(--mdl-paper);
  background-image: var(--mdl-paper-grain);
  background-size: 640px 640px;
}
.mdl-gallery__feature { display: grid; grid-template-columns: minmax(0, 1.65fr) minmax(250px, .65fr); gap: 0; align-items: stretch; margin-top: 44px; }
.mdl-gallery__feature figure { min-height: 370px; margin: 0; overflow: hidden; }
.mdl-gallery__feature img { width: 100%; height: 100%; object-fit: cover; }
.mdl-gallery__feature blockquote { display: grid; margin: 0; padding: clamp(40px, 6vw, 78px); place-items: center; background-color: var(--mdl-ivory); background-image: var(--mdl-paper-grain); background-size: 640px 640px; color: rgba(20,33,42,.8); font: italic 400 clamp(24px, 2.7vw, 38px)/1.35 var(--mdl-serif); }
.mdl-gallery__rooms { display: grid; grid-template-columns: repeat(3, 1fr); margin: 36px 0 34px; border-top: 1px solid var(--mdl-line); }
.mdl-gallery__rooms a { min-height: 190px; padding: 24px; border-right: 1px solid var(--mdl-line); border-bottom: 1px solid var(--mdl-line); transition: background .25s ease, transform .25s ease; }
.mdl-gallery__rooms a:nth-child(3n) { border-right: 0; }
.mdl-gallery__rooms a:hover { background-color: var(--mdl-ivory); background-image: var(--mdl-paper-grain); background-size: 640px 640px; transform: translateY(-3px); }
.mdl-gallery__rooms small { color: var(--mdl-gold); font-size: 9px; letter-spacing: .13em; text-transform: uppercase; }
.mdl-gallery__rooms h3 { margin: 20px 0 12px; font: 400 25px/1.1 var(--mdl-serif); }
.mdl-gallery__rooms p { margin: 0; color: rgba(20,33,42,.62); font: 400 14px/1.55 var(--mdl-serif); }
.mdl-gallery__rooms span { display: block; margin-top: 22px; font-size: 10px; letter-spacing: .1em; text-transform: uppercase; }

.mdl-cahiers { padding: 78px 0; background-color: var(--mdl-ivory); background-image: linear-gradient(90deg, rgba(255,255,255,.32), transparent 55%), var(--mdl-paper-grain); background-size: auto, 640px 640px; }
.mdl-cahiers__grid { display: grid; grid-template-columns: 120px 1fr 280px; gap: 54px; align-items: center; }
.mdl-cahiers__index { margin: 0; writing-mode: vertical-rl; transform: rotate(180deg); color: var(--mdl-gold); font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.mdl-cahiers h2 { font-size: clamp(37px, 4vw, 58px); }
.mdl-cahiers__action { display: flex; flex-direction: column; gap: 28px; align-items: flex-start; }
.mdl-cahiers__action > span { color: rgba(20,33,42,.58); font-size: 10px; letter-spacing: .12em; text-transform: uppercase; }

.mdl-custom { background-color: var(--mdl-paper); background-image: var(--mdl-paper-grain); background-size: 640px 640px; }
.mdl-custom--navy { background: var(--mdl-navy); color: #fff; }
.mdl-custom__grid { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(50px, 8vw, 120px); align-items: center; }
.mdl-custom--image-left .mdl-custom__grid figure { order: -1; }
.mdl-custom figure { margin: 0; }
.mdl-custom figure img { width: 100%; max-height: 640px; object-fit: cover; }
.mdl-custom .mdl-text-link { margin-top: 32px; }

.mdl-home-footer { padding: 82px 0 24px; background: #04131f; color: #fff; }
.mdl-home-footer__grid { display: grid; grid-template-columns: 1fr 1fr 1fr; gap: 60px; }
.mdl-home-footer__grid > div:first-child { display: flex; flex-direction: column; }
.mdl-home-footer__grid strong { font: 400 36px/1 var(--mdl-serif); }
.mdl-home-footer__grid > div span { margin-top: 10px; font-size: 10px; letter-spacing: .22em; text-transform: uppercase; }
.mdl-home-footer__grid > div small { margin-top: 26px; color: rgba(255,255,255,.48); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.mdl-home-footer blockquote { margin: 0; color: var(--mdl-champagne-pale); font: italic 400 22px/1.5 var(--mdl-serif); }
.mdl-home-footer nav { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 28px; }
.mdl-home-footer a,
.mdl-home-footer a:link,
.mdl-home-footer a:visited {
  color: rgba(255,255,255,.76) !important;
  text-decoration: none !important;
}
.mdl-home-footer nav a { font-size: 10px; letter-spacing: .12em; text-transform: uppercase; transition: color .25s ease; }
.mdl-home-footer a:hover,
.mdl-home-footer a:focus { color: var(--mdl-champagne) !important; text-decoration: none !important; }
.mdl-home-footer__bottom { display: flex; justify-content: space-between; margin-top: 70px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.13); color: rgba(255,255,255,.38); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }

.mdl-creation-product { width: min(1480px, calc(100vw - 48px)); margin: 0 auto 100px; color: var(--mdl-ink); }
.mdl-creation-product__hero { position: relative; display: grid; min-height: 880px; grid-template-columns: minmax(0,1.32fr) minmax(390px,.68fr); gap: clamp(42px,6vw,100px); align-items: center; padding: clamp(68px,8vw,122px); overflow: hidden; background: #061522; color: #fff; isolation: isolate; }
.mdl-creation-product__hero-image { position: absolute; z-index: -3; inset: 0; width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; transform: scale(1.015); }
.mdl-creation-product__hero-shade { position: absolute; z-index: -2; inset: 0; background: linear-gradient(90deg,rgba(3,14,23,.88) 0%,rgba(3,14,23,.62) 47%,rgba(3,14,23,.2) 72%,rgba(3,14,23,.45) 100%),linear-gradient(180deg,rgba(3,14,23,.13),rgba(3,14,23,.6)); }
.mdl-creation-product__hero::after { position: absolute; z-index: -1; inset: 20px; border: 1px solid rgba(234,216,174,.2); content: ""; pointer-events: none; }
.mdl-creation-product__narrative { max-width: 760px; }
.mdl-creation-product__family { margin: 18px 0 28px; color: var(--mdl-champagne); font-size: 9px; font-weight: 600; letter-spacing: .2em; text-transform: uppercase; }
.mdl-creation-product__narrative h1 { max-width: 760px; margin: 0; font: 400 clamp(64px,7.6vw,116px)/.82 var(--mdl-serif); letter-spacing: -.06em; text-wrap: balance; }
.mdl-creation-product__signature { max-width: 620px; margin: 32px 0 0; color: var(--mdl-champagne-pale); font: italic 400 clamp(20px,2vw,27px)/1.35 var(--mdl-serif); }
.mdl-creation-product__narrative blockquote { max-width: 670px; margin: 38px 0 0; padding-left: 26px; border-left: 1px solid rgba(201,170,106,.62); color: rgba(255,255,255,.82); font: 400 clamp(17px,1.55vw,21px)/1.68 var(--mdl-serif); }
.mdl-creation-product__facets { display: flex; gap: 8px; flex-wrap: wrap; margin: 34px 0 0; padding: 0; list-style: none; }
.mdl-creation-product__facets li { padding: 9px 13px; border: 1px solid rgba(234,216,174,.3); background: rgba(4,19,31,.28); color: rgba(255,255,255,.78); font-size: 8px; letter-spacing: .13em; text-transform: uppercase; backdrop-filter: blur(8px); }
.mdl-product-rating { display: flex; width: max-content; gap: 10px; align-items: center; margin-top: 30px; padding-bottom: 8px; border-bottom: 1px solid rgba(201,170,106,.55); color: #fff !important; text-decoration: none !important; }
.mdl-product-rating span { color: var(--mdl-champagne); font-size: 12px; letter-spacing: .08em; }
.mdl-product-rating strong { font: 400 16px/1 var(--mdl-serif); }
.mdl-product-rating small { color: rgba(255,255,255,.62); font-size: 8px; letter-spacing: .12em; text-transform: uppercase; }
.mdl-product-atelier { position: relative; width: min(100%,440px); justify-self: end; padding: clamp(28px,3vw,42px); border: 1px solid rgba(255,255,255,.52); background-color: rgba(255,253,249,.94); background-image: var(--mdl-paper-grain); background-size: 640px 640px; box-shadow: 0 34px 90px rgba(0,0,0,.27); color: var(--mdl-ink); backdrop-filter: blur(18px); }
.mdl-product-atelier::before { position: absolute; inset: 8px; border: 1px solid rgba(131,97,49,.12); content: ""; pointer-events: none; }
.mdl-product-atelier__edition { position: relative; display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.mdl-product-atelier__edition span,.mdl-product-atelier__edition small { font-size: 7px; letter-spacing: .15em; text-transform: uppercase; }
.mdl-product-atelier__edition span { color: var(--mdl-gold); font-weight: 700; }
.mdl-product-atelier__edition small { color: rgba(20,33,42,.52); }
.mdl-product-atelier__bottle { position:relative;display:block;width:100%;height:auto;min-height:0;margin:18px 0 22px;overflow:visible; }
.mdl-product-atelier__bottle.is-placeholder { display: grid; place-items: center; min-height: 270px; padding: 44px 0 20px; }
.mdl-product-atelier__bottle picture { display:block;width:100%;height:auto;min-width:0;overflow:visible; }.mdl-product-atelier__bottle img { display:block!important;width:100%!important;height:auto!important;max-width:100%!important;max-height:none!important;aspect-ratio:auto!important;margin:auto!important;object-fit:contain!important;object-position:center!important; }
.mdl-product-atelier__bottle > span,.mdl-pairing-bottle { position: relative; display: flex; width: 116px; height: 176px; align-items: center; justify-content: center; flex-direction: column; border: 1px solid rgba(255,255,255,.4); border-radius: 6px 6px 16px 16px; background: linear-gradient(145deg,rgba(18,43,59,.96),rgba(3,14,23,.99)); box-shadow: inset 12px 0 24px rgba(255,255,255,.06),0 22px 38px rgba(7,24,39,.2); color: #fff; text-align: center; }
.mdl-product-atelier__bottle > span::before,.mdl-pairing-bottle::before { position: absolute; top: -33px; width: 74px; height: 37px; border-radius: 4px 4px 1px 1px; background: linear-gradient(135deg,#2d3335,#0e1317 55%,#393b39); box-shadow: inset 0 0 0 1px rgba(255,255,255,.1); content: ""; }
.mdl-product-atelier__bottle > span i,.mdl-pairing-bottle i { width: 40px; height: 2px; margin-bottom: 14px; background: var(--mdl-champagne); box-shadow: 0 -7px 0 -1px var(--mdl-champagne),0 7px 0 -1px var(--mdl-champagne); }
.mdl-product-atelier__bottle > span b,.mdl-pairing-bottle b { max-width: 88px; font: 400 14px/1.02 var(--mdl-serif); }
.mdl-product-atelier__bottle > span small,.mdl-pairing-bottle small { margin-top: 10px; color: var(--mdl-champagne-pale); font-size: 5px; letter-spacing: .18em; text-transform: uppercase; }
.mdl-product-atelier__heading { position: relative; display: flex; justify-content: space-between; gap: 18px; align-items: end; padding: 20px 0 17px; border-top: 1px solid var(--mdl-line); border-bottom: 1px solid var(--mdl-line); }
.mdl-product-atelier__heading div { display: grid; gap: 5px; }
.mdl-product-atelier__heading small { color: var(--mdl-gold); font-size: 7px; letter-spacing: .16em; text-transform: uppercase; }
.mdl-product-atelier__heading strong { font: 400 20px/1 var(--mdl-serif); }
.mdl-product-atelier__heading p { margin: 0; font: 400 23px/1 var(--mdl-serif); }
.mdl-creation-product__buy { position: relative; margin-top: 18px; }
.mdl-creation-product__buy .product-add-to-cart { margin: 0; }
.mdl-creation-product__buy .product__actions-qty-add { display: grid; grid-template-columns: 116px minmax(0,1fr); gap: 10px; align-items: stretch; }
.mdl-creation-product__buy .product-actions__quantity { width: auto; min-width: 0; margin: 0; }
.mdl-creation-product__buy .quantity-button__group { height: 100%; border: 1px solid rgba(7,24,39,.22); background-color: rgba(255,253,249,.5); background-image: var(--mdl-paper-grain); background-size: 640px 640px; }
.mdl-creation-product__buy .quantity-button__group .btn { width: 34px; padding: 0; border: 0; border-radius: 0; background: transparent; color: var(--mdl-gold); }
.mdl-creation-product__buy .quantity-button__group .form-control { min-width: 38px; padding: 0; border: 0; background: transparent; box-shadow: none; color: var(--mdl-navy); font: 400 17px/1 var(--mdl-serif); text-align: center; }
.mdl-creation-product__buy .product__add-to-cart { min-width: 0; }
.mdl-creation-product__buy .product__add-to-cart-button { width: 100%; min-height: 56px; }
.mdl-product-atelier__sample { position: relative; display: grid; grid-template-columns:minmax(0,1fr) auto; gap: 10px 18px; align-items: center; margin-top: 16px; padding-top: 16px; border-top: 1px solid var(--mdl-line); }
.mdl-product-atelier__sample > div { display: grid; gap: 4px; min-width:0; }
.mdl-product-atelier__sample > div span { color: var(--mdl-gold); font-size: 7px; letter-spacing: .15em; text-transform: uppercase; }
.mdl-product-atelier__sample > div strong { font: 400 14px/1.2 var(--mdl-serif); }
.mdl-product-atelier__sample button,.mdl-product-atelier__sample a { padding: 0 0 5px; border: 0; border-bottom: 1px solid rgba(131,97,49,.5); background: transparent; color: var(--mdl-navy); font-size: 8px; font-weight: 600; letter-spacing: .1em; text-decoration: none; text-transform: uppercase; }
.mdl-creation-product__notice { position: relative; margin: 18px 0 0; color: rgba(20,33,42,.58); font: 400 11px/1.55 var(--mdl-serif); }
.mdl-creation-product__notice.is-alert { padding-left: 14px; border-left: 2px solid var(--mdl-champagne); color: #74552d; }
.mdl-creation-product__notice + .mdl-text-link { width: max-content; margin-top: 18px; }
.mdl-product-reveal { margin-top: 28px; padding: 28px; border: 1px solid rgba(131,97,49,.34); background-color: rgba(255,253,249,.54); background-image: var(--mdl-paper-grain); background-size: 640px 640px; }
.mdl-product-reveal > span { color: var(--mdl-gold); font-size: 9px; letter-spacing: .17em; text-transform: uppercase; }
.mdl-product-reveal p { margin: 14px 0 0; font: 400 16px/1.55 var(--mdl-serif); }
.mdl-product-reveal .mdl-button { margin-top: 24px; }
.mdl-product-materials { padding: clamp(100px,10vw,150px) clamp(0px,2vw,34px); }
.mdl-product-materials > header { display: grid; grid-template-columns: .8fr 1.2fr; gap: 18px clamp(50px,8vw,120px); align-items: end; margin-bottom: 62px; }
.mdl-product-materials > header .mdl-kicker { grid-column: 1 / -1; }
.mdl-product-materials h2 { margin: 0; font: 400 clamp(46px,5vw,72px)/.94 var(--mdl-serif); letter-spacing: -.045em; }
.mdl-product-materials > header > p:last-child { margin: 0; color: rgba(20,33,42,.62); font: 400 18px/1.7 var(--mdl-serif); }
.mdl-product-materials__grid { display: grid; grid-template-columns: 1.12fr .88fr 1fr; gap: 18px; }
.mdl-product-materials figure { margin: 0; }
.mdl-product-materials figure > span { display: block; height: clamp(310px,34vw,520px); overflow: hidden; background: var(--mdl-navy); }
.mdl-product-materials figure:nth-child(2) > span { height: clamp(260px,29vw,450px); margin-top: 58px; }
.mdl-product-materials figure img { width: 100%; height: 100%; max-width: none; object-fit: cover; object-position: center; transition: transform .9s cubic-bezier(.2,.68,.18,1),filter .6s ease; }
.mdl-product-materials figure:hover img { filter: saturate(1.04) brightness(1.04); transform: scale(1.045); }
.mdl-product-materials figcaption { display: flex; flex-wrap: wrap; gap: 10px 18px; align-items: baseline; padding: 20px 4px 0; }
.mdl-product-materials figcaption small { color: var(--mdl-gold); font-size: 8px; letter-spacing: .14em; }
.mdl-product-materials figcaption em { flex-basis: 100%; color: #52616a; font: italic 14px/1.5 var(--mdl-serif); }
.mdl-product-materials figcaption strong { font: 400 23px/1.1 var(--mdl-serif); }
.mdl-product-gesture { padding: clamp(82px,8vw,122px) clamp(32px,7vw,96px); overflow: hidden; background: radial-gradient(circle at 88% 7%, rgba(201,170,106,.13), transparent 29%), linear-gradient(125deg,#04131f,#082132 65%,#051724); color: #fff; }
.mdl-product-gesture > header { display: grid; grid-template-columns: .78fr 1.22fr; gap: clamp(40px,8vw,120px); align-items: end; }
.mdl-product-gesture h2 { margin: 0; font: 400 clamp(44px,5vw,70px)/.94 var(--mdl-serif); letter-spacing: -.04em; }
.mdl-product-gesture > header > p:last-child { margin: 0; color: rgba(255,255,255,.7); font: 400 18px/1.7 var(--mdl-serif); }
.mdl-product-gesture__steps { display: grid; grid-template-columns: repeat(3,1fr); margin: 72px 0 0; padding: 0; border-top: 1px solid rgba(255,255,255,.18); border-bottom: 1px solid rgba(255,255,255,.18); list-style: none; }
.mdl-product-gesture__steps li { position: relative; min-height: 300px; padding: 34px 30px 38px; border-right: 1px solid rgba(255,255,255,.18); }
.mdl-product-gesture__steps li:last-child { border-right: 0; }
.mdl-product-gesture__steps li.is-current { background: linear-gradient(145deg,rgba(201,170,106,.19),rgba(201,170,106,.035)); box-shadow: inset 0 3px 0 var(--mdl-champagne); }
.mdl-product-gesture__steps li > span { color: var(--mdl-champagne); font-size: 10px; letter-spacing: .16em; }
.mdl-product-gesture__steps li > small { display: block; margin-top: 38px; color: rgba(255,255,255,.45); font-size: 8px; letter-spacing: .18em; text-transform: uppercase; }
.mdl-product-gesture__steps h3 { margin: 12px 0 20px; color: #fff; font: 400 34px/1 var(--mdl-serif); }
.mdl-product-gesture__steps p { margin: 0; color: rgba(255,255,255,.67); font: 400 15px/1.65 var(--mdl-serif); }
.mdl-product-pairings { padding: clamp(100px,10vw,155px) clamp(0px,2vw,34px); }
.mdl-product-pairings > header { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(50px,9vw,140px); align-items: end; margin-bottom: 66px; }
.mdl-product-pairings > header h2 { margin: 0; font: 400 clamp(46px,5vw,72px)/.94 var(--mdl-serif); letter-spacing: -.045em; }
.mdl-product-pairings > header > p:last-child { margin: 0; color: rgba(20,33,42,.66); font: 400 18px/1.7 var(--mdl-serif); }
.mdl-product-pairings__grid { display: grid; grid-template-columns: repeat(4,1fr); border-top: 1px solid var(--mdl-line); border-bottom: 1px solid var(--mdl-line); }
.mdl-pairing-card { position: relative; display: flex; min-width: 0; min-height: 640px; flex-direction: column; overflow: hidden; border-right: 1px solid var(--mdl-line); background-color: rgba(255,253,249,.42); background-image: var(--mdl-paper-grain); background-size: 640px 640px; transition: box-shadow .4s ease,transform .4s ease; }
.mdl-pairing-card:last-child { border-right: 0; }
.mdl-pairing-card.is-signature { background-color: var(--mdl-paper-raised); background-image: linear-gradient(140deg,rgba(201,170,106,.13),transparent 48%),var(--mdl-paper-grain); background-size: auto,640px 640px; box-shadow: inset 0 3px 0 var(--mdl-champagne); }
.mdl-pairing-card:hover { z-index: 2; box-shadow: 0 28px 70px rgba(7,24,39,.13); transform: translateY(-7px); }
.mdl-pairing-card__visual { position: relative; display: grid; height: 245px; place-items: center; overflow: hidden; background: linear-gradient(145deg,#dfe7e5,#a8b8b7); text-decoration: none !important; }
.mdl-pairing-card:nth-child(2) .mdl-pairing-card__visual { background: linear-gradient(145deg,#e5e6dd,#b6b59f); }
.mdl-pairing-card:nth-child(3) .mdl-pairing-card__visual { background: linear-gradient(145deg,#e7ddd0,#a98d72); }
.mdl-pairing-card:nth-child(4) .mdl-pairing-card__visual { background: linear-gradient(145deg,#e7e7e3,#aeb7bd); }
.mdl-pairing-card__visual img { width: 100%; height: 100%; object-fit: contain; transition: transform .65s ease; }
.mdl-pairing-card:hover .mdl-pairing-card__visual img,.mdl-pairing-card:hover .mdl-pairing-bottle { transform: translateY(-5px) scale(1.025); }
.mdl-pairing-bottle { width: 88px; height: 138px; transition: transform .65s ease; }
.mdl-pairing-bottle::before { top: -26px; width: 58px; height: 30px; }
.mdl-pairing-bottle b { max-width: 68px; font-size: 11px; }
.mdl-pairing-card__copy { display: flex; flex: 1; flex-direction: column; padding: 32px 28px 26px; }
.mdl-pairing-card__copy > span { width: max-content; padding: 7px 10px; border: 1px solid rgba(131,97,49,.36); color: var(--mdl-gold); font-size: 9px; line-height:1.25; letter-spacing: .13em; text-transform: uppercase; }
.mdl-pairing-card__copy > small { margin-top: 24px; color: rgba(20,33,42,.60); font-size: 9px; letter-spacing: .095em; line-height: 1.55; text-transform: uppercase; }
.mdl-pairing-card h3 { margin: 15px 0 16px; font: 400 31px/1.04 var(--mdl-serif); }
.mdl-pairing-card p { margin: 0; color: rgba(20,33,42,.72); font: 400 16px/1.62 var(--mdl-serif); }
.mdl-pairing-card__discover { width: max-content; margin-top: auto; padding-top: 28px; color: var(--mdl-gold) !important; font-size: 9px; font-weight: 700; letter-spacing: .11em; text-decoration: none !important; text-transform: uppercase; }
.mdl-pairing-card__actions { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--mdl-line); }
.mdl-pairing-card__actions form { margin: 0; }
.mdl-pairing-card__actions form + form { border-left: 1px solid var(--mdl-line); }
.mdl-pairing-card__actions button { width: 100%; min-height: 58px; padding: 10px; border: 0; background: transparent; color: var(--mdl-navy); font-size: 9px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; transition: background .3s ease,color .3s ease; }
.mdl-pairing-card__actions button:hover { background: var(--mdl-navy); color: var(--mdl-champagne-pale); }
.mdl-product-prescription { display: grid; grid-template-columns: 1fr auto; gap: clamp(50px,8vw,120px); align-items: end; padding: clamp(72px,8vw,110px) clamp(34px,8vw,110px); background: radial-gradient(circle at 85% 0,rgba(201,170,106,.17),transparent 30%),#061928; color: #fff; }
.mdl-product-prescription h2 { max-width: 820px; margin: 0; font: 400 clamp(44px,5vw,72px)/.95 var(--mdl-serif); letter-spacing: -.045em; }
.mdl-product-prescription > div > p:last-child { max-width: 690px; margin: 26px 0 0; color: rgba(255,255,255,.68); font: 400 18px/1.7 var(--mdl-serif); }
.mdl-product-reviews { padding: clamp(100px,10vw,150px) clamp(0px,2vw,34px); }
.mdl-product-reviews > header { display: flex; justify-content: space-between; gap: 40px; align-items: end; padding-bottom: 48px; border-bottom: 1px solid var(--mdl-line); }
.mdl-product-reviews h2 { margin: 0; font: 400 clamp(46px,5vw,70px)/.95 var(--mdl-serif); letter-spacing: -.04em; }
.mdl-product-reviews__summary { display: grid; grid-template-columns: auto auto; gap: 4px 14px; align-items: center; text-align: right; }
.mdl-product-reviews__summary strong { grid-row: 1 / 3; color: var(--mdl-gold); font: 400 52px/1 var(--mdl-serif); }
.mdl-product-reviews__summary span { color: var(--mdl-gold); letter-spacing: .1em; }
.mdl-product-reviews__summary small { color: rgba(20,33,42,.5); font-size: 8px; letter-spacing: .12em; text-transform: uppercase; }
.mdl-review-notice { margin: 28px 0 0; padding: 16px 20px; border-left: 3px solid var(--mdl-gold); background-color: var(--mdl-paper-raised); background-image: var(--mdl-paper-grain); background-size: 640px 640px; font: 400 15px/1.5 var(--mdl-serif); }
.mdl-review-notice.is-error { border-color: #9c4b42; color: #7e3029; }
.mdl-product-reviews__layout { display: grid; grid-template-columns: 1fr minmax(390px,.78fr); gap: clamp(60px,9vw,130px); padding-top: 58px; }
.mdl-product-reviews__list { min-width: 0; }
.mdl-review-card { padding: 30px 0 34px; border-bottom: 1px solid var(--mdl-line); }
.mdl-review-card:first-child { padding-top: 0; }
.mdl-review-card > div { display: flex; justify-content: space-between; gap: 20px; color: var(--mdl-gold); font-size: 11px; letter-spacing: .08em; }
.mdl-review-card time { color: rgba(20,33,42,.42); font-size: 9px; letter-spacing: .1em; }
.mdl-review-card h3 { margin: 18px 0 12px; font: 400 25px/1.15 var(--mdl-serif); }
.mdl-review-card > p { margin: 0; color: rgba(20,33,42,.68); font: 400 16px/1.7 var(--mdl-serif); }
.mdl-review-card footer { margin-top: 18px; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.mdl-review-card footer small { margin-left: 12px; padding-left: 12px; border-left: 1px solid var(--mdl-line); color: var(--mdl-gold); }
.mdl-reviews-empty { padding: 54px; border: 1px solid var(--mdl-line); text-align: center; }
.mdl-reviews-empty span { color: var(--mdl-gold); font-size: 9px; letter-spacing: .16em; text-transform: uppercase; }
.mdl-reviews-empty p { margin: 18px 0 0; font: 400 18px/1.6 var(--mdl-serif); }
.mdl-review-form { padding: clamp(32px,4vw,48px); border: 1px solid rgba(7,24,39,.15); background-color: var(--mdl-paper-raised); background-image: var(--mdl-paper-grain); background-size: 640px 640px; box-shadow: 0 24px 70px rgba(7,24,39,.06); }
.mdl-review-form h3 { margin: 0; font: 400 34px/1 var(--mdl-serif); }
.mdl-review-form > div:first-child > p:last-child { margin: 16px 0 30px; color: rgba(20,33,42,.6); font: 400 14px/1.6 var(--mdl-serif); }
.mdl-review-form > label,.mdl-review-form__row label { display: grid; gap: 8px; margin-top: 18px; }
.mdl-review-form label > span,.mdl-review-stars legend { font-size: 8px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.mdl-review-form input[type="text"],.mdl-review-form input[type="email"],.mdl-review-form textarea { width: 100%; padding: 13px 0; border: 0; border-bottom: 1px solid rgba(7,24,39,.28); border-radius: 0; outline: 0; background: transparent; color: var(--mdl-ink); font: 400 15px/1.5 var(--mdl-serif); }
.mdl-review-form input:focus,.mdl-review-form textarea:focus { border-color: var(--mdl-gold); box-shadow: 0 1px 0 var(--mdl-gold); }
.mdl-review-form label small { color: rgba(20,33,42,.45); font-size: 10px; }
.mdl-review-form__row { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.mdl-review-stars { display: flex; width: max-content; margin: 0 0 8px; padding: 0; border: 0; flex-direction: row-reverse; }
.mdl-review-stars legend { margin-bottom: 12px; }
.mdl-review-stars input { position: absolute; opacity: 0; pointer-events: none; }
.mdl-review-stars label { cursor: pointer; color: rgba(131,97,49,.22); font-size: 25px; transition: color .2s ease, transform .2s ease; }
.mdl-review-stars label:hover,.mdl-review-stars label:hover ~ label,.mdl-review-stars input:checked ~ label { color: var(--mdl-gold); }
.mdl-review-stars label:hover { transform: translateY(-2px); }
.mdl-review-consent { grid-template-columns: auto 1fr; align-items: start; margin-top: 24px !important; }
.mdl-review-consent input { margin-top: 2px; accent-color: var(--mdl-gold); }
.mdl-review-consent span { font-size: 10px !important; font-weight: 400 !important; letter-spacing: 0 !important; line-height: 1.5; text-transform: none !important; }
.mdl-review-form .mdl-button { margin-top: 28px; }
.mdl-review-honeypot { position: absolute !important; left: -99999px; opacity: 0; }
.mdl-creation-product__footer { padding-top: 54px; border-top: 1px solid var(--mdl-line); }

@media (max-width: 1100px) {
  .mdl-site-nav { grid-template-columns: 1fr auto; }
  .mdl-site-nav__desktop, .mdl-site-nav__account, .mdl-commerce-pill { display: none; }
  .mdl-site-nav__mobile { display: block; grid-column: 2; grid-row: 1; }
  .mdl-site-nav__tools { grid-column: 2; grid-row: 1; padding-right: 72px; }
  .mdl-site-nav__mobile summary { position: absolute; top: 29px; right: clamp(24px, 4vw, 64px); z-index: 3; cursor: pointer; font-size: 10px; font-weight: 600; letter-spacing: .14em; list-style: none; text-transform: uppercase; }
  .mdl-site-nav__mobile summary::-webkit-details-marker { display: none; }
  .mdl-site-nav__mobile nav { position: absolute; top: 0; right: 0; left: 0; display: grid; gap: 0; padding: 110px 30px 35px; background: rgba(4,19,31,.98); box-shadow: 0 26px 55px rgba(0,0,0,.25); }
  .mdl-site-nav__mobile nav a { padding: 16px 0; border-bottom: 1px solid rgba(255,255,255,.12); font: 400 23px/1 var(--mdl-serif); }
  .mdl-registry__inner { grid-template-columns: 1fr; gap: 42px; }
  .mdl-registry__intro { max-width: 720px; padding: 0 0 36px; border-right: 0; border-bottom: 1px solid rgba(201,170,106,.3); }
  .mdl-registry__fields { grid-template-columns: .75fr 1.25fr; }
  .mdl-registry__fields .mdl-button { grid-column: 1 / -1; }
  .mdl-origin { grid-template-columns: 1fr; padding:0; }
  .mdl-origin__panel { min-height: 620px; }
  .mdl-collection__grid { grid-template-columns: repeat(2, 1fr); gap: 54px 24px; }
  .mdl-circle__header { grid-template-columns: 1fr; gap: 44px; }
  .mdl-circle__entry { max-width: 610px; }
  .mdl-circle__portals { min-height: 520px; }
  .mdl-circle__portal { padding: 30px; }
  .mdl-circle__portal-index { top: 30px; left: 30px; }
  .mdl-circle__portal-copy strong { font-size: clamp(38px, 4.6vw, 52px); }
  .mdl-circle__ecosystem-grid { min-height: 820px; grid-template-columns: 1fr; gap: 20px; padding-top: 86px; padding-bottom: 60px; }
  .mdl-circle__ecosystem header { text-align: center; }
  .mdl-circle__constellation { width: min(760px,100%); min-height: 530px; margin-inline: auto; }
  .mdl-cahiers__grid { grid-template-columns: 80px 1fr; }
  .mdl-cahiers__action { grid-column: 2; }
  .mdl-creation-product__hero { grid-template-columns: minmax(0,1fr) minmax(350px,.72fr); padding-right: 54px; padding-left: 54px; }
  .mdl-product-gesture > header,.mdl-product-pairings > header { grid-template-columns: 1fr; gap: 28px; }
  .mdl-product-pairings__grid { grid-template-columns: repeat(2,1fr); }
  .mdl-pairing-card:nth-child(2) { border-right: 0; }
  .mdl-pairing-card:nth-child(-n+2) { border-bottom: 1px solid var(--mdl-line); }
  .mdl-product-reviews__layout { grid-template-columns: 1fr; }
}

@media (max-width: 900px) {
  .mdl-creation-product__hero { grid-template-columns: 1fr; padding: 88px 48px; }
  .mdl-product-atelier { width: min(100%,540px); justify-self: start; }
  .mdl-product-materials > header { grid-template-columns: 1fr; }
  .mdl-product-materials > header .mdl-kicker { grid-column: auto; }
}

@media (max-width: 767px) {
  :root { --mdl-shell: calc(100vw - 36px); }
  .mdl-hero-time { --mdl-hero-current: var(--mdl-hero-current-mobile); }
  .mdl-section { padding: 76px 0; }
  .mdl-button { min-height: 54px; gap: 14px; padding: 0 22px; font-size: 9px; letter-spacing: .16em; }
  .mdl-button::after { width: 20px; }
  .mdl-site-nav { min-height: 78px; padding: 14px 18px; }
  .mdl-site-nav__brand strong { font-size: 20px; }
  .mdl-site-nav__brand span { font-size: 8px; }
  .mdl-site-nav__tools { display: none; }
  .mdl-site-nav__mobile summary { top: 25px; right: 18px; }
  .mdl-hero-time { min-height: 780px; }
  .mdl-hero-time__content { padding-top: 46px; }
  .mdl-hero-time__logo { width: 118px; }
  .mdl-hero-time h1 { font-size: clamp(58px, 20vw, 86px); }
  .mdl-hero-time__signature { max-width: 310px; }
  .mdl-hero-time .mdl-button--light { width: min(100%, 320px); min-width: 0; }
  .mdl-prelaunch__grid { grid-template-columns:1fr; gap:0; }
  .mdl-prelaunch__status { padding: 28px 22px; }
  .mdl-registry { padding: 58px 0; }
  .mdl-registry__inner { gap: 32px; }
  .mdl-registry__intro { padding-bottom: 28px; }
  .mdl-registry h2 { font-size: 42px; }
  .mdl-registry__fields { grid-template-columns: 1fr; gap: 18px; }
  .mdl-registry__fields .mdl-button { grid-column: auto; }
  .mdl-registry__promise { margin-left: 0; line-height: 1.7; }
  .mdl-origin { padding:0; }
  .mdl-origin__panel { min-height: 590px; padding: 42px 22px 64px; }
  .mdl-origin h2 { font-size: 43px; }
  .mdl-origin__figures { gap: 12px; }
  .mdl-origin__figures span { padding-right: 12px; }
  .mdl-collection__principle { flex-wrap: wrap; }
  .mdl-collection__principle i { width: 14px; }
  .mdl-collection__grid { grid-template-columns: 1fr; }
  .mdl-creation-card__image { width: 100%; max-width: 100%; aspect-ratio: 4/5; }
  .mdl-circle { padding-top: 0; }
  .mdl-circle__header { gap: 34px; padding-bottom: 58px; }
  .mdl-circle__header h2 { font-size: clamp(48px, 15vw, 64px); }
  .mdl-circle__entry > p { margin: 22px 0 28px; font-size: 18px; }
  .mdl-circle__entry .mdl-button { width: 100%; }
  .mdl-circle__threshold { min-height: 96px; gap: 8px; flex-direction: column; }
  .mdl-circle__threshold::before { top: -30px; height: 30px; }
  .mdl-circle__threshold span::after { display: none; }
  .mdl-circle__threshold strong { font-size: 26px; }
  .mdl-circle__portals { min-height: 0; flex-direction: column; }
  .mdl-circle__portal,
  .mdl-circle__portals:hover .mdl-circle__portal,
  .mdl-circle__portals .mdl-circle__portal:hover { min-height: 285px; flex: 0 0 285px; padding: 26px 22px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.22); }
  .mdl-circle__portal:last-child { border-bottom: 0; }
  .mdl-circle__portal-index { top: 26px; left: 22px; }
  .mdl-circle__portal-copy strong { font-size: 48px; }
  .mdl-circle__portal-copy i { width: 42px; height: 42px; }
  .mdl-circle__portal:hover .mdl-circle__portal-copy { transform: none; }
  .mdl-circle__ecosystem-grid { min-height: 0; gap: 42px; padding-top: 72px; padding-bottom: 72px; }
  .mdl-circle__ecosystem h3 { font-size: 50px; }
  .mdl-circle__constellation { display: flex; min-height: 0; flex-direction: column; }
  .mdl-circle__constellation::before { top: 110px; width: 250px; }
  .mdl-circle__constellation::after { top: 110px; width: 190px; }
  .mdl-circle__constellation-core { position: relative; top: auto; left: auto; width: 190px; margin: 15px auto 48px; transform: none; }
  .mdl-circle__constellation-core strong { font-size: 35px; }
  .mdl-circle__constellation ul { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
  .mdl-circle__constellation li { position: static; min-height: 52px; padding: 0 10px; border-radius: 0; }
  .mdl-circle__constellation .is-press { grid-column: 1 / -1; }
  .mdl-gallery__feature { grid-template-columns: 1fr; }
  .mdl-gallery__feature figure { min-height: 320px; }
  .mdl-gallery__rooms { grid-template-columns: 1fr; }
  .mdl-gallery__rooms a, .mdl-gallery__rooms a:nth-child(3n) { border-right: 0; }
  .mdl-cahiers__grid { grid-template-columns: 1fr; gap: 28px; }
  .mdl-cahiers__index { writing-mode: initial; transform: none; }
  .mdl-cahiers__action { grid-column: auto; }
  .mdl-custom__grid { grid-template-columns: 1fr; }
  .mdl-custom--image-left .mdl-custom__grid figure { order: initial; }
  .mdl-home-footer__grid { grid-template-columns: 1fr; gap: 42px; }
  .mdl-home-footer__bottom { gap: 18px; align-items: flex-start; flex-direction: column; }
  .mdl-creation-product { width: 100%; margin-bottom: 72px; }
  .mdl-creation-product__hero { min-height: 0; gap: 48px; padding: 72px 18px 38px; }
  .mdl-creation-product__hero::after { inset: 8px; }
  .mdl-creation-product__hero-shade { background: linear-gradient(180deg,rgba(3,14,23,.74),rgba(3,14,23,.58) 48%,rgba(3,14,23,.82)); }
  .mdl-creation-product__narrative { padding: 0 12px; }
  .mdl-creation-product__narrative h1 { font-size: clamp(57px,18vw,84px); }
  .mdl-creation-product__narrative blockquote { padding-left: 18px; font-size: 17px; }
  .mdl-creation-product__facets { gap: 6px; }
  .mdl-product-atelier { padding: 30px 22px; }
  .mdl-product-atelier__edition small { text-align: right; }
  .mdl-product-atelier__bottle { height:auto;min-height:0; }
  .mdl-creation-product__buy .product__actions-qty-add { grid-template-columns: 92px minmax(0,1fr); }
  .mdl-product-atelier__sample { align-items: flex-start; flex-direction: column; }
  .mdl-product-materials { padding: 78px 18px; }
  .mdl-product-materials__grid { grid-template-columns: 1fr; }
  .mdl-product-materials figure > span,.mdl-product-materials figure:nth-child(2) > span { height: 340px; margin-top: 0; }
  .mdl-product-gesture { padding: 72px 22px; }
  .mdl-product-gesture__steps { grid-template-columns: 1fr; margin-top: 48px; }
  .mdl-product-gesture__steps li { min-height: 0; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
  .mdl-product-gesture__steps li:last-child { border-bottom: 0; }
  .mdl-product-pairings { padding: 82px 0; }
  .mdl-product-pairings__grid { grid-template-columns: 1fr; }
  .mdl-pairing-card,.mdl-pairing-card:nth-child(2) { min-height: 0; border-right: 0; border-bottom: 1px solid var(--mdl-line); }
  .mdl-pairing-card:last-child { border-bottom: 0; }
  .mdl-product-prescription { grid-template-columns: 1fr; align-items: start; padding: 72px 24px; }
  .mdl-product-prescription .mdl-button { width: 100%; }
  .mdl-product-reviews { padding: 82px 0; }
  .mdl-product-reviews > header { align-items: flex-start; flex-direction: column; }
  .mdl-product-reviews__summary { text-align: left; }
  .mdl-review-form { padding: 28px 22px; }
  .mdl-review-form__row { grid-template-columns: 1fr; gap: 0; }
}

@media (hover: none) {
  .mdl-circle__portals:hover .mdl-circle__portal,
  .mdl-circle__portals .mdl-circle__portal:hover { flex-grow: 1; }
  .mdl-circle__portal:hover .mdl-circle__portal-media { filter: none; transform: scale(1.025); }
  .mdl-circle__portal:hover .mdl-circle__portal-copy { transform: none; }
}

@media (prefers-reduced-motion: reduce) {
  .mdl-home-body *, .mdl-creation-product * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
  .mdl-button:hover::before { animation: none; }
}


/* R20.5.4 — grille de navigation définitive */
.mdl-site-nav,
.mdl-site-nav * {
  box-sizing: border-box;
}

.mdl-site-nav {
  max-width: 100vw;
  overflow: visible;
}

@media (min-width: 1101px) {
  .mdl-site-nav {
    width: 100% !important;
    min-height: 88px !important;
    grid-template-columns: minmax(165px, 190px) minmax(570px, 1fr) minmax(185px, 220px) !important;
    column-gap: clamp(14px, 1.4vw, 24px) !important;
    padding: 16px clamp(28px, 3.2vw, 52px) !important;
  }

  .mdl-site-nav__brand {
    min-width: 0 !important;
    justify-self: start !important;
  }

  .mdl-site-nav__brand strong {
    font-size: clamp(20px, 1.45vw, 24px) !important;
    white-space: nowrap !important;
  }

  .mdl-site-nav__desktop {
    min-width: 0 !important;
    width: 100% !important;
    gap: clamp(12px, 1.35vw, 22px) !important;
    justify-content: center !important;
    align-items: center !important;
  }

  .mdl-site-nav__desktop a {
    flex: 0 0 auto !important;
    font-size: clamp(8px, .61vw, 10px) !important;
    letter-spacing: .09em !important;
    white-space: nowrap !important;
  }

  .mdl-site-nav__tools {
    min-width: 0 !important;
    width: 100% !important;
    display: flex !important;
    justify-content: flex-end !important;
    align-items: center !important;
    gap: clamp(9px, .9vw, 14px) !important;
    white-space: nowrap !important;
    padding: 0 !important;
  }

  .mdl-site-nav__account,
  .mdl-site-nav__cart {
    flex: 0 0 auto !important;
    font-size: clamp(8px, .61vw, 10px) !important;
    letter-spacing: .085em !important;
  }

  .mdl-language-switcher {
    flex: 0 0 auto !important;
  }

  .mdl-language-switcher summary {
    min-width: 30px !important;
    padding: 7px 6px !important;
    border: 0 !important;
    text-align: center !important;
  }
}

/* Large desktop: garde de vraies respirations sans rejeter les outils hors écran. */
@media (min-width: 1450px) {
  .mdl-site-nav {
    grid-template-columns: 205px minmax(650px, 1fr) 220px !important;
    padding-inline: clamp(38px, 3vw, 56px) !important;
  }
}

/* Desktop compact : réduction contrôlée avant le passage au menu mobile. */
@media (min-width: 1101px) and (max-width: 1279px) {
  .mdl-site-nav {
    grid-template-columns: 160px minmax(520px, 1fr) 180px !important;
    padding-inline: 24px !important;
    column-gap: 12px !important;
  }

  .mdl-site-nav__desktop {
    gap: 10px !important;
  }

  .mdl-site-nav__desktop a,
  .mdl-site-nav__account,
  .mdl-site-nav__cart {
    font-size: 8px !important;
    letter-spacing: .06em !important;
  }
}

/* R11.6.8 lifecycle readability */
.mdl-prelaunch__counter p{grid-area:copy;max-width:280px;margin:0;color:#4e6266!important;font:400 12px/1.45 var(--mdl-serif)}
.mdl-prelaunch__counter strong.is-copy{max-width:220px;font-size:16px;line-height:1.3}
.mdl-prelaunch__timeline li div{min-width:0}
.mdl-prelaunch__timeline li small{display:block;margin-top:4px;color:#829093;font-size:9px;line-height:1.35}
.mdl-prelaunch__timeline li.is-complete p{text-decoration:none!important}

/* R11.6.10 — roadmap legibility */
.mdl-prelaunch__timeline li p{font-size:clamp(15px,1.15vw,17px)!important;line-height:1.28!important}
.mdl-prelaunch__timeline li small{font-size:10.5px!important;line-height:1.42!important}


/* prelaunch tester editorial mobile r11634 */
@media(max-width:640px){
 .mdl-prelaunch__counter{grid-template-columns:1fr;grid-template-areas:"label" "copy" "value";gap:8px}
 .mdl-prelaunch__counter strong{max-width:none;text-align:left}
}

/* prelaunch lifecycle artwork mobile r11636 */
@media(max-width:900px){
 .mdl-prelaunch.is-lifecycle .mdl-section-head{
   min-height:520px;
   padding:40px 24px;
   background:
     linear-gradient(180deg,rgba(250,247,240,.98) 0%,rgba(250,247,240,.88) 54%,rgba(250,247,240,.46) 100%),
     url("../../img/home/editorial/prelaunch-alpine-lithographie-real.jpg") center bottom/cover no-repeat;
 }
}

/* continuous lifecycle panels r11640 */
.mdl-prelaunch.is-lifecycle .mdl-prelaunch__status{
  margin:0;
  border-left:1px solid rgba(154,111,40,.30);
  box-shadow:none;
}
.mdl-prelaunch.is-lifecycle .mdl-section-head{
  margin:0;
  border-radius:0;
}
.mdl-prelaunch.is-lifecycle .mdl-prelaunch__status{
  border-radius:0;
}
@media(max-width:900px){
  .mdl-prelaunch__grid{gap:0}
  .mdl-prelaunch.is-lifecycle .mdl-section-head{border-right:1px solid rgba(154,111,40,.16);border-bottom:0}
  .mdl-prelaunch.is-lifecycle .mdl-prelaunch__status{border-left:1px solid rgba(154,111,40,.16);border-top:1px solid rgba(154,111,40,.30)}
}


/* Maison du Lac — raccord photographique Hero → Rituel — v1002
   Même principe que le raccord entre les deux images du Rituel :
   fondu sombre progressif, sans flou ni modification des fichiers image. */
.mdl-home-modular > .mdl-hero-time:has(+ .mdl-origin, + .mdl-home-paths){
  overflow:hidden;
  z-index:2;
}
.mdl-home-modular > .mdl-hero-time:has(+ .mdl-origin, + .mdl-home-paths)::after{
  content:"";
  position:absolute;
  z-index:4;
  left:0;
  right:0;
  bottom:0;
  height:clamp(180px,14vw,228px);
  pointer-events:none;
  background:linear-gradient(
    180deg,
    rgba(4,17,29,0) 0%,
    rgba(4,17,29,.06) 22%,
    rgba(4,17,29,.16) 42%,
    rgba(4,17,29,.34) 62%,
    rgba(4,17,29,.58) 80%,
    rgba(6,23,29,.82) 94%,
    #06171d 100%
  );
}
.mdl-home-modular > .mdl-hero-time + .mdl-origin{
  position:relative;
  z-index:1;
  margin-top:0;
}
.mdl-home-modular > .mdl-hero-time + .mdl-origin::before{
  content:"";
  position:absolute;
  z-index:3;
  top:0;
  left:0;
  right:0;
  height:clamp(160px,12vw,210px);
  pointer-events:none;
  background:linear-gradient(
    180deg,
    #06171d 0%,
    rgba(6,23,29,.86) 8%,
    rgba(6,23,29,.66) 24%,
    rgba(6,23,29,.44) 46%,
    rgba(6,23,29,.24) 68%,
    rgba(6,23,29,.08) 88%,
    rgba(6,23,29,0) 100%
  );
}
@media(max-width:820px){
  .mdl-home-modular > .mdl-hero-time:has(+ .mdl-origin, + .mdl-home-paths)::after{height:132px}
  .mdl-home-modular > .mdl-hero-time + .mdl-origin::before{height:118px}
}


/* 11.7.20 — sample reimbursement information */
.mdl-product-atelier__sample-refund{
 grid-column:1/-1;
 display:block;
 margin:2px 0 0;
 padding:10px 12px 0 18px;
 border-left:1px solid var(--mdl-champagne);
 color:rgba(20,33,42,.72);
 font:400 12px/1.55 var(--mdl-serif);
}
@media(max-width:760px){
 .mdl-product-atelier__sample{grid-template-columns:1fr}
 .mdl-product-atelier__sample button,
 .mdl-product-atelier__sample a{justify-self:start}
 .mdl-pairing-card__copy{padding:26px 22px 24px}
 .mdl-pairing-card h3{font-size:28px}
 .mdl-pairing-card p{font-size:15px}
}
