/* En-tête et raccourcis communs, chargés sur toutes les pages. */
body #header,
body.home #header,
body.product-page #header {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}
body.home #header.over-hero { color: #fff !important; }
body.home #header.over-hero .brand .brand-logo { filter: brightness(0) invert(1) !important; }

body .orna-contact-shortcuts {
  position: fixed;
  right: max(16px, env(safe-area-inset-right));
  bottom: calc(16px + env(safe-area-inset-bottom));
  z-index: 30;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}
body .orna-contact-shortcuts a {
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 0 0 48px;
  width: 48px;
  height: 48px;
  padding: 0;
  border-radius: 50%;
  color: #fff;
  text-decoration: none;
  box-shadow: 0 5px 18px #0003;
}
body .orna-contact-shortcuts .orna-contact-whatsapp { background: #9c9c9c; border: 1px solid #c4c4c4; }
body .orna-contact-shortcuts .orna-contact-email { background: #181818; border: 1px solid #ffffff45; }
body .orna-contact-shortcuts svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.7;
  stroke-linecap: round;
  stroke-linejoin: round;
}
body .orna-contact-shortcuts .orna-contact-whatsapp svg { width: 30px; height: 30px; }
body .orna-contact-shortcuts span { display: block; }
body:has(dialog[open]) .orna-contact-shortcuts { visibility: hidden; }
@media(hover:hover) {
  body .orna-contact-shortcuts .orna-contact-whatsapp:hover { background: #8f8f8f; }
  body .orna-contact-shortcuts .orna-contact-email:hover { background: #313131; }
}
@media print { body .orna-contact-shortcuts { display: none; } }

/* Reveal the main calls to action without replacing their hover transforms. */
.button-reveal{opacity:0;translate:0 18px;transition:opacity .7s ease,translate .85s cubic-bezier(.22,1,.36,1),background-color .2s ease,color .2s ease,transform .2s ease}
.button-reveal.button-visible{opacity:1;translate:0 0}
.button-reveal:focus-visible{opacity:1;translate:0 0;transition:none}
@media(prefers-reduced-motion:reduce){
 .button-reveal{opacity:1;translate:none;transition:none}
}
@media print{
 .button-reveal{opacity:1;translate:none}
}
/* Match the Poppins families and weights used on Ulyka. */
body,body *{font-family:Poppins,Arial,sans-serif!important}
body{font-weight:400}
body h1{font-weight:500!important;font-style:normal!important;letter-spacing:normal!important}
body h2,body h3,body h4{font-weight:600!important;font-style:normal!important;letter-spacing:normal!important}
#main p{font-weight:300!important}
#main .eyebrow,#main .card-format,#main .rf-subtitle,#main .rf-price,#main .hero-format,#main .perfumers-kicker{font-weight:400!important}
button,input,textarea,select{font-weight:400}
#main .image-reveal{opacity:0;translate:0 20px;transition:opacity .8s ease,translate .95s cubic-bezier(.22,1,.36,1)}
#main .image-reveal.image-visible{opacity:1;translate:0 0}
#main a:focus-visible .image-reveal{opacity:1;translate:0 0;transition:none}
@media(prefers-reduced-motion:reduce){
 #main .image-reveal{opacity:1;translate:none;transition:none}
}
@media print{
 #main .image-reveal{opacity:1;translate:none}
}
/* Neutral Maison ORNA interface palette. */
body{--ink:#292929!important;--red:#292929!important;--gold:#727272!important;--line:#d8d5d0!important;--rf-wine:#292929!important;--rf-text:#555!important;--rf-gold:#727272!important;--rf-line:#d8d5d0!important;--glass-ink:#292929!important;--glass-depth:rgba(0,0,0,.12)!important;color:#292929!important}
body :is(h1,h2,h3,h4,h5,h6,p,a,button,label,summary,li,output,.rf-price,.quote){color:#292929!important}
body :is(.header-home,.icon){--glass-ink:#292929!important;--glass-depth:rgba(0,0,0,.12)!important;text-shadow:none!important}
body :is(.button:not(.outline),.rf-add){background:#292929!important;border-color:#292929!important;color:#fff!important;text-shadow:none!important;box-shadow:none!important}
body :is(.button:not(.outline),.rf-add):hover{background:#454545!important;border-color:#454545!important}
body :is(.button.outline,.home-return,.rf-favorite){background:transparent!important;border-color:#aaa!important;color:#292929!important;text-shadow:none!important}
body .home-return:hover{background:#e4e1dc!important}
body :is(.product-discover,.rf-services a,.rf-details summary){border-color:#d8d5d0!important}
body .rf-services svg{color:#727272!important}
body :is(.rf-thumbs button,.thumb).active,body .rf-thumbs button[aria-pressed=true]{border-color:#727272!important;box-shadow:none!important}
body :is(.quantity,.rf-favorite,.field){border-color:#d8d5d0!important}
body :focus-visible{outline-color:#727272!important}
body #main :is(.hero-product,.rf-story) :is(h1,h2,p,a){color:#fff!important}
body #header.over-hero .header-left a{color:#fff!important}
body .orna-contact-shortcuts a{color:#fff!important}
body .orna-contact-shortcuts .orna-contact-email{background:#292929!important}
body .orna-contact-shortcuts .orna-contact-email:hover{background:#454545!important}
/* Complete neutral palette: ivory surfaces, charcoal controls, soft grey details. */
body{--paper:#f5f1eb!important;--rf-paper:#f5f1eb!important;background:#f5f1eb!important}
body :is(#footer,#drawer,.notes,.home-perfumers,.contact-invitation,.rf-inspiration){background:#f5f1eb!important;color:#292929!important}
body :is(input.field,textarea.field,select.field){background:#faf8f4!important;color:#292929!important;box-shadow:inset 0 1px 4px #00000008!important}
body :is(.portrait,.rf-thumbs button){background:#e7e3dd!important}
body #header :is(.header-home,.icon){--glass-fill:rgba(250,248,244,.72)!important;--glass-ink:#292929!important;--glass-depth:rgba(0,0,0,.10)!important;background:linear-gradient(155deg,#ffffffbb,#ffffff22),var(--glass-fill)!important;box-shadow:inset 0 1px 0 #fff,0 3px 0 #00000012,0 8px 18px #00000012!important;color:#292929!important}
body #main .hero-product .button{background:#f5f1eb!important;border-color:#f5f1eb!important;color:#292929!important;backdrop-filter:none!important;text-shadow:none!important}
body #main .hero-product .button:hover{background:#e7e3dd!important;border-color:#e7e3dd!important}
body #main .hero-product .button::before{display:none!important}
body .orna-contact-shortcuts :is(.orna-contact-whatsapp,.orna-contact-email){background:#292929!important;border-color:#ffffff45!important;color:#fff!important}
body .orna-contact-shortcuts a:hover{background:#454545!important;border-color:#aaa!important}
body .orna-contact-shortcuts span{background:#292929!important;color:#fff!important}
body .orna-contact-shortcuts span::after{border-left-color:#292929!important}
body #toast{background:#292929!important;color:#fff!important}
body #footer :is(a,p,span,small){color:#292929!important}
body #footer .brand-logo{filter:none!important}
body :is(.footer-meta,.footer-bottom,.perfumers-closing,.product-availability){border-color:#d8d5d0!important}

/* Contact shortcuts: WhatsApp signature and frosted glass email. */
body .orna-contact-shortcuts .orna-contact-whatsapp{background:#25d366!important;border:1px solid #ffffff66!important;color:#fff!important;box-shadow:inset 0 1px 0 #ffffff66,0 5px 18px #00000026!important}
body .orna-contact-shortcuts .orna-contact-whatsapp:hover{background:#1ebe5b!important;border-color:#ffffff99!important}
body .orna-contact-shortcuts .orna-contact-email{isolation:isolate;overflow:visible;background:linear-gradient(145deg,#ffffffaa,#ffffff30 48%,#ffffff70)!important;border:1px solid #ffffffb3!important;color:#292929!important;backdrop-filter:blur(18px) saturate(160%);-webkit-backdrop-filter:blur(18px) saturate(160%);box-shadow:inset 0 1px 0 #ffffffed,inset 0 -2px 4px #ffffff80,0 4px 14px #00000020!important}
body .orna-contact-shortcuts .orna-contact-email::before{content:'';position:absolute;inset:3px;border-radius:inherit;border:1px solid #ffffff60;border-bottom-color:#ffffffa6;pointer-events:none}
body .orna-contact-shortcuts .orna-contact-email::after{content:'';position:absolute;inset:3px 7px 55%;border-radius:50%;background:linear-gradient(180deg,#ffffffad,#ffffff00);pointer-events:none}
body .orna-contact-shortcuts .orna-contact-email svg{position:relative;z-index:1;filter:drop-shadow(0 1px 0 #ffffffa6)}
body .orna-contact-shortcuts .orna-contact-email:hover{background:linear-gradient(145deg,#ffffffcc,#ffffff50 48%,#ffffff90)!important;border-color:#ffffffed!important;box-shadow:inset 0 1px 0 #fff,inset 0 -2px 5px #ffffffa6,0 8px 22px #00000026!important}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){body .orna-contact-shortcuts .orna-contact-email{background:#f5f1ebed!important}}


/* Gold accents for the hero and home navigation buttons. */
body #main .hero-product .button,
body :is(.home-return,.header-home){background:linear-gradient(135deg,#f0d995 0%,#caa54e 48%,#e7ca7b 100%)!important;border:1px solid #c6a254!important;color:#302718!important;text-shadow:0 1px 0 #ffffff44!important;box-shadow:inset 0 1px 0 #fff3ccaa,0 3px 10px #49371018!important;backdrop-filter:none!important;-webkit-backdrop-filter:none!important}
body #header .header-home{--glass-fill:#d8b65f!important;--glass-ink:#302718!important;background:linear-gradient(135deg,#f0d995 0%,#caa54e 48%,#e7ca7b 100%)!important;color:#302718!important;border-color:#c6a254!important;box-shadow:inset 0 1px 0 #fff3ccaa,0 3px 10px #49371018!important}
body #main .hero-product .button:hover,
body :is(.home-return,.header-home):hover{background:linear-gradient(135deg,#f5e1aa 0%,#d4b15e 48%,#edd38b 100%)!important;border-color:#b48e3c!important;color:#302718!important}
body #header .header-home:hover{background:linear-gradient(135deg,#f5e1aa 0%,#d4b15e 48%,#edd38b 100%)!important}
body :is(.home-return,.header-home):focus-visible,body #main .hero-product .button:focus-visible{outline-color:#a48035!important}

body #main .home-return{background:linear-gradient(135deg,#f0d995 0%,#caa54e 48%,#e7ca7b 100%)!important;border-color:#c6a254!important;color:#302718!important}
body #main .home-return:hover{background:linear-gradient(135deg,#f5e1aa 0%,#d4b15e 48%,#edd38b 100%)!important;border-color:#b48e3c!important;color:#302718!important}

/* Preserve bottle proportions and give each photograph its own focal point. */
body.home #main .story-catalog .picture{aspect-ratio:1;height:auto;min-height:0}
body.home #main .story-catalog .picture>a{display:block;width:100%;height:100%}
body.home #main .story-catalog .picture img{width:100%;height:100%;object-fit:cover;object-position:center;transform:none}
body.home #main .composition-reference .composition-photo,body.home #main .composition-reference .composition-photo img{aspect-ratio:1;min-height:0}
body.home #main .composition-reference .composition-photo img{object-fit:cover;object-position:50% 50%}
body.home #main .home-story>img{width:100%;height:auto;aspect-ratio:1;object-fit:cover;object-position:center;align-self:center}
body #main .history-mosaic .history-photo-first img{object-position:48% 50%}
body #main .history-mosaic .history-photo-second img{object-position:49% 50%}
body #main .history-mosaic .history-photo-detail{aspect-ratio:4/3}
body #main .history-mosaic .history-photo-detail img{object-position:50% 18%;object-fit:cover}
body.product-page #main .rf-stage{aspect-ratio:1;min-height:0}
body.product-page #main .rf-stage .gallery-main{object-fit:cover;object-position:center;width:100%;height:100%;padding:0}
body.product-page #main .rf-thumbs .thumb{aspect-ratio:1}
body.product-page #main .rf-thumbs .thumb img{object-fit:cover;object-position:center}
@media(max-width:749px){body.home #main .story-catalog .picture{aspect-ratio:1}body #main .history-mosaic .history-photo-detail{width:86%}}

/* Remove excess headroom above the third history photograph. */
body #main .history-mosaic .history-photo-detail img{object-position:50% 40%}

/* Spread the history photographs over the full height of the brand story. */
@media(min-width:750px){
 body #main .history-mosaic{align-self:stretch;grid-template-rows:1fr auto;row-gap:clamp(64px,6vw,96px)}
 body #main .history-mosaic .history-photo-detail{margin-top:0}
}
@media(max-width:749px){
 body #main .history-mosaic{row-gap:48px;column-gap:22px}
 body #main .history-mosaic .history-photo-detail{margin-top:0}
}


body.home #main .hero-product > .eyebrow{font-family:Georgia,"Times New Roman",serif!important;font-weight:400;letter-spacing:.14em}
body #header .header-home{font-family:Calibri,Carlito,"Segoe UI",Arial,sans-serif!important;font-weight:400;letter-spacing:.02em}


@media(min-width:750px){
 body.home #main .home-catalog .product-card > h3,body.home #main .home-catalog .product-card > p{display:none}
 body.home #main .home-catalog .product-card > .product-discover{display:table;width:fit-content;margin:22px auto 0;text-align:center}
}


body #header,body.home #header.over-hero,body.home #header.is-compact,body.home #header.over-hero.is-compact,body.product-page #header.is-compact{background:transparent!important;background-color:transparent!important;background-image:none!important;border:0!important;box-shadow:none!important;backdrop-filter:none!important}


/* Subtle, one-time content appearances. */
#main .orna-reveal{opacity:0;translate:0 12px;transition:opacity .65s cubic-bezier(.22,1,.36,1) var(--orna-delay,0ms),translate .75s cubic-bezier(.22,1,.36,1) var(--orna-delay,0ms)}
#main .orna-reveal.orna-visible{opacity:1;translate:0 0}
#main .orna-reveal:not(.orna-visible){will-change:opacity,translate}
#main .orna-reveal:focus-visible,#main a:focus-visible .orna-reveal{opacity:1;translate:0 0;transition:none}
body.home #main .home-story>.home-story-image{display:block;width:100%;aspect-ratio:1;align-self:center;overflow:hidden}
body.home #main .home-story>.home-story-image img{display:block;width:100%;height:100%;aspect-ratio:1;object-fit:cover;object-position:center}
@media(prefers-reduced-motion:reduce){#main .orna-reveal{opacity:1!important;translate:none!important;transition:none!important;will-change:auto}}
@media print{#main .orna-reveal{opacity:1!important;translate:none!important}}


body.home #main .home-story .copy>.button{display:inline-flex;align-items:center;justify-content:center;align-self:flex-start;min-height:50px;width:auto;max-width:100%;padding:14px 30px;border:1px solid #c6a254!important;background:linear-gradient(135deg,#f0d995 0%,#caa54e 48%,#e7ca7b 100%)!important;color:#302718!important;font-size:13px;font-weight:500;line-height:1.4;letter-spacing:.08em;text-decoration:none;white-space:nowrap;box-shadow:inset 0 1px 0 #fff3ccaa,0 3px 10px #49371018}
body.home #main .home-story .copy>.button:hover{background:linear-gradient(135deg,#f5e1aa 0%,#d4b15e 48%,#edd38b 100%)!important}
body.home #main .home-story .copy>.button:focus-visible{outline:2px solid #493710;outline-offset:4px}


#main .orna-watermark::before{content:none}
@media(max-width:749px){
 #main .home-perfumers .perfumers-closing.orna-watermark{position:relative;isolation:isolate}
 #main .home-perfumers .perfumers-closing.orna-watermark::before{--orna-emblem-width:min(280px,70vw);content:"";position:absolute;z-index:-1;top:50%;left:50%;width:var(--orna-emblem-width);height:calc(var(--orna-emblem-width)*.75);pointer-events:none;background:#2d211d;opacity:.14;-webkit-mask:url("/assets/orna-logo-transparent.png") 50% calc(var(--orna-emblem-width)*-.198)/var(--orna-emblem-width) auto no-repeat;mask:url("/assets/orna-logo-transparent.png") 50% calc(var(--orna-emblem-width)*-.198)/var(--orna-emblem-width) auto no-repeat;transform:translate(calc(-50% + var(--orna-watermark-x,0px)),-50%);will-change:transform}
}
@media(prefers-reduced-motion:reduce){#main .home-perfumers .perfumers-closing.orna-watermark::before{transform:translate(-50%,-50%);will-change:auto}}

/* === Footer ORNA (lisible) === */
#footer .ofoot{max-width:1120px;margin:0 auto;padding:56px 24px 28px;color:#2b2622}
#footer .ofoot-grid{display:grid;grid-template-columns:1.2fr 1fr 1.3fr;gap:48px;align-items:start}
#footer .ofoot-brand .brand-logo{width:72px;height:auto;display:block}
#footer .ofoot-brand p{margin:16px 0 0;font-size:14px;line-height:1.6;color:#6b625a;max-width:240px}
#footer .ofoot-col h2{font-family:"Cormorant Garamond",Georgia,"Times New Roman",serif;font-style:italic;font-weight:500;font-size:26px;letter-spacing:.01em;margin:0 0 18px;color:#1f1b18}
#footer .ofoot-col nav{display:flex;flex-direction:column;gap:12px;align-items:flex-start}
#footer .ofoot-col a{font-size:15px;line-height:1.4;color:#3a332e;text-decoration:none;position:relative;padding:2px 0;transition:color .2s ease}
#footer .ofoot-col a::after{content:"";position:absolute;left:0;bottom:-2px;width:100%;height:1px;background:#b08d57;transform:scaleX(0);transform-origin:left;transition:transform .25s ease}
#footer .ofoot-col a:hover,#footer .ofoot-col a:focus-visible{color:#8a6a3b}
#footer .ofoot-col a:hover::after,#footer .ofoot-col a:focus-visible::after{transform:scaleX(1)}
#footer .ofoot a:focus-visible{outline:2px solid #b08d57;outline-offset:4px;border-radius:2px}
#footer .ofoot-bottom{margin-top:44px;padding-top:20px;border-top:1px solid rgba(43,38,34,.15);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:13px;color:#6b625a}
#footer .ofoot-bottom a{color:#6b625a;text-decoration:none}
#footer .ofoot-bottom a:hover{color:#8a6a3b}
@media (max-width:760px){
#footer .ofoot{padding:44px 20px 24px;text-align:center}
#footer .ofoot-grid{grid-template-columns:1fr;gap:36px}
#footer .ofoot-brand .brand-logo{margin:0 auto}
#footer .ofoot-brand p{margin:12px auto 0}
#footer .ofoot-col nav{align-items:center;gap:14px}
#footer .ofoot-col a{font-size:16px;padding:4px 0}
#footer .ofoot-bottom{justify-content:center;flex-direction:column;align-items:center}
}

/* === Pages Informations === */
.legal-page{max-width:720px;margin:0 auto}
.legal-page .lead{font-size:17px;line-height:1.7;color:#3a332e;margin-bottom:28px}
.legal-page h2{font-size:20px;font-weight:500;margin:34px 0 10px;padding-top:22px;border-top:1px solid rgba(43,38,34,.12);color:#1f1b18}
.legal-page p{font-size:15px;line-height:1.75;color:#4a423b;margin:0 0 12px}
.legal-page a{color:#8a6a3b;text-decoration:underline;text-underline-offset:3px}
.legal-page strong{color:#1f1b18;font-weight:600}
.legal-page .button,.legal-page .btn{margin-top:28px}
