/* Maison: editorial layout shared by acquisition, catalogue and product pages. */
body.r74-site {
  --r74-ink:#061f60;
  --r74-night:#0c1640;
  --r74-paper:#f8f7f4;
  --r74-stone:#f1ece3;
  --r74-muted:#4b5870;
  --r74-rule:#061f6022;
  --r74-gold:#e8cd9f;
  --r74-frame:clamp(8px,1.15vw,22px);
  --r74-gutter:clamp(22px,4.25vw,82px);
  --r74-block:clamp(48px,6.4vw,108px);
  --r74-title:clamp(2.125rem,4.05vw,4.625rem);
  --r74-radius:clamp(14px,1.55vw,26px);
  --r74-ease:cubic-bezier(.16,1,.3,1);
  --site-gutter:var(--r74-gutter);
}
.r74-site :where(main) { min-width:0; }
.r74-site .r74-shell { width:min(100% - 2 * var(--r74-gutter),1640px); margin-inline:auto; }
.r74-site :where(main h1,main h2) { text-wrap:balance; }
.r74-site :where(main .lead,main .r72-lead) { text-wrap:pretty; }
.r74-site :where(main a,main button,main summary,header a,header button):focus-visible { outline-offset:4px; }
.r74-site .r74-skip {
  position:fixed; top:8px; left:10px; z-index:600; transform:translateY(-160%);
  padding:12px 20px; background:#fff; color:var(--r74-ink);
}
.r74-site .r74-skip:focus { transform:none; }

/* The header stays quiet over both editorial and catalogue content. */
.r74-site :is(.u64-header,.r62-header,.r72-mast) {
  background:rgb(248 247 244 / .86)!important;
  border:1px solid rgb(255 255 255 / .70);
  box-shadow:0 1px 0 #061f6010,0 8px 28px #0b14320d;
  -webkit-backdrop-filter:blur(24px) saturate(135%)!important;
  backdrop-filter:blur(24px) saturate(135%)!important;
}
.r74-site :is(.u64-header,.r62-header,.r72-mast) {
  width:calc(100% - 2 * var(--r74-frame));
  top:var(--r74-frame);
  margin-top:var(--r74-frame);
  margin-inline:auto;
  border-radius:var(--r74-radius);
}
body.r74-home .u64-header { margin-bottom:0; }
body.r74-site .u64-header .wrap {
  min-height:66px;
  padding-inline:calc(var(--r74-gutter) - var(--r74-frame));
}
body.r74-site .r62-header .r62-nav-wrap {
  min-height:66px;
  padding-inline:calc(var(--r74-gutter) - var(--r74-frame));
}
.r74-site .r72-mast .r72-shell { min-height:66px; width:min(100% - 2 * (var(--r74-gutter) - var(--r74-frame)),1640px); }
.r74-site .r72-mast nav { gap:clamp(12px,2.2vw,36px); }
.r74-site .r72-mast nav a,.r74-site .r74-header-actions a { text-decoration:none; font:600 .9rem/1.35 Hellix,system-ui,sans-serif; }
.r74-site .r72-mast nav a:is(:hover,[aria-current="page"]),.r74-site .r74-header-actions a:hover { text-decoration:underline; text-underline-offset:.28em; }
.r74-site .r74-header-actions { display:flex; gap:clamp(6px,1.25vw,18px); align-items:center; flex-shrink:0; }
.r74-site .r74-header-actions a { display:inline-flex; min-height:44px; align-items:center; white-space:nowrap; }
.r74-site .r74-header-actions a:last-child { justify-content:center; min-width:44px; }
.r74-site :is(.r72-index,.r72-intro,.r72-footer) > .r72-shell,
.r74-site .r72-shell.r72-index { width:min(100% - 2 * var(--r74-gutter),1640px); }
.r74-site .r72-intro { padding-block:clamp(42px,6vw,92px); }
.r74-site .r72-intro :is(h1,.r72-lead) { max-width:38rem; }
.r74-site .r72-catalogue-nav { gap:8px; }
.r74-site .r72-catalogue-nav a {
  padding:10px 15px; border:1px solid var(--r74-rule); border-radius:999px; text-decoration:none;
}
.r74-site .r72-catalogue-nav a:hover { background:#061f600a; }
.r74-site .r74-catalogue-univers > summary { min-height:44px; cursor:pointer; color:var(--r74-ink); }
.r74-site .r74-catalogue-univers .r72-catalogue-nav { margin-top:8px; }
.r74-site .r72-index [data-catalogue-group] { scroll-margin-top:22px; }
.r74-site .r73-buying { --pdp-gutter:var(--r74-gutter); }
.r74-site .r73-questions > div { width:min(100% - 2 * var(--r74-gutter),860px); }

/* A framed, dark opening; the real template stays fully visible. */
body.r74-home .r74-hero:is(.a63-hero,.r62-hero) {
  position:relative; isolation:isolate; display:block; box-sizing:border-box;
  color:#fdf9f0; background:var(--r74-night); overflow:hidden;
  max-width:none; min-height:0; margin:var(--r74-frame); padding:0!important;
  border-radius:var(--r74-radius);
}
body.r74-home .r74-hero:is(.a63-hero,.r62-hero)::before {
  content:""; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background:radial-gradient(ellipse at 74% 40%,#51487e6b,transparent 62%),linear-gradient(115deg,#0b153d,#10183e 70%,#171435);
}
body.r74-home .r74-hero::after {
  content:""; position:absolute; z-index:-1; inset:0 var(--r74-gutter); pointer-events:none;
  border-inline:1px solid #f8f7f414;
  background:linear-gradient(90deg,transparent calc(50% - 1px),#f8f7f412 50%,transparent calc(50% + 1px));
}
body.r74-home.r62-home .r74-hero.r62-hero,
body.r74-home.r67-site .r74-hero.a63-hero > .wrap {
  display:grid; grid-template-columns:minmax(0,.98fr) minmax(0,1.02fr);
  gap:clamp(30px,5.2vw,94px); align-items:center; text-align:left;
  width:auto; min-height:clamp(500px,68svh,730px); padding:clamp(48px,6vw,96px) calc(var(--r74-gutter) - var(--r74-frame))!important;
}
body.r74-home.r62-home .r74-hero.r62-hero { margin:var(--r74-frame); }
body.r74-home.r67-site .r74-hero.a63-hero .wrap > div:first-child { margin:0; }
body.r74-home .r74-hero h1 {
  margin:0; max-width:none; color:#fdf9f0;
  font:500 clamp(3.3rem,5.25vw,6rem)/.99 Atacama,Georgia,serif; letter-spacing:-.043em;
}
body.r74-home .r74-hero h1 :is(span,em) { display:block; color:inherit; }
body.r74-home .r74-hero h1 span { font-style:normal; }
body.r74-home .r74-hero h1 em { color:var(--r74-gold); font-size:.88em; font-weight:500; margin-top:.09em; }
body.r74-home.r67-site .r74-hero .wrap > div > p:not(.r74-kicker),
body.r74-home .r74-hero.r62-hero > div > p:not(.r74-kicker) {
  color:#dce4f5; margin:clamp(17px,2vw,28px) 0 0; max-width:43ch;
  font:400 clamp(1.05rem,1.35vw,1.29rem)/1.5 Hellix,system-ui,sans-serif;
}
.r74-kicker,body.r74-home .r74-hero p.r74-kicker {
  color:#5c4b34; margin:0 0 15px; font:600 .75rem/1.4 Hellix,system-ui,sans-serif;
  letter-spacing:.14em; text-transform:uppercase;
}
body.r74-home.r67-site .r74-hero .wrap > div > p.r74-kicker,
body.r74-home .r74-hero.r62-hero > div > p.r74-kicker { color:var(--r74-gold)!important; margin:0 0 16px; }
body.r74-home .r74-hero :is(.a63-actions,.r62-actions) {
  display:flex; align-items:center; justify-content:flex-start; gap:6px 16px;
  margin:24px 0 0;
}
body.r74-home .r74-hero :is(.a63-actions,.r62-actions) > a:first-child {
  color:#0d1943!important; background:#f8f2e7!important; border-color:#fff9!important;
}
body.r74-home .r74-hero :is(.a63-actions,.r62-actions) > a {
  color:#fff; min-height:44px; white-space:normal; text-align:left;
}
body.r74-home .r74-hero :is(.a63-small,.r62-small) {
  font-size:.86rem!important; line-height:1.45!important; color:#b7c3dd!important;
}
body.r74-home .r74-hero .a63-device {
  width:100%; max-width:none; padding:0; margin:0; transform:none; min-width:0;
}
body.r74-home .r74-hero .a63-monitor {
  padding:5px; border-radius:12px; border:1px solid #fff3; background:#141a31;
  box-shadow:0 24px 55px #03091c73; backdrop-filter:none;
}
body.r74-home .r74-hero .a63-monitor::after { content:none; }
body.r74-home .r74-hero .a63-hero-screen { border-radius:7px; }
body.r74-home .r74-hero .a63-device-caption {
  display:block; position:static; width:auto; max-width:none; transform:none; margin:12px 0 0;
  padding:0; border:0; background:transparent; color:#c2cbe0; text-align:left; white-space:normal;
}
.r74-stage-label {
  display:flex; justify-content:space-between; gap:12px; margin-bottom:11px;
  color:#e7edf9; font:600 .76rem/1.4 Hellix,system-ui,sans-serif;
  letter-spacing:.06em;
}
.r74-stage-label i { display:inline-block; background:var(--r74-gold); width:6px; height:6px; border-radius:50%; margin:0 4px 1px 0; }
body.r74-home .r74-hero .r62-art { max-width:none; margin:0; min-width:0; }
body.r74-home .r74-hero .r62-art svg {
  width:auto; max-width:100%; max-height:clamp(280px,30vw,430px); margin-inline:auto;
  border-radius:var(--r74-radius);
}
body.r74-home .r74-hero .r62-art figcaption { color:#c2cbe0; gap:10px; }
@media (min-width:851px) {
  body.r74-home .r74-hero.r62-hero h1 { font-size:clamp(2.8rem,4.2vw,4.7rem); }
}

body.r74-home main > nav.r74-chapters { display:block; border-bottom:1px solid var(--r74-rule); background:var(--r74-paper); }
.r74-chapters > .r74-shell {
  display:flex; align-items:center; gap:clamp(10px,3vw,46px); overflow:auto; scrollbar-width:thin;
}
.r74-chapters a {
  min-height:53px; display:inline-flex; align-items:center; flex-shrink:0; color:var(--r74-ink);
  text-decoration:none; text-underline-offset:.24em; font:600 .875rem/1.4 Hellix,system-ui,sans-serif;
}
.r74-chapters a:hover { text-decoration:underline; }
body.r74-home main > section.r74-discover { padding-block:var(--r74-block); background:var(--r74-paper); }
.r74-section-head { margin:0 0 clamp(23px,3.3vw,52px); }
.r74-section-head h2 {
  margin:0; color:var(--r74-ink); font:500 var(--r74-title)/1.04 Atacama,Georgia,serif;
  letter-spacing:-.034em;
}
.r74-gateway { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(12px,1.65vw,28px); }
.r74-gateway-card {
  min-width:0; background:#fff; border:1px solid var(--r74-rule); border-radius:var(--r74-radius);
  overflow:hidden;
}
body.r74-home .r74-gateway-card:hover { transform:none; }
.r74-gateway-card > a { display:grid; grid-template-rows:auto 1fr; height:100%; color:var(--r74-ink); text-decoration:none; }
.r74-gateway-card > a:focus-visible { outline-offset:-4px; position:relative; z-index:1; }
.r74-gateway-media { overflow:hidden; background:var(--r74-stone); aspect-ratio:16/9; }
.r74-gateway-media img { display:block; width:100%; height:100%; object-fit:cover; }
.r74-gateway-copy {
  display:grid; grid-template-rows:auto auto 1fr auto; gap:9px; padding:clamp(18px,2.1vw,34px);
}
.r74-gateway-copy h3 { color:var(--r74-ink); font:500 clamp(1.42rem,2.48vw,2.7rem)/1.06 Atacama,Georgia,serif; letter-spacing:-.025em; margin:0; text-wrap:balance; }
.r74-gateway-copy p { color:var(--r74-muted); margin:0; font:400 .97rem/1.55 Hellix,system-ui,sans-serif; }
.r74-gateway-copy .r74-card-label { display:flex; justify-content:space-between; gap:10px; font-size:.74rem; letter-spacing:.11em; text-transform:uppercase; }
.r74-gateway-action { display:flex; justify-content:space-between; gap:10px; margin-top:8px; font:600 .9rem/1.35 Hellix,system-ui,sans-serif; }
.r74-gateway-card > a:hover .r74-gateway-action { text-decoration:underline; text-underline-offset:.2em; }

/* Give the main chapter headings a common scale; preserve configurator/control layouts. */
body.r74-home.r67-site main > section:not(.a63-hero,.r74-discover,.logos,.newsletter,.final-cta,.eeat,.u64-positioning) { padding-block:var(--r74-block); }
body.r74-home main > section:not(.r74-hero,.r74-discover,.newsletter,.final-cta,.eeat) > .wrap > h2:first-of-type,
body.r74-home main > .r62-section > h2:first-of-type,
body.r74-home .r67-gallery-head > h2,
body.r74-landing main > section:not(.newsletter,.final-cta) > .wrap > h2:first-of-type {
  max-width:25ch; font-size:var(--r74-title); line-height:1.06; letter-spacing:-.033em;
}
body.r74-home.r67-site main > .r67-gallery { background:var(--r74-night); }
body.r74-home main > .r67-gallery :is(h2,.r67-gallery-caption strong,.r67-link) { color:#fff; }
body.r74-home main > .r67-gallery :is(.r67-gallery-head p,.r67-gallery-caption,.r67-gallery-buttons button) { color:#d0d9ef; }
body.r74-home main > .r67-gallery .r67-gallery-buttons button[aria-pressed="true"],
body.r74-home main > .r67-gallery .r67-link { color:var(--r74-gold); border-color:currentColor; }
body.r74-landing main > .hero > .wrap > h1 { max-width:19ch; line-height:1.04; text-wrap:balance; }
body.r74-landing main > section > .wrap { padding-inline:var(--r74-gutter); }

@media (hover:hover) and (prefers-reduced-motion:no-preference) {
  .r74-gateway-media img { transition:transform 350ms var(--r74-ease); }
  .r74-gateway-card > a:hover img { transform:scale(1.035); }
}
@media (max-width:1100px) {
  body.r74-home.r62-home .r74-hero.r62-hero,body.r74-home.r67-site .r74-hero.a63-hero > .wrap {
    gap:clamp(20px,4vw,46px); min-height:0;
  }
  body.r74-home .r74-hero h1 { font-size:clamp(3rem,6.25vw,5.2rem); }
}
@media (max-width:850px) {
  body.r74-home.r62-home .r74-hero.r62-hero,body.r74-home.r67-site .r74-hero.a63-hero > .wrap {
    grid-template-columns:minmax(0,1fr); gap:30px; padding:40px calc(var(--r74-gutter) - var(--r74-frame)) 28px!important;
  }
  body.r74-home .r74-hero h1 { font-size:clamp(2.8rem,8.6vw,4.8rem); }
  body.r74-home .r74-hero h1 em { font-size:.94em; }
  body.r74-home .r74-hero .a63-device { max-width:660px; }
  body.r74-home .r74-hero .r62-art svg { max-height:390px; }
  .r74-site .r72-mast .r72-shell { flex-wrap:wrap; row-gap:0; }
  .r74-site .r72-mast nav { order:3; justify-content:flex-start; flex-wrap:nowrap; overflow:auto; width:100%; }
  .r74-site .r72-mast nav a { white-space:nowrap; min-height:42px; }
  .r74-site .r74-header-actions { margin-inline-start:auto; }
}
@media (max-width:620px) {
  .r74-gateway { grid-template-columns:minmax(0,1fr); }
  .r74-gateway-media { aspect-ratio:2/1; }
  body.r74-site .u64-header .wrap,body.r74-site .r62-header .r62-nav-wrap { min-height:58px; }
  body.r74-home .r74-hero :is(.a63-actions,.r62-actions) { flex-direction:row; gap:3px 13px; margin-top:16px; }
  body.r74-home .r74-hero .a63-text-link { font-size:.88rem; }
  .r74-chapters a { min-height:48px; }
}
@media (max-width:390px) {
  body.r74-home .u64-header .a63-logo img { width:clamp(119px,34vw,140px)!important; max-width:100%; }
}
@media (prefers-reduced-transparency:reduce) {
  .r74-site :is(.u64-header,.r62-header,.r72-mast) { background:var(--r74-paper)!important; backdrop-filter:none!important; -webkit-backdrop-filter:none!important; }
}
html:is(.r62-solid,.a63-reduced) body.r74-site :is(.u64-header,.r62-header,.r72-mast),
html[data-transparency="solid"] body.r74-site :is(.u64-header,.r62-header,.r72-mast) {
  background:var(--r74-paper)!important; backdrop-filter:none!important; -webkit-backdrop-filter:none!important;
}
@media (prefers-reduced-motion:no-preference) { html:has(body.r74-site) { scroll-behavior:smooth; } }
@media (prefers-reduced-motion:reduce) { html:has(body.r74-site) { scroll-behavior:auto!important; } }
html:is(.r62-solid,.a63-reduced):has(body.r74-site) { scroll-behavior:auto!important; }
