/* An ÉterNails jewel box: silk, lit glass, champagne and depth. */
:root { --ink:#392323; --rose:#87424f; --muted:#654842; --line:#b68b755e; }
html { background:#e6b6a8; scrollbar-color:#ba857b #f5d8ca; }
body { background:transparent; isolation:isolate; }
.cinema-environment { position:fixed; inset:0; z-index:-2; pointer-events:none; overflow:hidden; background:#e5b6a9 url('assets/satin-leopard.webp') center/cover no-repeat; }
.cinema-environment:after { content:''; position:absolute; inset:0; background:linear-gradient(100deg,#fff4e32e,transparent 48%,#67352c13),radial-gradient(ellipse at 52% 35%,transparent 35%,#672a262b); }
.cinema-light { position:absolute; inset:-15%; background:conic-gradient(from 220deg at 76% 12%,transparent 0deg,#fff5d852 5deg,transparent 12deg,#fff3c73d 18deg,transparent 23deg); opacity:.8; transform-origin:75% 20%; animation:cinema-rays 18s ease-in-out infinite alternate; }
.cinema-stars { position:absolute; inset:0; }
.cinema-stars i { position:absolute; width:3px; height:3px; background:#fff8d8; border-radius:50%; box-shadow:0 0 7px 2px #ffe6a9b0; animation:cinema-sparkle var(--duration,8s) ease-in-out var(--delay,0s) infinite; }
.cinema-stars i:nth-child(3n) { width:15px; height:12px; background:transparent; border:2px dashed #e1b361; border-radius:44% 58% 37% 50%; box-shadow:0 0 10px #f5d18d80; }
.floating-products { position:absolute; inset:0; opacity:.88; transition:opacity .7s; }
.floating-product { position:absolute; object-fit:contain; width:230px; height:300px; filter:drop-shadow(12px 20px 10px #54292235); transform:rotate(-16deg); animation:product-drift 12s ease-in-out infinite; }
.product-pink { left:-30px; bottom:9%; }
.product-gold { right:-25px; top:19%; width:220px; transform:rotate(14deg); animation-delay:-5s; }
.product-pot { right:1%; bottom:5%; width:160px; height:160px; transform:rotate(-12deg); animation-delay:-8s; }
body[data-page="accueil"] .floating-products { opacity:.6; }
body[data-page="creations"] .floating-products { opacity:.28; }
.site-header,.site-header.is-scrolled { background:linear-gradient(110deg,#ffefdf80,#f4cdb95c); border-bottom:1px solid #fff9; box-shadow:0 8px 35px #61382712,inset 0 1px 0 #fffc; backdrop-filter:blur(22px) saturate(120%); }
.desktop-nav { background:linear-gradient(130deg,#fff7eb58,#eab4a22e); border:1px solid #fff9; box-shadow:inset 0 1px 1px #fffd,0 4px 20px #672d2517; }
.desktop-nav>a { color:#573530; text-shadow:0 1px 3px #fff8; position:relative; overflow:hidden; }
.desktop-nav>a:before { content:''; position:absolute; inset:-1px; background:linear-gradient(110deg,transparent 20%,#fff9 48%,transparent 70%); transform:translateX(-160%); transition:transform .7s; pointer-events:none; }
.desktop-nav>a:hover:before { transform:translateX(160%); }
.desktop-nav>a[aria-current="location"] { background:linear-gradient(130deg,#fff6e9d6,#eac3b38a); box-shadow:inset 0 1px 1px white,0 3px 15px #6e342622; border-color:#fff; }
.button-dark { background:linear-gradient(120deg,#593a35,#342423); border:1px solid #b98a6d; box-shadow:0 7px 20px #5c30262b,inset 0 1px 0 #e2c2a15c; }
.button-dark:hover { background:linear-gradient(120deg,#7e4d4a,#50302e); }
.hero,.atelier,.creations,.expertise,.promotion,.last-invitation { background:transparent; position:relative; }
.hero:before,.hero:after { display:none; }
.hero-text { z-index:2; position:relative; padding:28px 0; text-shadow:0 2px 14px #fff3dfb3; }
.hero :is(h1,h2) { font-size:clamp(72px,7.1vw,116px); }
.hero :is(h1,h2) em { color:#914250; }
.hero-description { font-size:16px; color:#593a34; }
.hero-text:before { content:''; position:absolute; z-index:-1; inset:-6% -9%; border-radius:50%; background:radial-gradient(ellipse,#fff1df94,transparent 68%); pointer-events:none; }
.hero-art { height:min(66svh,620px); z-index:1; }
.hero-photo { inset:6% 5%; border:5px solid #fff3dc80; outline:1px solid #af835d99; outline-offset:7px; box-shadow:20px 30px 60px #56292652,0 0 30px #fff1d65c,inset 0 0 30px #fff3; transform:rotate(4deg); }
.hero-photo svg { transform:scale(1.025); }
.hero-ring { inset:0 0 -1%; transform:rotate(-8deg); border:1px solid #fff4d6; box-shadow:0 0 10px #ffe5ad60,3px 5px 10px #613b2e18; }
.hero-side-note { color:#57332c; }
.photo-label { bottom:3%; left:-1%; padding:14px 25px; transform:rotate(-5deg); background:linear-gradient(120deg,#fffae7d9,#f0c6b69e); border:1px solid #fff7d7; }
.jewel-stage { position:absolute; z-index:5; top:-11%; left:-15%; width:250px; height:250px; pointer-events:none; filter:drop-shadow(0 12px 16px #79493224); }
.jewel-stage canvas { display:block; width:100%; height:100%; }
.jewel-fallback { display:block; font-family:Georgia,serif; font-size:140px; line-height:1; color:#d5a65a; text-shadow:1px 1px 0 #fff6ce,0 0 20px #fff2b1; transform:rotate(-15deg); }
.jewel-stage.is-ready .jewel-fallback { display:none; }
.ribbon { display:none; }
.scroll-note { z-index:3; color:#57352f; text-shadow:0 1px 5px #fff6e7; }
.scroll-note>span { background:#fff4d65c; border:1px solid #fff8dbb0; border-radius:50%; width:35px; height:35px; display:grid; place-items:center; }
.paged-site .section-pad { padding:55px 9% 100px; }
.atelier { align-items:center; gap:7%; }
.atelier-copy { padding:38px; background:linear-gradient(125deg,#fff9f0bd,#f8dcd270); backdrop-filter:blur(18px); border:1px solid #fff9; border-radius:4px 60px 4px 60px; box-shadow:0 20px 65px #5d2d271e,inset 0 1px 1px #fffd; }
.atelier-copy :is(h1,h2) { font-size:clamp(45px,4.2vw,65px); }
.atelier-copy p:not(.eyebrow) { font-size:14px; }
.atelier-photo { box-shadow:15px 20px 45px #63332640; border:4px solid #fff0d980; }
.image-caption { color:#51312d; background:#fff0ddab; padding:12px 15px; border:1px solid #fff8; backdrop-filter:blur(10px); }
.section-heading { padding:26px 30px; background:linear-gradient(120deg,#fff5e8cc,#f5d6c957); border:1px solid #fff9; border-radius:3px 50px 3px 3px; backdrop-filter:blur(16px); box-shadow:0 10px 35px #6f3d2e13,inset 0 1px 0 #fffc; }
.section-heading :is(h1,h2) { font-size:clamp(46px,4.1vw,67px); }
.section-heading .eyebrow { margin-bottom:15px; }
.section-heading>p { text-shadow:0 1px 5px #fff9; }
.filters { background:#fff1dd91; border:1px solid #fff9; border-radius:35px; padding:5px; backdrop-filter:blur(15px); width:max-content; max-width:100%; }
.filter.active { background:linear-gradient(115deg,#75504a,#382725); color:#fff7e9; border-color:#bf946b; }
.gallery-card button { width:100%; background:linear-gradient(130deg,#fff9eed1,#f5d9cba6); padding:10px 10px 15px; border:1px solid #fff8; border-radius:12px; box-shadow:0 14px 40px #4b241e30,inset 0 1px 1px #fffc; backdrop-filter:blur(14px); }
.gallery-photo { border-radius:6px; }
.gallery-meta { padding:18px 5px 0; }
.gallery-card:nth-child(3n+2) { padding-top:45px; }
.gallery-note { background:#fff0ddbd; border:1px solid #fff8; padding:25px; border-radius:4px 35px; backdrop-filter:blur(14px); }
.technique { padding:26px; border:1px solid #fff9; border-radius:3px 30px 3px 3px; background:linear-gradient(135deg,#fff8eac4,#f0c7b97d); backdrop-filter:blur(14px); box-shadow:0 10px 35px #65382c16,inset 0 1px 0 #fffc; }
.technique p { color:#62423b; }
.quality { background:linear-gradient(120deg,#fff7eae0,#f4d1c199); backdrop-filter:blur(20px); border:1px solid #fff; box-shadow:0 18px 55px #5d2f2521,inset 0 1px 0 #fff; border-radius:4px 55px; }
.brand-story { border-color:#9c6c5450; }
.formation-section { padding:42px; background:#fff2dfc4; border:1px solid #fff; border-radius:35px 3px; backdrop-filter:blur(16px); box-shadow:0 18px 50px #5e30251f; }
.promo-copy { padding:35px; border-radius:3px 55px; border:1px solid #fff; background:linear-gradient(120deg,#fff6e9de,#f6d6c886); backdrop-filter:blur(18px); box-shadow:0 14px 50px #67382d25; }
.promotion { overflow:clip; }
.promo-visual { box-shadow:18px 25px 45px #59312b3d; border:4px solid #fff1db9c; transform:rotate(-3deg); }
.last-invitation { display:flex; flex-direction:column; justify-content:center; align-items:center; }
.last-invitation:before { content:''; position:absolute; inset:9% 12%; border:1px solid #fffae8b5; border-radius:50%; background:radial-gradient(ellipse,#fff5e6d6,#ffebd977 60%,#ffecd31a); backdrop-filter:blur(4px); z-index:-1; }
.last-invitation :is(h1,h2) { font-size:clamp(50px,5.8vw,88px); text-shadow:0 2px 15px #fff7e3; }
.last-invitation .invitation-orb { display:none; }
.page-controls { background:linear-gradient(125deg,#fff2dfad,#f3c6b678); box-shadow:0 8px 30px #542c2733,inset 0 1px 1px #fff; border-color:#fff6dc; backdrop-filter:blur(20px); }
.page-controls #page-next { background:linear-gradient(120deg,#79504b,#3a2524); color:#fff7e9; border:1px solid #b88d66; }
footer { position:relative; background:linear-gradient(125deg,#fff2e0bf,#edc8b898); backdrop-filter:blur(20px); border-top:1px solid #fff9; }
.paged-site footer { padding:16px 6% 90px; display:flex; gap:20px; justify-content:space-between; align-items:center; flex-wrap:wrap; }
.paged-site .footer-brand,.paged-site footer>p { display:none; }
.paged-site .footer-links { margin:0; }
@media(min-width:901px) {
 .paged-site footer { position:fixed; z-index:7; bottom:0; left:0; right:0; padding:0 3%; min-height:42px; background:transparent; border:0; backdrop-filter:none; pointer-events:none; }
 .paged-site footer .footer-links,.paged-site footer>small { pointer-events:auto; font-size:9px; }
 .paged-site .footer-links { gap:16px; background:#fff1df9c; border-radius:25px; padding:0 13px; backdrop-filter:blur(12px); }
 .paged-site .footer-links button { font-size:9px; min-height:40px; }
 .paged-site footer>small { background:#fff1df85; border-radius:20px; padding:6px 10px; }
 .paged-site .hero { min-height:calc(100svh - var(--header-height)); }
}
.product-selection { margin-top:65px; }
.product-heading { text-align:center; padding:20px; text-shadow:0 1px 10px #fff7e1; }
.product-heading .eyebrow { margin-bottom:10px; }
.product-heading h3 { font-size:55px; }
.product-heading>p:last-child { margin:16px 0 25px; }
.product-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.product-card { text-align:center; padding:24px 20px 22px; border:1px solid #fffd; border-radius:90px 90px 12px 12px; background:linear-gradient(150deg,#fffaf0ed,#f8e3dbe3); box-shadow:0 15px 40px #63362c21,inset 0 1px 1px white; transition:transform .5s,box-shadow .5s; }
.product-picture { height:220px; display:grid; place-items:center; margin-bottom:20px; }
.product-picture img { max-width:100%; width:230px; height:220px; object-fit:contain; mix-blend-mode:multiply; }
.product-brand { font-size:10px; letter-spacing:.18em; }
.product-card h4 { font-family:var(--serif); font-size:36px; margin-top:9px; }
.product-card p { font-size:11px; color:var(--muted); margin:8px 0 24px; }
.product-link { font-size:11px; display:flex; justify-content:space-between; gap:15px; padding-top:15px; border-top:1px solid var(--line); }
.product-card:hover { transform:translateY(-8px) rotate(-1deg); box-shadow:0 22px 45px #63362c30; }
.cinema-passage { position:fixed; z-index:90; inset:0; pointer-events:none; visibility:hidden; }
.cinema-passage.is-running { visibility:visible; pointer-events:auto; }
.cinema-passage canvas { width:100%; height:100%; display:block; }
.passage-signature { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; opacity:0; gap:15px; transition:opacity .18s; }
.passage-signature img { width:200px; height:auto; filter:drop-shadow(0 3px 10px #fff8); }
.passage-signature span { font-family:var(--serif); font-style:italic; font-size:25px; color:#774a42; }
.cinema-passage[data-phase="covered"] .passage-signature { opacity:1; }
html.cinema-busy { cursor:progress; }
@keyframes cinema-rays { from{transform:rotate(-3deg);opacity:.45}to{transform:rotate(4deg);opacity:1} }
@keyframes cinema-sparkle { 0%,100%{opacity:0;transform:translateY(12px) scale(.3)}30%,65%{opacity:.85}80%{opacity:0;transform:translateY(-35px) scale(1.3)} }
@keyframes product-drift { 0%,100%{translate:0 0;rotate:-3deg}50%{translate:5px -20px;rotate:3deg} }
@media(min-width:1350px) { .hero { padding-inline:12%; } .floating-product { width:250px; height:320px; } .product-pink { left:-30px; } .product-gold { right:-25px; } .product-pot { width:175px; height:175px; } }
@media(max-width:1100px) { .paged-site .section-pad { padding-inline:7%; } .atelier-copy { padding:28px; } .hero { padding-inline:8%; gap:3%; } .hero :is(h1,h2) { font-size:82px; } .jewel-stage { width:200px; height:200px; left:-13%; } .floating-products { opacity:.45; } .product-grid { gap:15px; } }
@media(max-width:900px) { .site-header,.site-header.is-scrolled { background:linear-gradient(120deg,#fff0de9e,#f0c7b76b); } .hero :is(h1,h2) { font-size:70px; } .hero-art { height:480px; } .hero-text .button { gap:14px; } .paged-site .section-pad { padding-top:35px; } .formation-section { padding:28px; } .page-controls { bottom:max(10px,env(safe-area-inset-bottom)); } }
@media(max-width:700px) {
 .cinema-environment { background-image:url('assets/satin-leopard-mobile.webp'); background-position:67% center; }
 .cinema-environment:after { background:linear-gradient(100deg,#fff0dc40,#fff0dc12),radial-gradient(ellipse at 40% 30%,#ffefd530,transparent 65%); }
 .floating-product { width:160px; height:220px; opacity:.75; }
 .product-pink { left:-40px; bottom:13%; }
 .product-gold { right:-40px; top:32%; }
 .product-pot { width:110px; height:110px; bottom:1%; right:-15px; }
 .hero { display:grid; grid-template-columns:1.1fr 1fr; padding:30px 6% 85px; align-items:center; gap:10px; }
 .hero :is(h1,h2) { font-size:clamp(52px,9.5vw,66px); }
 .hero-description { font-size:13px; }
 .hero-art { height:390px; width:100%; margin:0; }
 .hero-signature { font-size:7px; }
 .hero-signature .heart { font-size:23px; }
 .hero .button { padding:13px 15px; font-size:10px; gap:12px; }
 .hero-more { font-size:11px; margin:12px 0 0; }
 .jewel-stage { width:170px; height:170px; top:-15%; left:-13%; }
 .photo-label { padding:10px 15px; left:0; bottom:0; }
 .hero-side-note { right:-5%; font-size:7px; }
 .atelier-copy { border-radius:3px 40px; }
 .atelier-photo { height:390px; }
 .section-heading { padding:22px; }
 .product-picture,.product-picture img { height:180px; }
 .product-card { padding:20px 15px; }
 .product-card h4 { font-size:30px; }
 .product-link { font-size:10px; }
 .quality { padding:28px; }
 .techniques { gap:15px; }
 .technique { padding:22px; }
 .promo-copy { padding:28px; }
 .cinema-light { animation-duration:24s; }
}
@media(max-width:560px) {
 :root { --header-height:132px; }
 .site-header { height:132px; grid-template-rows:56px 50px; padding:8px 4%; row-gap:7px; }
 .site-header .desktop-nav { height:50px; }
 .site-header .desktop-nav>a { font-size:10px; }
 .hero { display:flex; gap:5px; padding:18px 7% 80px; min-height:calc(100svh - var(--header-height)); }
 .hero-text { padding:12px 0 5px; width:100%; }
 .hero-text .eyebrow { margin-bottom:14px; }
 .hero :is(h1,h2) { font-size:clamp(58px,15.8vw,75px); line-height:.95; }
 .hero-description { font-size:13px; line-height:1.7; margin:16px 0 18px; }
 .hero-description br:nth-child(2) { display:none; }
 .hero .button { font-size:11px; padding:12px 19px; gap:20px; }
 .hero-more { display:inline-flex; margin:0 0 0 11px; font-size:10px; }
 .hero-signature { margin-top:15px; font-size:7px; }
 .hero-art { height:330px; width:88%; align-self:center; margin:10px 0 0 20px; }
 .hero-photo { inset:5%; }
 .jewel-stage { width:165px; height:165px; top:-11%; left:-18%; }
 .photo-label { left:-9%; bottom:0; padding:10px 18px; }
 .photo-label strong { font-size:30px; }
 .hero-side-note { right:-10%; }
 .art-orb-one { width:55px; height:55px; }
 .scroll-note { bottom:20px; font-size:9px; }
 .paged-site .section-pad { padding:30px 5% 85px; }
 .atelier { gap:24px; }
 .atelier-image { width:89%; }
 .atelier-photo { height:380px; }
 .atelier-copy { padding:26px; }
 .atelier-copy :is(h1,h2) { font-size:45px; margin-bottom:20px; }
 .atelier-copy p:not(.eyebrow) { font-size:14px; }
 .section-heading { border-radius:3px 35px 3px 3px; padding:22px 20px; }
 .section-heading :is(h1,h2) { font-size:48px; }
 .section-heading>p { font-size:13px; margin-top:16px; }
 .filters { width:100%; max-width:100%; margin-right:0; padding-right:5px; border-radius:24px; }
 .filter { font-size:11px; padding:9px 13px; }
 .gallery { gap:18px 10px; }
 .gallery-card button { padding:6px 6px 12px; border-radius:8px; }
 .gallery-card:nth-child(3n+2) { padding-top:0; }
 .gallery-card:nth-child(even) { padding-top:25px; }
 .gallery-card:first-child .gallery-photo { height:370px; }
 .gallery-photo { height:230px; }
 .gallery-meta { padding:14px 3px 0; }
 .gallery-meta h3 { font-size:26px; }
 .gallery-meta span { font-size:8px; }
 .gallery-card[data-work="french"] { padding-top:8px; }
 .gallery-note { padding:22px 18px; }
 .technique { display:grid; padding:24px 20px; gap:0 12px; }
 .technique h3 { font-size:36px; }
 .technique p { font-size:14px; }
 .tech-tag { font-size:8px; }
 .quality { margin:0; padding:25px 20px; border-radius:3px 35px; }
 .quality h3 { font-size:43px; }
 .product-selection { margin-top:40px; }
 .product-heading { padding:10px 15px; }
 .product-heading h3 { font-size:45px; }
 .product-heading>p:last-child { font-size:13px; }
 .product-grid { grid-template-columns:1fr 1fr; gap:13px; }
 .product-card { border-radius:65px 65px 10px 10px; padding:17px 13px; }
 .product-card:last-child { grid-column:1/-1; display:grid; grid-template-columns:1fr 1fr; column-gap:15px; align-items:center; text-align:left; border-radius:10px 65px 10px 10px; }
 .product-card:last-child .product-picture { grid-column:1; grid-row:1/5; margin:0; }
 .product-card:last-child .product-brand { margin-top:15px; }
 .product-picture,.product-picture img { height:180px; }
 .product-brand { font-size:9px; letter-spacing:.12em; }
 .product-card h4 { font-size:31px; }
 .product-card p { font-size:11px; line-height:1.6; margin-bottom:14px; }
 .product-link { font-size:10px; line-height:1.5; }
 .formation-section { padding:25px 20px; margin-top:35px; }
 .promo-visual { height:380px; width:85%; margin:auto; }
 .promo-stamp { right:-10px; }
 .promotion { gap:45px; }
 .promo-copy { padding:25px 22px; }
 .promo-copy :is(h1,h2) { font-size:49px; }
 .last-invitation { text-align:center; }
 .last-invitation:before { inset:5% 0; border-radius:160px; }
 .last-invitation :is(h1,h2) { font-size:53px; }
 .last-invitation p:not(.eyebrow) { font-size:14px; }
 .paged-site footer { padding:18px 5% 90px; gap:7px; justify-content:center; text-align:center; }
 .footer-links { justify-content:center; gap:6px 18px; }
 .footer-links,.footer-links button { font-size:10px; }
 .passage-signature img { width:170px; }
 .passage-signature span { font-size:22px; }
}
@media(max-width:360px) { .hero :is(h1,h2) { font-size:55px; } .hero-more { display:flex; margin:10px 0 0; } .hero-art { height:300px; } .product-picture,.product-picture img { height:150px; } .product-link { font-size:9px; } }
@media(prefers-reduced-motion:reduce) { html:not(.motion-enabled) .cinema-light,html:not(.motion-enabled) .cinema-stars i,html:not(.motion-enabled) .floating-product { animation:none; } }
.reduced-motion .cinema-light,.reduced-motion .cinema-stars i,.reduced-motion .floating-product,.cinema-away .cinema-light,.cinema-away .cinema-stars i,.cinema-away .floating-product { animation-play-state:paused; }
