/* Champagne rosé, portrait à droite et espace de lecture à gauche. */
.hero--beauty { background:#dfc9bc; color:#35251f; min-height:760px; }
.hero--beauty .hero__media { background:linear-gradient(110deg,#e5d6ca,#d9b8a8); }
.hero--beauty .hero__media img,
.hero--beauty .hero__media video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:50% 50%; pointer-events:none; }
.hero--beauty .hero__media video { opacity:0; transition:none; }
.hero--beauty.beauty-playing .hero__media video { opacity:1; transition:opacity .3s ease; }
.hero--beauty .hero__veil { background:linear-gradient(180deg,rgba(235,222,211,.82),transparent 18%),linear-gradient(90deg,rgba(235,222,211,.98),rgba(235,222,211,.94) 27%,rgba(235,222,211,.66) 41%,rgba(235,222,211,.08) 56%,transparent 64%); }
.hero--beauty .hero__inner { justify-content:center; padding-top:140px; padding-bottom:150px; }
.hero--beauty .hero__eyebrow { color:#6c4c3d; max-width:42%; font-size:.67rem; letter-spacing:.12em; }
.hero--beauty .hero__title { width:52%; font-size:clamp(4rem,7.8vw,9.5rem); line-height:.94; margin:26px 0 30px; }
.hero--beauty .hero__line--indent { padding-left:0; white-space:nowrap; }
.hero--beauty em { color:#9b624b; }
.hero--beauty .hero__bottom { width:47%; display:flex; flex-direction:column; align-items:flex-start; gap:28px; }
.hero--beauty .hero__lead { color:#695349; max-width:40ch; font-size:clamp(.94rem,1.1vw,1.1rem); }
.hero--beauty .hero__ctas { gap:20px; }
.hero--beauty .btn--primary { background:#51372d; color:#fff7ee; --btn-fill:#785241; }
.hero--beauty .btn__icon { background:#f1d5c2; color:#51372d; }
.hero--beauty .hero__meta { color:#725849; }
.hero--beauty .hero__scroll { color:#51372d; border-color:#8e716457; }
.hero-beauty__skip { position:absolute; right:max(5vw,env(safe-area-inset-right)); bottom:calc(100px + var(--r-section)); z-index:2; min-height:44px; padding:10px 15px; border-radius:24px; border:1px solid #76564240; color:#50392d; background:#f7e9daaa; font:500 11px/1.3 var(--ff-body); backdrop-filter:blur(10px); }
.hero-beauty__skip[hidden] { display:none; }
.hero--beauty video::-webkit-media-controls { display:none !important; }
@media (min-width:901px) and (max-width:1200px) {
 .hero--beauty .hero__title { font-size:7.6vw; }
 .hero--beauty .hero__ctas { align-items:flex-start; flex-direction:column; gap:18px; }
}
@media (max-width:1100px) and (orientation:portrait) {
 .hero--beauty { --beauty-portrait-height:clamp(440px,72svh,780px); height:auto; min-height:100svh; display:flex; flex-direction:column; padding-top:0; }
 .hero--beauty .hero__media { position:absolute; inset:0; width:100%; height:100%; z-index:-2; will-change:auto; background:#dfc9bc; }
 .hero--beauty .hero__media img,.hero--beauty .hero__media video { height:var(--beauty-portrait-height); object-position:var(--beauty-focus-x,75%) 40%; }
 .hero--beauty .hero__media::after { content:''; position:absolute; left:0; right:0; top:calc(var(--beauty-portrait-height) - 170px); bottom:0; background:linear-gradient(180deg,transparent,#dfc9bc 170px); pointer-events:none; }
 .hero--beauty .hero__veil { display:block; background:linear-gradient(180deg,rgba(235,222,211,.88),transparent 130px); }
 .hero--beauty .hero__inner { flex:none; height:auto; padding-top:calc(var(--beauty-portrait-height) - 24px); padding-bottom:calc(120px + var(--r-section)); position:relative; }
 .hero--beauty .hero__eyebrow { max-width:100%; font-size:.65rem; }
 .hero--beauty .hero__title { width:100%; font-size:clamp(3.5rem,12.5vw,7rem); line-height:.94; margin:22px 0 26px; }
 .hero--beauty .hero__bottom { width:100%; gap:24px; }
 .hero--beauty .hero__lead { max-width:48ch; }
 .hero--beauty .hero__ctas { gap:18px; }
 .hero-beauty__skip { top:calc(var(--beauty-portrait-height) - 120px); bottom:auto; right:max(20px,env(safe-area-inset-right)); }
}
@media (orientation:landscape) and (max-height:650px) {
 .hero--beauty { height:auto; min-height:650px; }
 .hero--beauty .hero__inner { padding-top:120px; padding-bottom:140px; }
 .hero--beauty .hero__title { font-size:7.4vw; }
 .hero--beauty .hero__bottom { width:48%; gap:18px; }
 .hero--beauty .hero__eyebrow { font-size:.6rem; }
 .hero--beauty .hero__lead { font-size:.88rem; }
 .hero--beauty .hero__ctas { gap:12px; }
 .hero--beauty .btn { font-size:.82rem; }
}
@media (prefers-reduced-motion:reduce) {
 .hero--beauty .hero__media video,.hero-beauty__skip { display:none; }
}
