@font-face{font-family:'Visby';src:url('/assets/fonts/visby-regular.otf') format('opentype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'Visby';src:url('/assets/fonts/visby-medium.otf') format('opentype');font-style:normal;font-weight:500;font-display:swap}
@font-face{font-family:'Visby';src:url('/assets/fonts/visby-extrabold.otf') format('opentype');font-style:normal;font-weight:600 800;font-display:swap}
@font-face{font-family:'Visby';src:url('/assets/fonts/visby-heavy.otf') format('opentype');font-style:normal;font-weight:900;font-display:swap}
:root {
  --pink: #ed185b;
  --pink-deep: #b50b45;
  --pink-text: #d70d50;
  --yellow: #fff19a;
  --white: #fff;
  --line: rgb(255 255 255 / 24%);
  --sans: 'Visby', 'Noto Sans Arabic', Arial, sans-serif;
  color-scheme: dark;
  font-family: var(--sans);
  background: var(--pink);
  color: var(--white);
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body { margin: 0; min-width: 320px; background: var(--pink); font-size: 15px; line-height: 1.7; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; }
body, main { overflow-x: clip; }
button, input, select { font: inherit; color: inherit; }
button, a, input, select { -webkit-tap-highlight-color: transparent; }
button, a { touch-action: manipulation; }
button { cursor: pointer; }
a { color: inherit; text-decoration: none; }
button:disabled { cursor: default; opacity: .45; }
img { display: block; max-width: 100%; }
h1, h2, h3, h4, p { margin: 0; }
ul, ol { margin: 0; padding-inline-start: 1.2em; }
li + li { margin-top: .45em; }
button:focus-visible, a:focus-visible, input:focus-visible, select:focus-visible { outline: 3px solid var(--yellow); outline-offset: 5px; }
::selection { background: var(--yellow); color: #930f3a; }
[hidden] { display: none !important; }
.sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.skip { position: fixed; z-index: 1001; top: 12px; inset-inline-start: 16px; padding: 12px 20px; background: #8c103a; transform: translateY(-160%); }
.skip:focus { transform: none; }
.eyebrow { font-size: 11px; line-height: 1.6; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; }
.header { position: fixed; inset: 0 0 auto; height: 94px; padding-inline: 4.2vw; display: flex; justify-content: space-between; align-items: center; gap: 32px; z-index: 80; border-bottom: 1px solid rgb(255 255 255 / 22%); background: linear-gradient(180deg,rgb(133 5 48 / 22%),transparent); transition: height .35s, background .35s, box-shadow .35s; }
.header.scrolled, .header.is-scrolled, body.menu-open .header { height: 76px; background: rgb(181 11 69 / 96%); box-shadow: 0 6px 25px rgb(105 0 40 / 10%); backdrop-filter: blur(18px); }
.brand { display: flex; align-items: center; flex-shrink: 0; }
.brand > img, .brand > svg { width: 129px; height: 69px; object-fit: contain; }
.desktop-nav { display: flex; align-items: center; gap: clamp(20px,2.5vw,43px); font-size: 11px; font-weight: 700; }
.desktop-nav a { position: relative; padding-block: 12px; }
.desktop-nav a::after { content: ''; position: absolute; height: 1px; background: var(--yellow); inset-inline-start: 0; bottom: 5px; width: 0; transition: width .25s; }
.desktop-nav a:hover::after, .desktop-nav a[aria-current]::after { width: 100%; }
.header-right, .header-actions { display: flex; align-items: center; gap: 20px; }
.language { display: flex; align-items: center; gap: 9px; }
.language > span:not(.sr-only) { font-size: 22px; line-height: 1; }
.language select { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; width: 76px; padding: 10px 3px; font-size: 11px; cursor: pointer; }
.language select option { background: #b50b45; color: white; }
#menu-toggle { display: none; width: 44px; height: 44px; border: 1px solid var(--line); border-radius: 50%; background: transparent; padding: 12px; }
#menu-toggle span { height: 1px; width: 18px; display: block; margin: 5px 0; background: white; transition: transform .2s; }
#menu-toggle[aria-expanded=true] span:first-child { transform: translateY(3px) rotate(45deg); }
#menu-toggle[aria-expanded=true] span:last-child { transform: translateY(-3px) rotate(-45deg); }
#mobile-nav:not([hidden]) { position: absolute; top: 100%; inset-inline: 0; padding: 24px 6vw 35px; display: flex; flex-direction: column; gap: 18px; background: #b50b45; border-bottom: 1px solid var(--line); font-size: 18px; font-weight: 700; }
.cover { height: 100svh; min-height: 700px; max-height: 1400px; position: relative; isolation: isolate; overflow: hidden; background: #ed185b; }
.cover-image, .cover-shade { position: absolute; inset: 0; z-index: -2; }
.cover-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; animation: cover-enter 2s ease both; }
.cover-shade { z-index: -1; background: linear-gradient(90deg,rgb(164 0 54 / 42%) 0%,rgb(180 0 59 / 15%) 38%,transparent 70%),linear-gradient(0deg,rgb(108 0 44 / 25%),transparent 40%); }
.cover-content { position: relative; padding: clamp(155px,21vh,245px) 5.7vw 135px; width: 62%; height: 100%; display: flex; flex-direction: column; justify-content: center; align-items: flex-start; }
.cover-content .eyebrow { margin-bottom: 25px; max-width: 450px; }
.cover h1 { font-size: clamp(72px,8.5vw,154px); line-height: .91; letter-spacing: -.075em; font-weight: 800; text-transform: uppercase; max-width: 900px; }
.cover h1 > span { display: block; }
.cover h1 em { font-style: normal; color: var(--yellow); }
.cover-subtitle { max-width: 385px; margin-top: 30px; font-size: 14px; line-height: 1.8; font-weight: 500; }
.cover-scroll { position: absolute; bottom: 36px; inset-inline-start: 5.7vw; display: flex; align-items: center; gap: 17px; font-size: 10px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.cover-scroll > span:last-child, .cover-scroll .arrow { display: grid; place-items: center; border: 1px solid rgb(255 255 255 / 50%); border-radius: 50%; width: 45px; height: 45px; font-size: 23px; font-weight: 400; }
.cover-edition { position: absolute; bottom: 49px; inset-inline-end: 4.3vw; font-size: 10px; letter-spacing: .14em; text-align: end; }
@keyframes cover-enter { from { transform: scale(1.055); } to { transform: scale(1); } }
.about { position: relative; padding: 70px 5.7vw 110px; background: #b50b45; overflow: hidden; isolation: isolate; }
.about-word { position: absolute; top: 40px; inset-inline-start: -2vw; z-index: -1; color: rgb(255 255 255 / 5%); font-size: clamp(150px,25vw,440px); line-height: .9; font-weight: 800; letter-spacing: -.09em; white-space: nowrap; pointer-events: none; }
.about-top { display: flex; justify-content: space-between; gap: 25px; padding-bottom: 38px; border-bottom: 1px solid var(--line); font-size: 10px; letter-spacing: .13em; }
.about-content { display: grid; grid-template-columns: 1.1fr 1fr; gap: 10vw; align-items: start; padding-top: 75px; }
.about h2 { font-size: clamp(55px,6.9vw,118px); line-height: .98; letter-spacing: -.065em; font-weight: 800; text-transform: uppercase; color: var(--yellow); }
.about-copy { max-width: 520px; padding-top: 9px; }
.about-copy p { font-size: clamp(16px,1.5vw,22px); line-height: 1.8; }
.about-copy p + p { margin-top: 23px; }
.about-copy small, .about-copy .note { display: block; font-size: 12px; margin-top: 30px; opacity: .8; line-height: 1.8; }
.contents { padding: 64px 5.7vw 78px; background: #d70d50; }
.contents-top { display: flex; justify-content: space-between; align-items: center; gap: 30px; margin-bottom: 26px; }
.contents-top h2 { font-size: 30px; letter-spacing: -.04em; text-transform: uppercase; }
#chapter-nav { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 0 33px; }
#chapter-nav a { padding: 20px 0; border-top: 1px solid var(--line); display: flex; justify-content: space-between; gap: 12px; align-items: baseline; font-size: 17px; font-weight: 700; letter-spacing: -.02em; transition: color .2s, padding .2s; }
#chapter-nav a span:first-child { font-size: 10px; margin-inline-end: 10px; font-weight: 500; letter-spacing: .03em; }
#chapter-nav a:hover { color: var(--yellow); padding-inline: 6px; }
.chapter { background: var(--chapter-bg,#d70d50); --accent: #fff19a; }
.chapter-cover { position: relative; height: min(90svh,1000px); min-height: 660px; overflow: hidden; isolation: isolate; border-top: 1px solid var(--line); }
.campaign { position: absolute; inset: 0; z-index: -2; }
.campaign img, img.campaign { width: 100%; height: 100%; object-fit: cover; }
.chapter-cover:has(.campaign)::after { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(0deg,rgb(106 0 43 / 70%) 0%,transparent 52%),linear-gradient(180deg,rgb(106 0 43 / 20%),transparent 30%); }
.campaign-label { position: absolute; top: 37px; inset-inline: 5.7vw; display: flex; justify-content: space-between; align-items: baseline; gap: 25px; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; }
.campaign-label > span:first-child { font-size: 20px; letter-spacing: -.04em; }
.chapter-title { position: absolute; bottom: 38px; inset-inline: 5.7vw; z-index: 2; }
.chapter-title .eyebrow { margin-bottom: 15px; color: var(--accent); }
.chapter-title h2 { font-size: clamp(75px,11.2vw,192px); line-height: .88; letter-spacing: -.075em; font-weight: 800; text-transform: uppercase; overflow-wrap: anywhere; }
.stage-cover { background: radial-gradient(ellipse at 48% 45%,rgb(255 255 255 / 12%),transparent 65%),var(--chapter-bg,#ed185b); }
.family-stage { position: absolute; inset: 0; display: flex; justify-content: center; align-items: center; z-index: -1; }
.stage-ring { position: absolute; width: min(76vw,1050px); height: min(52vw,670px); border: 1px solid rgb(255 255 255 / 45%); border-radius: 50%; transform: rotate(-25deg); box-shadow: inset 0 0 40px rgb(255 255 255 / 6%); }
.stage-ring::before { content: ''; position: absolute; inset: 35px -45px; border: 1px solid rgb(255 255 255 / 17%); border-radius: 50%; }
.family-stage > img { position: relative; width: 43%; height: 85%; object-fit: contain; filter: drop-shadow(20px 30px 18px rgb(78 0 30 / 25%)); }
.family-stage > img:first-of-type { transform: translate(9%,-3%) rotate(-15deg) scale(1.1); }
.family-stage > img:nth-of-type(2) { transform: translate(-8%,-3%) rotate(13deg) scale(1.1); }
.family-stage > img:nth-of-type(3) { transform: translate(-21%,9%) rotate(20deg) scale(.93); margin-inline-start: -16%; }
.family-stage > img:only-of-type { width: 65%; transform: translateY(-4%) rotate(-13deg) scale(1.25); }
.formula { position: relative; display: grid; grid-template-columns: 1fr 1fr; gap: 4vw; padding: 100px 5.7vw 105px; border-top: 1px solid var(--line); align-items: start; scroll-margin-top: 76px; }
.formula:nth-of-type(even) .formula-art { order: 2; }
.formula:nth-of-type(even) .formula-copy { order: 1; }
.formula-art { position: sticky; top: 100px; align-self: start; height: 660px; max-height: calc(100svh - 125px); min-height: 390px; display: flex; align-items: center; justify-content: center; isolation: isolate; overflow: clip; }
.shape { position: absolute; width: 80%; height: 76%; inset-inline-start: 10%; top: 12%; background: var(--accent); opacity: .88; border-radius: 48% 48% 45% 45% / 47% 35% 60% 48%; transform: rotate(-18deg); z-index: -2; }
.formula:nth-of-type(even) .shape { border-radius: 40% 58% 42% 52%; transform: rotate(17deg); }
.art-word { position: absolute; inset-inline-start: -2%; top: 40%; width: 104%; text-align: center; font-size: clamp(60px,8.5vw,150px); line-height: 1; font-weight: 800; letter-spacing: -.075em; text-transform: uppercase; color: rgb(255 255 255 / 16%); z-index: -1; white-space: nowrap; }
.formula-art > img { height: 94%; width: 100%; object-fit: contain; transform: rotate(-10deg) scale(1.2); filter: drop-shadow(18px 24px 13px rgb(78 0 30 / 22%)); }
.formula:nth-of-type(even) .formula-art > img { transform: rotate(9deg) scale(1.2); }
.formula-art > img[src*="feelings-"] { transform: rotate(-10deg) scale(1.9); }
.formula:nth-of-type(even) .formula-art > img[src*="feelings-"] { transform: rotate(10deg) scale(1.9); }
.formula-art > img[src*="liz-mask"], .formula-art > img[src*="marilyn-mask"] { transform: rotate(-9deg) scale(2); }
.formula-index { position: absolute; top: 9px; inset-inline-start: 3px; font-size: 11px; letter-spacing: .12em; font-weight: 600; }
.art-caption { position: absolute; bottom: 12px; inset-inline: 3px; display: flex; justify-content: space-between; gap: 22px; font-size: 9px; text-transform: uppercase; letter-spacing: .13em; font-weight: 700; }
.formula-copy { padding: 19px 0 0; min-width: 0; max-width: 620px; }
.formula-copy > .eyebrow { margin-bottom: 17px; color: var(--yellow); }
.formula h3 { font-size: clamp(35px,4.2vw,65px); line-height: 1.02; letter-spacing: -.055em; font-weight: 800; text-transform: uppercase; margin-bottom: 23px; overflow-wrap: anywhere; }
.formula-summary { font-size: clamp(17px,1.45vw,21px); line-height: 1.7; font-weight: 500; }
.formula-sizes { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 23px; }
.formula-sizes span { padding: 7px 14px; border: 1px solid rgb(255 255 255 / 50%); border-radius: 30px; font-size: 11px; line-height: 1.4; font-weight: 700; unicode-bidi: isolate; }
.formula-features { display: grid; grid-template-columns: 1fr 1fr; gap: 26px; padding-block: 30px; margin-top: 28px; border-block: 1px solid var(--line); }
.formula-features h4, .formula-section h4 { font-size: 11px; font-weight: 800; line-height: 1.6; text-transform: uppercase; letter-spacing: .11em; color: var(--yellow); margin-bottom: 13px; }
.formula-features ul { font-size: 13px; padding-inline-start: 1.1em; }
.formula-section { margin-top: 29px; font-size: 13px; line-height: 1.85; }
.formula-section ol { padding-inline-start: 1.4em; }
.formula-section ol li { padding-inline-start: .3em; }
.formula-section ol li::marker { color: var(--yellow); font-weight: 800; }
.ingredients { display: flex; flex-wrap: wrap; gap: 7px 8px; }
.ingredients span { border-bottom: 1px solid rgb(255 255 255 / 40%); padding-bottom: 3px; font-size: 12px; }
.ingredients span:not(:last-child)::after { content: ' /'; opacity: .55; margin-inline-start: 5px; }
.formula-section dl { margin: 0; }
.tech-row { display: grid; grid-template-columns: 1fr 1.2fr; gap: 20px; padding: 11px 0; border-bottom: 1px solid var(--line); font-size: 12px; }
.tech-row dt { opacity: .8; }
.tech-row dd { margin: 0; text-align: end; font-weight: 600; }
.protocol-note, .availability, .presentation-note { font-size: 11px; line-height: 1.8; margin-top: 16px; opacity: .85; }
.protocol-note { border-inline-start: 2px solid var(--yellow); padding-inline-start: 14px; }
.product-contact { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; margin-top: 29px; padding-top: 25px; border-top: 1px solid var(--line); }
.product-contact a, a.product-contact { display: inline-flex; justify-content: space-between; align-items: center; gap: 30px; padding: 14px 20px; background: white; color: #a5093c; font-size: 11px; font-weight: 800; transition: background .25s, transform .25s; }
.product-contact a:hover, a.product-contact:hover { background: var(--yellow); transform: translateY(-2px); }
.copy-link { border: 0; background: transparent; border-bottom: 1px solid rgb(255 255 255 / 55%); padding: 6px 0; font-size: 10px; font-weight: 700; }
.chapter-next { padding: 28px 5.7vw; display: flex; justify-content: space-between; align-items: center; gap: 25px; background: rgb(103 0 36 / 13%); border-top: 1px solid var(--line); font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.chapter-next a { display: inline-flex; align-items: center; gap: 25px; }
.chapter-next a:hover { color: var(--yellow); }
.presentations { padding: 95px 5.7vw 105px; background: #930d3a; }
.presentations-head, .presentations > header, .presentations > .head { display: grid; grid-template-columns: 1fr 1fr; align-items: end; gap: 7vw; margin-bottom: 45px; }
.presentations h2 { font-size: clamp(42px,6vw,97px); line-height: .98; letter-spacing: -.065em; font-weight: 800; text-transform: uppercase; }
.presentations .eyebrow { color: var(--yellow); margin-bottom: 22px; }
.presentations-head > p, .presentations > header > p { max-width: 430px; font-size: 14px; line-height: 1.9; }
.presentation-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 30px; border-block: 1px solid var(--line); padding-block: 23px; margin: 40px 0 15px; }
.presentation-toolbar label { flex: 1; max-width: 520px; }
.presentation-toolbar input { width: min(100%,520px); background: transparent; color: white; border: 0; border-bottom: 1px solid rgb(255 255 255 / 50%); border-radius: 0; padding: 13px 0; font-size: 14px; outline-offset: 5px; }
.presentation-toolbar input::placeholder { color: rgb(255 255 255 / 72%); opacity: 1; }
#offer-count { font-size: 11px; white-space: nowrap; }
.offer-list, #offer-list, #offers-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 55px; }
.offer { min-width: 0; position: relative; padding: 28px 40px 28px 0; border-bottom: 1px solid var(--line); }
.offer-kind { display: block; color: var(--yellow); font-size: 9px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; margin-bottom: 12px; }
.offer h3 { font-size: clamp(17px,1.6vw,24px); line-height: 1.4; letter-spacing: -.025em; font-weight: 700; overflow-wrap: anywhere; }
.offer p, .offer ul { font-size: 11px; line-height: 1.85; margin-top: 13px; }
.offer ul { padding-inline-start: 1.15em; }
.wa-offer { display: inline-flex; align-items: center; gap: 12px; margin-top: 17px; font-size: 10px; font-weight: 800; }
.wa-offer .arrow, .wa-offer > span:last-child { font-size: 18px; }
.offer > .wa-offer { position: static; }
.offer > .wa-offer.arrow, .offer > a.wa-offer:only-child { position: absolute; top: 30px; inset-inline-end: 0; }
.formula-anchor { display: inline-block; font-size: 10px; border-bottom: 1px solid rgb(255 255 255 / 50%); margin-top: 11px; margin-inline-end: 20px; }
.offer-note { font-size: 10px !important; opacity: .75; }
.offer a:hover { color: var(--yellow); }
.contact { position: relative; isolation: isolate; background: #ed185b; padding: 100px 5.7vw 70px; min-height: 700px; overflow: hidden; }
.contact-mark { width: 85px; height: 60px; object-fit: contain; margin-bottom: 53px; }
.contact .eyebrow { margin-bottom: 25px; position: relative; }
.contact h2 { font-size: clamp(64px,9.8vw,170px); line-height: .94; font-weight: 800; letter-spacing: -.075em; text-transform: uppercase; max-width: 1200px; position: relative; }
.contact h2 em { font-style: normal; color: var(--yellow); }
.contact-copy { margin-top: 35px; font-size: 16px; line-height: 1.85; max-width: 470px; position: relative; }
.contact-button { display: inline-flex; justify-content: space-between; gap: 45px; align-items: center; border: 1px solid white; padding: 19px 25px; background: white; color: #a5093c; font-size: 12px; font-weight: 800; margin-top: 30px; position: relative; transition: transform .25s, background .25s; }
.contact-button:hover { background: var(--yellow); transform: translateY(-3px); }
.contact-button span:last-child { font-size: 24px; line-height: 1; }
.contact-number { display: block; font-size: 12px; margin-top: 20px; position: relative; direction: ltr; unicode-bidi: isolate; }
.contact-orbit { position: absolute; width: 900px; height: 510px; border: 1px solid rgb(255 255 255 / 25%); border-radius: 50%; transform: rotate(-33deg); top: 120px; inset-inline-end: -320px; z-index: -1; }
.contact-orbit::before, .contact-orbit::after { content: ''; position: absolute; border: 1px solid rgb(255 255 255 / 13%); border-radius: inherit; inset: -55px; }
.contact-orbit::after { inset: 55px; }
footer { padding: 30px 5.7vw; background: #b50b45; border-top: 1px solid var(--line); display: flex; justify-content: space-between; align-items: center; gap: 25px; font-size: 10px; line-height: 1.8; }
footer a { border-bottom: 1px solid rgb(255 255 255 / 45%); }
.whatsapp-float { position: fixed; z-index: 70; inset-inline-end: 25px; bottom: 24px; display: grid; place-items: center; width: 56px; height: 56px; background: white; color: #b50b45; border-radius: 50%; box-shadow: 0 5px 28px rgb(79 0 30 / 26%); transition: transform .25s; }
.whatsapp-float:hover { transform: translateY(-4px); }
.whatsapp-float svg { width: 32px; height: 32px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.loading { position: fixed; inset: 0; z-index: 1000; background: #ed185b; display: grid; place-items: center; transition: opacity .65s ease, visibility .65s ease; }
.loading.done, .loading.is-done { opacity: 0; visibility: hidden; pointer-events: none; }
.loading-center { display: flex; align-items: center; flex-direction: column; text-align: center; gap: 29px; padding: 30px; }
.loading img { width: 180px; height: 115px; object-fit: contain; }
.loading p { font-size: 10px; letter-spacing: .15em; text-transform: uppercase; max-width: 320px; line-height: 1.8; }
.loader-line { width: 100px; height: 1px; position: relative; background: rgb(255 255 255 / 25%); overflow: hidden; }
.loader-line::after { content: ''; position: absolute; inset: 0; background: white; transform-origin: left; animation: loader 2s ease both; }
@keyframes loader { from { transform: scaleX(0); } to { transform: scaleX(1); } }
.scroll-progress, .progress { position: fixed; z-index: 100; top: 0; inset-inline-start: 0; height: 3px; width: 0; background: var(--yellow); }
.toast { position: fixed; bottom: 28px; left: 50%; transform: translate(-50%,20px); padding: 13px 22px; background: white; color: #a5093c; box-shadow: 0 6px 30px rgb(95 0 35 / 20%); font-size: 12px; font-weight: 700; opacity: 0; visibility: hidden; z-index: 100; max-width: calc(100vw - 40px); text-align: center; transition: opacity .25s, transform .25s, visibility .25s; }
.toast.show, .toast.visible { opacity: 1; visibility: visible; transform: translate(-50%,0); }
.motion-ready .reveal { opacity: 0; transform: translateY(28px); transition: opacity .85s ease, transform .85s cubic-bezier(.2,.7,.2,1); }
.motion-ready .reveal.visible, .motion-ready .reveal.is-visible { opacity: 1; transform: none; }
.noscript { position: relative; padding: 30px 5.7vw; background: #8c103a; color: white; font-size: 15px; }
.noscript a { text-decoration: underline; }
[dir=rtl] { font-family: 'Noto Sans Arabic', 'Manrope', Arial, sans-serif; }
[dir=rtl] .eyebrow, [dir=rtl] .campaign-label, [dir=rtl] .chapter-next, [dir=rtl] .cover-edition, [dir=rtl] .formula-section h4, [dir=rtl] .formula-features h4 { letter-spacing: 0; }
[dir=rtl] .cover h1, [dir=rtl] .about h2, [dir=rtl] .chapter-title h2, [dir=rtl] .formula h3, [dir=rtl] .contact h2, [dir=rtl] .presentations h2 { letter-spacing: -.025em; line-height: 1.2; }
[dir=rtl] .cover-shade { background: linear-gradient(270deg,rgb(164 0 54 / 65%),rgb(180 0 59 / 18%) 50%,transparent); }
[dir=rtl] .cover-content { width: 66%; }
[dir=rtl] .cover-content h1 { font-size: clamp(62px,7.7vw,130px); }
[dir=rtl] .offer { padding: 28px 0 28px 40px; }
[dir=rtl] .formula-sizes span, [dir=rtl] .tech-row dd { unicode-bidi: plaintext; }
[dir=rtl] bdi { unicode-bidi: isolate; }
@media (min-width: 1700px) {
  .formula { gap: 7vw; }
  .formula-copy { max-width: 680px; }
  .formula-art { height: 800px; }
  .formula-section, .formula-features ul { font-size: 14px; }
}
@media (max-width: 1100px) {
  .header { padding-inline: 4vw; gap: 22px; }
  .desktop-nav { gap: 20px; font-size: 10px; }
  .brand > img, .brand > svg { width: 112px; }
  .cover-content { width: 68%; padding-inline: 5vw; }
  .cover h1 { font-size: clamp(69px,9vw,115px); }
  .cover-subtitle { max-width: 330px; }
  .about-content { gap: 6vw; }
  .formula { padding-inline: 4.5vw; gap: 3vw; }
  .formula-art { height: 580px; }
  .formula-features { gap: 18px; }
  .chapter-title h2 { font-size: 11vw; }
}
@media (max-width: 800px) {
  html { scroll-padding-top: 76px; }
  .header { height: 78px; padding-inline: 5vw; }
  .header.scrolled, .header.is-scrolled, body.menu-open .header { height: 70px; }
  .brand > img, .brand > svg { width: 103px; height: 57px; }
  .desktop-nav { display: none; }
  #menu-toggle { display: block; }
  .header-right, .header-actions { gap: 13px; }
  .language { gap: 5px; }
  .language select { width: 66px; font-size: 10px; }
  .cover { min-height: 740px; max-height: 1050px; }
  .cover-content { width: 76%; padding: 160px 6vw 135px; justify-content: flex-start; }
  .cover-content .eyebrow { max-width: 270px; font-size: 9px; margin-bottom: 23px; }
  .cover h1 { font-size: clamp(63px,11.6vw,100px); }
  .cover-subtitle { font-size: 13px; max-width: 290px; margin-top: 24px; }
  .cover-image img { object-position: 61% center; }
  .cover-shade { background: linear-gradient(90deg,rgb(162 0 54 / 50%),rgb(162 0 54 / 16%) 65%,transparent),linear-gradient(0deg,rgb(108 0 44 / 30%),transparent 60%); }
  .cover-scroll { inset-inline-start: 6vw; bottom: 30px; }
  .cover-edition { max-width: 140px; font-size: 8px; bottom: 43px; }
  .about { padding: 45px 6vw 70px; }
  .about-content { padding-top: 48px; grid-template-columns: 1fr; gap: 35px; }
  .about h2 { max-width: 570px; font-size: clamp(50px,10vw,80px); }
  .about-copy { max-width: 600px; padding: 0; }
  .about-copy p { font-size: 17px; }
  .contents { padding: 45px 6vw 55px; }
  #chapter-nav { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 28px; }
  #chapter-nav a { font-size: 16px; }
  .contents-top { margin-bottom: 30px; }
  .chapter-cover { height: 75svh; min-height: 550px; max-height: 780px; }
  .campaign-label { inset-inline: 6vw; top: 28px; }
  .chapter-title { inset-inline: 6vw; bottom: 30px; }
  .chapter-title h2 { font-size: clamp(65px,13vw,105px); }
  .chapter-title .eyebrow { font-size: 9px; }
  .family-stage > img { width: 53%; height: 80%; }
  .family-stage > img:only-of-type { width: 85%; }
  .formula { grid-template-columns: 1fr; padding: 40px 6vw 65px; gap: 28px; }
  .formula .formula-art, .formula:nth-of-type(even) .formula-art { position: relative; top: auto; order: 0; height: 570px; max-height: 73svh; min-height: 390px; width: min(100%,650px); margin-inline: auto; }
  .formula .formula-copy, .formula:nth-of-type(even) .formula-copy { order: 1; max-width: 100%; padding-top: 10px; }
  .formula h3 { font-size: clamp(37px,7.5vw,59px); max-width: 600px; }
  .formula-summary { font-size: 18px; }
  .formula-features { gap: 30px; margin-top: 30px; padding-block: 26px; }
  .formula-features ul, .formula-section { font-size: 14px; }
  .formula-features h4, .formula-section h4 { font-size: 11px; }
  .protocol-note, .availability, .presentation-note { font-size: 12px; }
  .tech-row { font-size: 13px; }
  .art-word { font-size: 15vw; }
  .chapter-next { padding: 25px 6vw; font-size: 10px; }
  .presentations { padding: 65px 6vw 75px; }
  .presentations-head, .presentations > header, .presentations > .head { grid-template-columns: 1fr; gap: 25px; }
  .presentations h2 { font-size: clamp(44px,8vw,70px); }
  .presentations-head > p, .presentations > header > p { font-size: 15px; }
  .offer-list, #offer-list, #offers-list { column-gap: 30px; }
  .offer { padding-right: 10px; }
  .offer h3 { font-size: 18px; }
  .offer p, .offer ul { font-size: 12px; }
  .offer-note { font-size: 11px !important; }
  .contact { min-height: 670px; padding: 70px 6vw 60px; }
  .contact h2 { font-size: clamp(58px,10vw,85px); }
  .contact-mark { margin-bottom: 40px; width: 75px; }
  .contact-copy { font-size: 15px; }
  footer { padding-inline: 6vw; }
  [dir=rtl] .cover-content { width: 85%; }
  [dir=rtl] .cover-content h1 { font-size: clamp(50px,9.5vw,80px); }
}
@media (max-width: 520px) {
  body { font-size: 14px; }
  .cover { min-height: 730px; }
  .cover-image img { object-position: 65% center; }
  .cover-content { width: 96%; padding-top: 150px; padding-bottom: 145px; }
  .cover h1 { font-size: clamp(57px,15vw,80px); max-width: 390px; }
  .cover-content .eyebrow { max-width: 230px; }
  .cover-subtitle { max-width: 270px; font-size: 14px; line-height: 1.75; text-shadow: 0 1px 10px rgb(99 0 30 / 18%); }
  .cover-shade { background: linear-gradient(90deg,rgb(167 0 55 / 62%),rgb(167 0 55 / 19%) 75%),linear-gradient(0deg,rgb(105 0 40 / 32%),transparent 60%); }
  .cover-edition { max-width: 110px; font-size: 7px; }
  .cover-scroll { gap: 11px; font-size: 8px; }
  .cover-scroll > span:last-child { width: 39px; height: 39px; }
  .about-top { font-size: 8px; gap: 15px; padding-bottom: 26px; }
  .about-word { top: 90px; font-size: 40vw; }
  .about h2 { font-size: 13vw; }
  .about-copy p { font-size: 16px; }
  .contents-top { align-items: flex-start; gap: 20px; }
  .contents-top h2 { font-size: 25px; }
  .contents-top .eyebrow { font-size: 8px; }
  #chapter-nav { gap: 0 20px; }
  #chapter-nav a { font-size: 14px; padding-block: 17px; gap: 5px; }
  #chapter-nav a span:first-child { font-size: 8px; margin-inline-end: 5px; }
  .chapter-cover { min-height: 500px; height: 70svh; }
  .campaign img, img.campaign { object-position: 50% center; }
  .campaign-label { font-size: 8px; letter-spacing: .1em; }
  .campaign-label > span:first-child { font-size: 17px; }
  .chapter-title h2 { font-size: 16vw; }
  .chapter-title .eyebrow { max-width: 250px; line-height: 1.8; font-size: 8px; }
  .family-stage { top: -10px; }
  .family-stage > img { width: 61%; height: 76%; }
  .family-stage > img:first-of-type { transform: translate(13%,-5%) rotate(-15deg) scale(1.1); }
  .family-stage > img:nth-of-type(2) { transform: translate(-14%,-5%) rotate(13deg) scale(1.1); }
  .family-stage > img:nth-of-type(3) { margin-inline-start: -27%; transform: translate(-16%,4%) rotate(20deg) scale(.9); }
  .family-stage > img:only-of-type { width: 100%; transform: translateY(-5%) rotate(-13deg) scale(1.2); }
  .stage-ring { width: 115vw; height: 80vw; }
  .formula { padding-top: 25px; gap: 20px; }
  .formula .formula-art, .formula:nth-of-type(even) .formula-art { height: 430px; max-height: 68svh; min-height: 340px; }
  .shape { width: 83%; height: 78%; inset-inline-start: 8.5%; top: 11%; }
  .formula-art > img { height: 95%; }
  .formula h3 { font-size: clamp(35px,9vw,47px); margin-bottom: 22px; }
  .formula-summary { font-size: 17px; }
  .formula-features { grid-template-columns: 1fr; gap: 25px; }
  .formula-features ul, .formula-section { font-size: 15px; line-height: 1.85; }
  .formula-features h4, .formula-section h4 { font-size: 11px; margin-bottom: 12px; }
  .formula-section { margin-top: 29px; }
  .formula-sizes span { font-size: 11px; padding: 7px 12px; }
  .ingredients span { font-size: 13px; }
  .tech-row { grid-template-columns: 1fr 1.15fr; gap: 14px; font-size: 13px; }
  .protocol-note, .availability, .presentation-note { font-size: 12px; }
  .product-contact { gap: 22px; }
  .product-contact a, a.product-contact { font-size: 12px; padding: 16px 20px; width: 100%; }
  .copy-link { font-size: 11px; }
  .art-caption { font-size: 8px; gap: 14px; }
  .art-word { font-size: 19vw; }
  .chapter-next { align-items: flex-start; font-size: 9px; }
  .chapter-next a { gap: 14px; text-align: end; }
  .presentations h2 { font-size: 12vw; }
  .presentation-toolbar { gap: 20px; flex-wrap: wrap; padding-block: 20px; }
  .presentation-toolbar label { flex-basis: 100%; }
  .presentation-toolbar input { font-size: 15px; }
  #offer-count { font-size: 11px; }
  .offer-list, #offer-list, #offers-list { grid-template-columns: 1fr; }
  .offer { padding: 26px 0; }
  .offer h3 { font-size: 21px; }
  .offer p, .offer ul { font-size: 14px; }
  .offer-kind { font-size: 9px; }
  .wa-offer, .formula-anchor { font-size: 12px; }
  .offer-note { font-size: 12px !important; }
  .contact { min-height: 650px; padding-top: 60px; }
  .contact h2 { font-size: clamp(53px,13vw,72px); }
  .contact .eyebrow { font-size: 9px; max-width: 260px; }
  .contact-copy { font-size: 16px; }
  .contact-button { padding: 17px 20px; font-size: 11px; gap: 23px; width: 100%; }
  .contact-orbit { width: 600px; height: 380px; inset-inline-end: -380px; top: 140px; }
  footer { flex-direction: column; align-items: flex-start; gap: 14px; padding-bottom: 95px; font-size: 10px; }
  .whatsapp-float { width: 52px; height: 52px; bottom: 19px; inset-inline-end: 18px; }
  .whatsapp-float svg { width: 29px; height: 29px; }
  [dir=rtl] .cover-content { width: 100%; }
  [dir=rtl] .cover-content h1 { font-size: 12vw; }
  [dir=rtl] .offer { padding: 26px 0; }
  [dir=rtl] .formula h3 { font-size: 9vw; }
}
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .motion-ready .reveal { opacity: 1; transform: none; }
}
/* Final composition: keep the complete headline and the model visible together. */
.cover-content{width:70%}.cover h1{font-size:clamp(58px,6.9vw,124px);overflow-wrap:normal;max-width:100%}.cover-subtitle{max-width:330px}.formula-art>img{transform:translateY(var(--float-y,0px)) rotate(var(--tilt,-11deg)) scale(1.2)}
.loading{display:block}.loading>img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.loading>p{position:absolute;top:calc(50% + 115px);left:20px;right:20px;max-width:none;text-align:center;color:#fff;font-size:12px;font-weight:700}.loadline{position:absolute;top:calc(50% + 88px);left:50%;width:110px;height:2px;transform:translateX(-50%);background:#fff5;overflow:hidden}.loadline:after{content:'';position:absolute;inset:0;background:#fff;transform-origin:left;animation:loader 2s ease both}
@media(max-width:800px){.cover-content{position:absolute;top:auto;bottom:130px;left:7vw;right:7vw;width:auto;height:auto;padding:0}.cover h1{font-size:10vw;line-height:1;letter-spacing:-.055em}.cover-subtitle{font-size:14px;max-width:280px}.cover-shade{background:linear-gradient(0deg,#990637ee 0%,#aa073d66 48%,transparent 75%)}.cover-image img{object-position:70% center}.cover-edition{display:none}.cover-content .eyebrow{font-size:9px;max-width:100%}.cover-scroll{bottom:43px;inset-inline-start:7vw}[dir=rtl] .cover-content{width:auto;left:7vw;right:7vw}[dir=rtl] .cover-content h1{font-size:10vw;line-height:1.3}}
@media(max-width:400px){.cover h1{font-size:9.7vw}.cover-content{bottom:125px}.cover-content .eyebrow{font-size:8px}.cover-subtitle{font-size:13px}}
[lang=ru] .contact h2{overflow-wrap:anywhere}
@media(max-width:800px){[lang=ru] .contact h2{font-size:clamp(32px,8.8vw,60px);line-height:1.08}}

/* Product editorial: original transparent packshots, white type, uninterrupted pink. */
.formula{background:#ed185b;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:6vw;padding:88px 6vw 95px;direction:ltr}
.formula-visual{position:sticky;top:104px;align-self:start;min-width:0;order:0}
.formula .formula-art,.formula:nth-of-type(even) .formula-art{position:relative;top:auto;order:0;margin:0;width:100%;height:min(65vh,610px);max-height:none;min-height:330px;overflow:hidden}
.formula .formula-copy,.formula:nth-of-type(even) .formula-copy{order:1;padding-top:14px;max-width:none}
.formula-art>img,.formula:nth-of-type(even) .formula-art>img{width:auto;max-width:none;height:100%;aspect-ratio:1;object-fit:contain;transform:translateY(var(--float-y,0px)) scale(1.14);filter:drop-shadow(10px 20px 14px #90042e30)}
.formula-art>img[src*="feelings-"],.formula:nth-of-type(even) .formula-art>img[src*="feelings-"]{transform:translateY(calc(var(--float-y,0px) - 25%)) scale(1.65)}
.formula .formula-art>img[src*="carmen-"]{transform:translateY(calc(var(--float-y,0px) - 21%)) scale(1.45)}
.formula .formula-art>img[src*="liz-"],.formula .formula-art>img[src*="marilyn-"]{transform:translateY(calc(var(--float-y,0px) - 11%)) scale(1.3)}
.formula .formula-art>img[src*="liz-mask"],.formula .formula-art>img[src*="marilyn-mask"]{transform:translateY(calc(var(--float-y,0px) - 40.5%)) scale(1.5)}
.shape,.art-word{display:none}
.formula-copy>.eyebrow,.formula-features h4,.formula-section h4,.formula-section ol li::marker{color:#fff}
.formula h3{font-size:clamp(35px,4vw,66px);line-height:1.02;letter-spacing:-.025em;font-weight:900}
.formula-summary{font-size:clamp(17px,1.4vw,22px);line-height:1.65;font-weight:400}
.formula-features .formula-section{margin-top:0}
.formula-index{top:0;font-size:10px;opacity:.8}
.art-caption{bottom:4px;opacity:.8}
.results-toggle{width:100%;margin-top:24px;border:0;border-block:1px solid #ffffff60;background:transparent;color:white;padding:17px 0;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:13px;font-weight:700;letter-spacing:.01em;text-align:start}
.result-arrow{display:grid;place-items:center;width:42px;height:42px;flex:none;border:1px solid #fff9;border-radius:50%;font-size:24px;font-weight:400;transition:transform .3s,background .3s}
.results-toggle:hover .result-arrow{transform:translateX(5px);background:#fff;color:#ed185b}
.results-toggle[aria-expanded=true] .result-arrow{transform:rotate(180deg)}
.result-panel{padding-top:0;direction:ltr}
.result-label{font-size:11px;font-weight:800;letter-spacing:.06em;text-transform:uppercase;margin:0 0 16px}
.result-tabs{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;flex:1}
.result-controls .result-tabs button{width:auto;height:auto;font-size:10px;font-weight:700;line-height:1.4;padding:9px 12px;border:1px solid #fff6;border-radius:30px}
.result-controls .result-tabs button[aria-pressed=true]{background:#fff;color:#a5093c}
.result-slide.is-illustration img{height:auto;min-height:0;aspect-ratio:3/2;margin-top:48px}
.result-slide.is-illustration figcaption{margin-bottom:48px;font-weight:400;line-height:1.7}
.result-slide{margin:0}
.result-slide img,.result-slide video{display:block;width:100%;height:min(59vh,550px);min-height:300px;object-fit:contain;background:transparent}
.result-slide video{background:#8c0d36;max-width:100%}
.film-wrap{position:relative}
.film-play{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);display:grid;place-items:center;width:72px;height:72px;border:1px solid #fff;border-radius:50%;background:#b50b4580;backdrop-filter:blur(8px);font-size:42px;color:#fff;line-height:1;padding:0 0 0 4px}
.result-slide figcaption{margin-top:18px;font-size:12px;font-weight:700}
.result-controls{display:flex;align-items:center;justify-content:space-between;margin-top:16px;border-top:1px solid #fff6;padding-top:14px}
.result-controls button{border:0;background:transparent;font-size:26px;width:42px;height:42px;color:white}
.result-count{font-size:10px;letter-spacing:.15em}
.result-disclaimer{font-size:11px;line-height:1.6;opacity:.85;margin-top:16px}
.result-empty{min-height:400px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;padding:30px 0}
.result-spark{font-size:90px;line-height:1;margin-bottom:30px;font-weight:400}
.result-empty h4{font-size:clamp(25px,3vw,42px);line-height:1.1;letter-spacing:-.03em;max-width:350px}
.result-empty p{font-size:14px;line-height:1.7;margin-top:20px;max-width:330px}
.result-empty a{font-size:12px;font-weight:700;border-bottom:1px solid #fff;padding-bottom:5px;margin-top:25px}
[dir=rtl] .formula-copy,[dir=rtl] .results-toggle,[dir=rtl] .result-disclaimer,[dir=rtl] .result-empty,[dir=rtl] .result-slide figcaption{direction:rtl}
@media(min-width:641px) and (max-width:1000px){
 .formula{padding:55px 5vw 70px;gap:5vw;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
 .formula h3{font-size:clamp(29px,4.4vw,44px)}.formula-summary{font-size:16px}
 .formula .formula-art,.formula:nth-of-type(even) .formula-art{height:440px;min-height:320px}
 .formula-features{grid-template-columns:1fr;gap:24px}.formula-section,.formula-features ul{font-size:13px}
 .tech-row{grid-template-columns:1fr;font-size:12px;gap:3px}.tech-row dd{text-align:start}
 .results-toggle{font-size:11px;gap:10px}.result-arrow{width:34px;height:34px;font-size:21px}
}
@media(max-width:640px){
 .formula{grid-template-columns:1fr;gap:32px;padding:38px 7vw 65px}
 .formula-visual{position:relative;top:auto}
 .formula .formula-art,.formula:nth-of-type(even) .formula-art{height:390px;min-height:300px;max-height:55svh}
 .formula h3{font-size:clamp(35px,9vw,52px)}.formula-summary{font-size:18px}
 .formula-copy>.eyebrow{font-size:10px}.formula-features{grid-template-columns:1fr}
 .results-toggle{margin-top:20px;font-size:13px;padding:13px 0}.result-arrow{width:37px;height:37px}
 .result-slide img,.result-slide video{height:460px;max-height:64svh;min-height:300px}
 .result-empty{min-height:350px}.result-empty h4{font-size:34px}
}
