* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: #f3efe8; color: #191612; -webkit-font-smoothing: antialiased; overflow-x: hidden; }
body.menu-open { overflow: hidden; }
a { color: inherit; text-decoration: none; }
img { display: block; width: 100%; height: 100%; object-fit: cover; }
button,input,textarea { font: inherit; }
button { cursor: pointer; }
:root { --bg: #f3efe8; --cream: #eee5d8; --ink: #191612; --olive: #697263; --olive-deep: #5f6859; --sand: #d9cab5; --charcoal: #171614; --line: #dacfbf; --gold: #b18d57; --light: #faf6ef; --muted: #6e665b; --ease: cubic-bezier(.22,1,.36,1); }
::selection { background: #191612; color: #E6D9C6; }
.page-grain { position: fixed; inset: 0; pointer-events: none; z-index: 3; opacity: .018; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 160 160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)'/%3E%3C/svg%3E"); mix-blend-mode: multiply; }
.site-header { position: fixed; top: 0; left: 0; right: 0; z-index: 90; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; padding: 22px 4vw; }
.inner-page .site-header { color: #191612; border-bottom: 1px solid rgba(218,207,191,.8); }
.brand { font-size: 11px; text-transform: uppercase; }
.main-nav { display: flex; gap: 26px; justify-content: center; }
.main-nav a,.header-cta,.text-link { position: relative; }
.main-nav a::after,.header-cta::after,.text-link::after { content: ""; position: absolute; left: 0; right: 100%; bottom: -7px; height: 1px; background: currentColor; transition: right .5s var(--ease); }
.main-nav a:hover::after,.main-nav a.active::after,.header-cta:hover::after,.text-link:hover::after { right: 0; }
.header-cta { justify-self: end; }
.menu-toggle { display: none; background: none; border: 0; width: 40px; height: 40px; padding: 8px; color: inherit; }
.menu-toggle span { display: block; height: 1px; background: currentColor; margin: 6px 0; transition: transform .35s var(--ease); }
.mobile-menu { display: none; }
.button:hover { transform: translateY(-1px); }
.button-dark:hover { background: #191612; color: #E6D9C6; }
.button-light:hover { background: #faf6ef; color: #191612; }
.panel-kicker,.eyebrow { color: var(--gold); }
.section { padding: 110px 7vw; }
.organic-panel h2,.carousel-heading h2,.clients-intro h2,.tasting-panel h2,.page-hero h1,.story-step h2,.choice-card h2,.pickup-card h2,.manifesto-copy h2 { font-feature-settings: "liga" 1; }
.organic-panel h2,.carousel-heading h2,.clients-intro h2,.tasting-panel h2,.page-hero h1,.story-step h2,.choice-card h2,.pickup-card h2 { font: 500 clamp(42px,5vw,82px)/.9 "Cormorant Garamond",serif; }
.carousel-arrow:hover { background: #fff; color: #161513; transform: translateY(-1px); }
.clients-scroll::-webkit-scrollbar { width: 6px; }
.clients-scroll::-webkit-scrollbar-track { background: transparent; }
.clients-scroll::-webkit-scrollbar-thumb { background: rgba(177,141,87,.45); }
.tasting-form button:hover,.contact-form button:hover { background: #191612; color: #E6D9C6; transform: translateY(-1px); }
.page-hero { display: flex; background: linear-gradient(180deg,#f3efe8 0%,#efe7dc 100%); }
.page-hero h1 { margin: 16px 0 0; }
.page-hero-copy { max-width: 920px; }
.site-footer strong,.site-footer span,.site-footer a { display: block; margin-bottom: 10px; }
@media (prefers-reduced-motion:reduce) {
  *,*:before,*:after { animation-duration: .01ms !important; transition-duration: .01ms !important; scroll-behavior: auto !important; }
}
@media (max-width:980px) {
  .site-header { display: flex; justify-content: space-between; align-items: center; padding: 18px 5vw; }
  .main-nav,.header-cta { display: none; }
  .menu-toggle { display: block; }
  .menu-toggle.open span:first-child { transform: translateY(3.5px) rotate(45deg); }
  .menu-toggle.open span:last-child { transform: translateY(-3.5px) rotate(-45deg); }
  .mobile-menu { display: block; position: fixed; inset: 0; background: rgba(18,15,12,.98); color: #E6D9C6; z-index: 85; opacity: 0; visibility: hidden; transition: opacity .32s ease,visibility .32s ease; }
  .mobile-menu.open { opacity: 1; visibility: visible; }
  .mobile-menu-inner { height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 0 9vw; gap: 16px; }
  .mobile-menu a { font: 500 42px/1 "Cormorant Garamond",serif; }
  .organic-section,.belgium-section-alt,.luxe-carousel,.clients-section,.tasting-final,.section,.story-steps,.contact-layout,.particulars-layout { padding-left: 7vw; padding-right: 7vw; }
}
.site-footer { gap: 22px; }
.site-footer a:hover { color: #E6D9C6; }
.carousel-arrow.subtle:hover { background: transparent; color: #E6D9C6; transform: translateY(-1px); }
.carousel-arrow.prev.subtle span::before { content: "←"; font-size: 14px; line-height: 1; }
.carousel-arrow.next.subtle span::after { content: "→"; font-size: 14px; line-height: 1; }
.carousel-arrow.subtle:hover { background: rgba(16,14,12,.44); border-color: rgba(255,248,239,.44); transform: translateY(-50%) scale(1.02); }
.carousel-arrow.prev.subtle::before,.carousel-arrow.next.subtle::before { font-size: 18px; line-height: 1; }
.carousel-arrow.prev.subtle::before { content: "←"; }
.carousel-arrow.next.subtle::before { content: "→"; }
.tasting-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(23,21,19,.06) 0%,rgba(23,21,19,.04) 34%,rgba(23,21,19,.16) 56%,rgba(23,21,19,.46) 78%,rgba(23,21,19,.58) 100%); }
.belgium-editorial-image::before { content: ""; position: absolute; inset: -34px 12% auto -12%; height: 62%; background: linear-gradient(180deg,#ece3d7 0%,#e8decf 100%); z-index: -1; }
.carousel-arrow.subtle:hover { background: rgba(255,248,239,.08); border-color: rgba(218,188,142,.72); color: #f3e6cf; transform: translateY(-1px); }
.carousel-arrow.prev.subtle::before,.carousel-arrow.next.subtle::before { font-size: 13px; font-weight: 400; }
.tasting-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(23,21,19,.06) 0%,rgba(23,21,19,.08) 44%,rgba(23,21,19,.20) 62%,rgba(23,21,19,.42) 78%,rgba(23,21,19,.54) 100%); }
.belgium-stage-editorial::before { content: ""; position: absolute; left: 28%; right: 10%; top: 7%; bottom: 7%; background: linear-gradient(180deg,#ece3d7 0%,#e8ded0 100%); z-index: 0; }
.carousel-arrow.subtle:hover { background: transparent; color: #E6D9C6; border-color: rgba(255,255,255,.56); transform: none; }
.carousel-arrow.prev.subtle::before,.carousel-arrow.next.subtle::before { content: none; }
.carousel-arrow.prev.subtle span::before { content: "←"; font-size: 12px; line-height: 1; }
.carousel-arrow.next.subtle span::after { content: "→"; font-size: 12px; line-height: 1; }
.tasting-image::before { content: ""; position: absolute; inset: -2px 0 auto 0; height: 96px; background: linear-gradient(180deg,#e8dece 0%,rgba(232,222,206,0) 100%); z-index: 1; }
.tasting-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(23,21,19,.04) 0%,rgba(23,21,19,.06) 42%,rgba(23,21,19,.16) 58%,rgba(23,21,19,.34) 72%,rgba(23,21,19,.5) 100%); }
@media (max-width:1180px) {
  .belgium-stage-editorial::before { left: 0; right: 0; top: 18%; bottom: 8%; }
}
@media (max-width:980px) {
  .belgium-stage-editorial::before { display: none; }
  .tasting-image::before { display: none; }
}
.belgium-composition::before { content: ""; position: absolute; left: 0; right: 31%; top: 120px; bottom: 54px; background: #565f52; z-index: 0; }
.belgium-composition::after { content: ""; position: absolute; left: 7%; top: 62px; width: 210px; height: 1px; background: rgba(255,248,239,.36); box-shadow: 0 20px 0 rgba(255,248,239,.12), 0 40px 0 rgba(255,248,239,.08); }
.belgium-aside-panel .text-link:hover { border-bottom-color: #fff3df; }
.carousel-arrow.prev.subtle span::before,.carousel-arrow.next.subtle span::after { font-size: 14px; }
.tasting-image::before { content: none; }
.tasting-image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg,rgba(23,21,19,.05) 0%,rgba(23,21,19,.07) 45%,rgba(23,21,19,.18) 60%,rgba(23,21,19,.32) 74%,rgba(23,21,19,.42) 100%); }
.site-footer { margin-top: 0; }
@media (max-width:1180px) {
  .belgium-composition::before { left: 0; right: 0; top: 160px; bottom: 0; }
}
@media (max-width:980px) {
  .belgium-composition::before,.belgium-composition::after { display: none; }
}
.tasting-image::before,.tasting-image::after { content: none; }
.tasting-form input::placeholder,
.tasting-form textarea::placeholder { color: rgba(245,236,223,.34); }
.tasting-form button:hover { background: #f6efe3; color: #11110f; }
.belgium-editorial::before,
.belgium-editorial::after { content: ""; position: absolute; left: 0; right: 0; height: 1px; background: rgba(109,98,82,.14); pointer-events: none; }
.belgium-editorial::before { top: -10px; width: 38%; right: auto; }
.belgium-editorial::after { top: calc(50% + 34px); width: 34%; left: auto; }
.carousel-arrow.prev.subtle span::before,
.carousel-arrow.next.subtle span::after { font-size: 15px; }
.tasting-image::before,.tasting-image::after { content: none; }
.tasting-form input::placeholder,.tasting-form textarea::placeholder { color: rgba(245,236,223,.34); }
.tasting-form button:hover { background: #f6efe3; color: #11110f; }
@media (max-width:1180px) {
  .belgium-editorial::before { width: 44%; }
  .belgium-editorial::after { top: auto; bottom: 78px; width: 40%; }
}
@media (max-width:980px) {
  .belgium-editorial::before,.belgium-editorial::after { display: none; }
}
.reveal,.reveal-soft { transition: opacity 1.45s var(--ease),transform 1.45s var(--ease),filter 1.3s ease; }
.reveal.visible,.reveal-soft.visible,.reveal-line.visible { opacity: 1; transform: none; filter: blur(0); }
.reveal-image-soft,.image-reveal { position: relative; overflow: hidden; transition: opacity .01s; }
.reveal-image-soft.visible,.image-reveal.visible { opacity: 1; }
.reveal-image-soft::after,.image-reveal::after { content: ""; position: absolute; inset: 0; background: var(--bg); z-index: 2; transform-origin: right; transition: transform 1.8s var(--ease); }
.reveal-image-soft.visible::after,.image-reveal.visible::after { transform: scaleX(0); }
.reveal-image-soft img,.image-reveal img { transition: transform 2.3s var(--ease),filter 1.8s var(--ease); }
.reveal-image-soft.visible img,.image-reveal.visible img { transform: scale(1); filter: blur(0); }
.contact-image::after { background: #f2ede4; }
.carousel-controls-inline .carousel-arrow:hover { background: transparent; color: #E6D9C6; transform: none; opacity: .76; }
.contact-editorial-grid { display: grid; grid-template-columns: .88fr 1.12fr; gap: 34px; align-items: center; max-width: 1640px; margin: 0 auto; }
.contact-editorial-copy p { margin: 0; }
.contact-lux-meta { display: grid; gap: 16px; margin-top: 28px; }
.contact-lux-meta div { display: grid; gap: 8px; padding-top: 14px; border-top: 1px solid rgba(245,236,223,.14); }
.contact-editorial-image { margin: 0; background: #ddd2c2; box-shadow: 0 26px 60px rgba(17,13,10,.08); }
@media (max-width:1180px) {
  .contact-editorial-grid,.contact-luxe-grid { grid-template-columns: 1fr; }
}
.home-page .hero-fullscreen::after { content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 1; background: linear-gradient(90deg,#eee5d8 0%,#eee5d8 17%,rgba(238,229,216,.96) 28%,rgba(238,229,216,.56) 43%,transparent 65%); }
@media (max-width:900px) {
  .home-page .hero-fullscreen::after { background: linear-gradient(90deg,#eee5d8 0%,rgba(238,229,216,.94) 27%,rgba(238,229,216,.35) 67%,transparent); }
}
@media (max-width:600px) {
  .home-page .hero-fullscreen::after { background: linear-gradient(180deg,rgba(238,229,216,.96) 0%,rgba(238,229,216,.90) 29%,rgba(238,229,216,.08) 64%,transparent 100%); }
}
.home-page .hero-fullscreen::after { content: none !important; display: none !important; }
.home-page .hero-copy-zone::before { content: ""; position: absolute; z-index: -1; pointer-events: none; left: 3vw; top: clamp(105px,15vh,170px); width: min(47vw,650px); height: clamp(180px,26vh,290px); background: rgba(32,25,22,.28); border-radius: 22px; -webkit-mask-image: radial-gradient(ellipse at 45% 45%,#000 22%,transparent 74%); mask-image: radial-gradient(ellipse at 45% 45%,#000 22%,transparent 74%); }
@media (max-width:900px) {
  .home-page .hero-copy-zone::before { left: 2vw; width: min(78vw,600px); top: 100px; }
}
@media (max-width:600px) {
  .home-page .hero-copy-zone::before { left: 0; width: 100%; height: 230px; top: 80px; background: rgba(32,25,22,.34); }
}
.home-page .hero-fullscreen::after,.home-page .hero-copy-zone::before { content: none !important; display: none !important; background: none !important; }
.home-page .ingredients-section::after,.home-page .belgium-section-editorial::before { border: 0 !important; background: none !important; box-shadow: none !important; content: none !important; }
.home-page .belgium-section-editorial .belgium-editorial::before,.home-page .belgium-section-editorial .belgium-editorial::after { content: none !important; display: none !important; background: none !important; border: 0 !important; }
.inner-page .contact-editorial-copy .panel-kicker { font-size: 12px !important; font-style: normal; }
.contact-lux-meta a[href^="tel:"], .site-footer a[href^="tel:"] { font-variant-numeric: tabular-nums lining-nums !important; font-feature-settings: "tnum" 1,"lnum" 1 !important; letter-spacing: 0 !important; white-space: nowrap; }
.site-header .brand { display: inline-flex; align-items: center; justify-content: flex-start; min-width: 0; line-height: 1; text-decoration: none; }
.site-header .brand .brand-logo { display: block; object-fit: contain; object-position: left center; }
html body, html body *, html body *::before, html body *::after { font-family: "Libre Baskerville",Georgia,serif !important; }
html body,html body *,html body *::before,html body *::after { font-family: "Nunito",Arial,sans-serif !important; }
html body,html body *,html body *::before,html body *::after { font-family: "Outfit",Arial,sans-serif !important; }
html body,html body *,html body *::before,html body *::after { font-family: "Newsreader",Georgia,"Times New Roman",serif !important; }
.home-page .site-header,.home-page .site-header a,.home-page .site-header button,.site-footer,.site-footer *, .luxe-carousel,.luxe-carousel *, .belgium-aside-panel,.belgium-aside-panel * { color: #E6D9C6 !important; }
html body,html body * { font-family: "Newsreader",Georgia,"Times New Roman",serif !important; }
html body h1,html body h2,html body h3,html body h4,html body h5,html body h6,
html body p,html body a,html body button,html body label,html body li,html body blockquote { font-weight: 400 !important; letter-spacing: .018em !important; }
body.home-page header.site-header::before,
body.home-page header.site-header::after { content: none !important; display: none !important; }
body.home-page .hero-tasting-link:hover { opacity: .65; }
body.home-page .hero-tasting-link:focus-visible { outline: 2px solid #35291f; outline-offset: 5px; }
:root { --soft-ivory: #E6D9C6; }
body.home-page .site-footer a:hover { opacity: .72 !important; }
body.home-page .site-footer > div:first-child::before { content: ""; position: absolute; left: 0; top: -7px; width: 190px; aspect-ratio: 1997/788; background-color: #E6D9C6 !important; -webkit-mask: url('assets/logo-hifalafel-officiel.png') center/contain no-repeat; mask: url('assets/logo-hifalafel-officiel.png') center/contain no-repeat; pointer-events: none; }
@media (max-width:480px) {
  body.home-page .site-footer > div:first-child::before { width: 160px; }
}
body.home-page .site-footer > div:first-child::before { content: none !important; display: none !important; }
body .site-header,
body .site-header.scrolled,
body .site-header:not(.scrolled) { background-image: none !important; }
body .site-header::before,body .site-header::after { content: none !important; display: none !important; }
body .site-header .main-nav a,body .site-header .header-cta { color: #35291F !important; -webkit-text-fill-color: #35291F !important; font-family: "Newsreader",Georgia,serif !important; font-size: clamp(14px,1.15vw,18px) !important; font-weight: 400 !important; letter-spacing: .025em !important; text-shadow: none !important; }
body .site-header .brand .brand-logo { filter: none !important; }
body .site-footer { border-top: 1px solid rgba(230,217,198,.22) !important; display: grid !important; grid-template-columns: 1.15fr .85fr 1.25fr 1fr !important; align-items: start !important; column-gap: clamp(24px,4vw,80px) !important; row-gap: 24px !important; padding: clamp(38px,5vw,70px) 4vw !important; }
body .site-footer > div { min-width: 0; display: flex !important; flex-direction: column !important; align-items: flex-start !important; gap: 13px !important; }
body .site-footer a,body .site-footer span { font-family: "Newsreader",Georgia,serif !important; font-size: clamp(14px,1.12vw,17px) !important; font-weight: 400 !important; letter-spacing: .025em !important; line-height: 1.3 !important; text-transform: none !important; margin: 0 !important; overflow-wrap: anywhere; }
body .site-footer > div:first-child { position: relative !important; align-self: start !important; }
body .site-footer > div:first-child::before { content: none !important; display: none !important; }
body .site-footer .footer-brand-logo { opacity: 1 !important; visibility: visible !important; display: block !important; width: 190px !important; max-width: 100% !important; height: auto !important; margin: -23px 0 24px !important; object-fit: contain !important; }
@media (max-width:900px) {
  body .site-footer { grid-template-columns: repeat(2,minmax(0,1fr)) !important; column-gap: 28px !important; }
}
@media (max-width:520px) {
  body .site-footer { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 30px 16px !important; padding: 36px 5vw 45px !important; }
  body .site-footer a,body .site-footer span { font-size: 14px !important; }
  body .site-footer .footer-brand-logo { width: 160px !important; }
}
:root { --hf-font: "Newsreader",Georgia,"Times New Roman",serif; --hf-heading: clamp(29px,3.2vw,49px); --hf-body: clamp(14px,1.1vw,17px); }
body,body p,body a,body span,body li,body label,body input,body textarea,body button { font-family: var(--hf-font) !important; font-weight: 400; }
body.inner-page .story-v24 h1,body.inner-page .story-v24 h2,
body.inner-page .page-hero h1,body.inner-page .contact-editorial-copy h2,
body.inner-page .tasting-request-intro h2,body.inner-page .legal-main h1,
body.inner-page .legal-main h2 { font-family: var(--hf-font) !important; font-size: var(--hf-heading) !important; font-weight: 400 !important; font-style: normal !important; line-height: 1.13 !important; letter-spacing: .025em !important; text-transform: none !important; }
body.inner-page .story-section-heading,body.inner-page .story-label,
body.inner-page .story-small,body.inner-page .story-opening-sub,
body.inner-page .eyebrow,body.inner-page .panel-kicker,
body.inner-page .aside-title,body.inner-page .tasting-request-intro .kicker,
body.inner-page .legal-kicker { letter-spacing: .025em !important; text-transform: none !important; }
body.inner-page main p:not(.story-section-heading):not(.story-label):not(.story-small):not(.story-opening-sub):not(.eyebrow):not(.panel-kicker):not(.legal-kicker):not(.kicker):not(.form-privacy),
body.inner-page main li,body.inner-page .contact-lux-meta a,
body.inner-page .particulars-simple p,body.inner-page .legal-main p { font-family: var(--hf-font) !important; font-size: var(--hf-body) !important; font-weight: 400 !important; line-height: 1.7 !important; letter-spacing: .015em !important; }
@media (max-width:700px) {
  :root { --hf-heading: clamp(27px,6vw,39px); --hf-body: 15px; }
}
body.inner-page:has(.contact-editorial) .site-footer,
body.inner-page:has(.particulars-simple) .site-footer,
body.inner-page:has(.legal-main) .site-footer { background: #f3efe8 !important; background-color: #f3efe8 !important; }
body.inner-page:has(.contact-editorial) .site-footer a,body.inner-page:has(.contact-editorial) .site-footer span,
body.inner-page:has(.particulars-simple) .site-footer a,body.inner-page:has(.particulars-simple) .site-footer span,
body.inner-page:has(.legal-main) .site-footer a,body.inner-page:has(.legal-main) .site-footer span,
body.inner-page:has(.tasting-request-section) .site-footer a,body.inner-page:has(.tasting-request-section) .site-footer span { color: #35291F !important; -webkit-text-fill-color: #35291F !important; }
body.inner-page:has(.contact-editorial) .site-footer .footer-brand-logo,
body.inner-page:has(.particulars-simple) .site-footer .footer-brand-logo,
body.inner-page:has(.legal-main) .site-footer .footer-brand-logo,
body.inner-page:has(.tasting-request-section) .site-footer .footer-brand-logo { filter: brightness(0) saturate(100%) invert(14%) sepia(13%) saturate(1073%) hue-rotate(342deg) brightness(95%) contrast(87%) !important; }
:root { --hf-subheading: clamp(14px,1.3vw,19px); }
@media (max-width:700px) {
  :root { --hf-subheading: clamp(14px,3.3vw,18px); }
}
body.home-page .panel-kicker,body.home-page .kicker,
body.home-page .eyebrow,body.home-page .section-label,
body.home-page .organic-panel h3,body.home-page .belgium-copy h3,
body.home-page .carousel-heading h3,body.home-page .clients-intro h3,
body.inner-page .story-section-heading,body.inner-page .story-label,
body.inner-page .story-small,body.inner-page .story-opening-sub,
body.inner-page .eyebrow,body.inner-page .panel-kicker,
body.inner-page .aside-title,body.inner-page .tasting-request-intro .kicker,
body.inner-page .legal-kicker { font-family: var(--hf-font) !important; font-size: var(--hf-subheading) !important; font-weight: 400 !important; line-height: 1.3 !important; }
body.inner-page .contact-editorial-copy { background: #E4D6C4 !important; background-color: #E4D6C4 !important; color: #35291F !important; box-shadow: none !important; }
body.inner-page .contact-editorial-copy p,
body.inner-page .contact-editorial-copy .panel-kicker,
body.inner-page .contact-editorial-copy h2,
body.inner-page .contact-editorial-copy .contact-lux-meta a,
body.inner-page .contact-editorial-copy .contact-lux-meta p,
body.inner-page .contact-editorial-copy .contact-lux-meta span { color: #35291F !important; -webkit-text-fill-color: #35291F !important; }
body.inner-page .contact-editorial-copy .contact-lux-meta div { border-top-color: rgba(53,41,31,.18) !important; }
:root { --hf-card-subtitle: clamp(25px,2.65vw,38px); }
@media (max-width:700px) {
  :root { --hf-card-subtitle: clamp(24px,5.6vw,33px); }
}
body .site-header .main-nav a,
body .site-header .header-cta,
body .mobile-menu a { text-transform: none !important; }
body header.site-header,body header.site-header.scrolled,body header.site-header:not(.scrolled),body.home-page header.site-header,body.home-page header.site-header.scrolled,body.home-page header.site-header:not(.scrolled),body.home-page.menu-open header.site-header { box-shadow: none !important; border: 0 !important; transition: background-color .35s ease,backdrop-filter .35s ease !important; }
body header.site-header { padding-top: 12px !important; padding-bottom: 12px !important; }
@media (max-width:980px) {
  body header.site-header { padding-top: 11px !important; padding-bottom: 11px !important; }
}
body.inner-page:has(.contact-editorial) .contact-editorial-hero { min-height: 0 !important; align-items: flex-end; }
body.inner-page:has(.contact-editorial) .contact-editorial { padding-top: 12px !important; padding-bottom: 32px !important; }
body.inner-page:has(.contact-editorial) .contact-editorial-copy { padding: clamp(22px,3vw,38px) !important; }
@media (max-width:700px) {
  body.inner-page:has(.contact-editorial) .contact-editorial-hero { padding: 96px 6vw 16px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial { padding: 0 6vw 28px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-grid { gap: 20px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-image { height: 300px !important; }
}
body.home-page .carousel-showcase .carousel-arrow:hover { background: #615447 !important; color: #f3eee5 !important; }
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow span,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow span::before,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow span::after { color: #42392e !important; }
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow:hover,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow:hover span,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow:hover span::before,
body.home-page .carousel-showcase .carousel-controls-inline .carousel-arrow:hover span::after { color: #8c5d49 !important; background: transparent !important; }
body.inner-page header.site-header:not(.scrolled) { background: transparent !important; background-color: transparent !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; border-color: transparent !important; }
body.inner-page header.site-header.scrolled { background: rgba(246,239,228,.92) !important; background-color: rgba(246,239,228,.92) !important; backdrop-filter: blur(12px) !important; -webkit-backdrop-filter: blur(12px) !important; border-color: transparent !important; }
.contact-lux-meta .contact-person { display: flex; flex-direction: column; align-items: flex-start; gap: 0.18rem; margin-top: 1.05rem; }
.contact-lux-meta .contact-person + .contact-person { margin-top: 1.35rem; }
.contact-lux-meta .contact-person-name { font-weight: 600; line-height: 1.2; }
.contact-lux-meta .contact-person-role { font-size: 0.78em; letter-spacing: 0.025em; opacity: 0.72; line-height: 1.3; }
.contact-lux-meta .contact-person a { margin-top: 0.15rem; }
@media (min-width: 701px) {
  body.inner-page:has(.contact-editorial) .contact-editorial-hero { min-height: 0 !important; padding: clamp(82px, 11vh, 108px) 8vw 6px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-hero h1 { margin-top: 3px !important; margin-bottom: 0 !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial { padding-top: 6px !important; padding-bottom: 14px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-grid { align-items: stretch !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-copy { min-height: 0 !important; display: flex !important; flex-direction: column !important; justify-content: center !important; box-sizing: border-box !important; }
  body.inner-page:has(.contact-editorial) .contact-lux-meta { margin-top: clamp(12px, 2vh, 20px) !important; gap: clamp(8px, 1.3vh, 14px) !important; }
  body.inner-page:has(.contact-editorial) .contact-lux-meta div { gap: 5px !important; padding-top: 9px !important; }
  body.inner-page:has(.contact-editorial) .contact-lux-meta .contact-person { margin-top: 9px !important; gap: 2px !important; }
  body.inner-page:has(.contact-editorial) .contact-lux-meta .contact-person + .contact-person { margin-top: 11px !important; }
}
@media (min-width:701px) and (max-height:720px) {
  body.inner-page:has(.contact-editorial) .contact-editorial-hero { padding-top: 76px !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-image { height: clamp(310px,60vh,440px) !important; }
  body.inner-page:has(.contact-editorial) .contact-editorial-copy { padding: 14px 26px !important; }
}
body .site-header .brand .brand-logo { transform: translateY(-16px) !important; }
@media (max-width:980px) {
  body .site-header .brand .brand-logo { max-height: 70px !important; transform: translateY(-13px) !important; }
}
@media (max-width:480px) {
  body .site-header .brand .brand-logo { max-height: 62px !important; transform: translateY(-11px) !important; }
}
body.inner-page .contact-editorial-copy .contact-lux-meta > div:nth-child(2) .contact-person:first-of-type { border-top: 0 !important; }
body.inner-page .contact-editorial-copy .contact-lux-meta .contact-person { padding-top: 0 !important; }
body.inner-page .contact-editorial-copy .contact-lux-meta .contact-person + .contact-person { position: relative; border-top: 0 !important; padding-top: 15px !important; }
body.inner-page .contact-editorial-copy .contact-lux-meta .contact-person + .contact-person::before { content: ""; position: absolute; top: 0; left: 0; width: 55px; height: 1px; background: rgba(53,41,31,.23); }
.hf-lang-switch { white-space: nowrap; letter-spacing: .07em; }
.hf-lang-switch a:hover,.hf-lang-switch a.active { opacity: 1; }
.hf-lang-mobile { display: flex; gap: 22px; margin-top: 22px; }
.hf-lang-mobile a { color: inherit; text-decoration: none; font: 500 13px Arial,sans-serif; opacity: .55; }
.hf-lang-mobile a.active { opacity: 1; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width:800px) {
  .hf-lang-switch { font-size: 10px; }
}
@media (min-width:801px) {
  body .site-header .hf-lang-switch { margin-left: 0; }
}
body .site-header .hf-lang-switch a { align-items: center; gap: 5px; }
body .site-header .hf-lang-switch a:hover { background: rgba(83,47,26,.08); opacity: 1; }
.hf-lang-mobile a { display: inline-flex; align-items: center; gap: 6px; }
@media (max-width:800px) {
  body .site-header .hf-lang-switch a { gap: 3px; }
}
body .site-header .hf-lang-switch { order: 0 !important; color: inherit !important; isolation: auto !important; font: inherit !important; }
body .site-header .hf-lang-switch a { font: inherit !important; display: inline !important; padding: 0 !important; border: 0 !important; border-radius: 0 !important; text-decoration: none !important; transition: opacity .2s ease !important; }
body .site-header .hf-lang-switch a.active { text-decoration: underline !important; text-underline-offset: 5px !important; }
body .site-header .hf-lang-switch a:hover { opacity: 1 !important; background: transparent !important; }
@media (min-width:801px) {
  body .site-header { column-gap: clamp(16px,2.4vw,34px) !important; }
}
@media (max-width:800px) {
  body .site-header .brand { margin-right: auto !important; }
}
body .site-header .hf-lang-switch { grid-column: 1 !important; grid-row: 1 !important; justify-self: start !important; align-self: center !important; display: flex !important; align-items: center !important; gap: 13px !important; margin: 0 !important; padding: 0 !important; background: none !important; border: 0 !important; border-radius: 0 !important; box-shadow: none !important; backdrop-filter: none !important; -webkit-backdrop-filter: none !important; }
body .site-header .hf-lang-switch a,
body .site-header .hf-lang-switch a span,
body .site-header .hf-lang-switch a.active,
body .site-header .hf-lang-switch a.active span { color: inherit !important; -webkit-text-fill-color: currentColor !important; background: transparent !important; text-shadow: none !important; }
@media (max-width:800px) {
  body .site-header .hf-lang-switch { gap: 10px !important; }
}
@media (min-width:801px) {
  body .site-header { position: fixed !important; grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important; min-height: 90px !important; }
  body .site-header .brand { grid-column: 1 !important; grid-row: 1 !important; justify-self: start !important; }
  body .site-header .main-nav { grid-column: 2 !important; grid-row: 1 !important; justify-self: center !important; }
  body .site-header .header-cta { grid-column: 3 !important; grid-row: 1 !important; justify-self: end !important; transform: translateY(13px) !important; }
  body .site-header .hf-lang-switch { position: absolute !important; top: 11px !important; right: 4vw !important; left: auto !important; grid-column: auto !important; grid-row: auto !important; justify-self: end !important; align-self: auto !important; z-index: 3 !important; }
}
@media (max-width:800px) {
  body .site-header .hf-lang-switch { order: 2 !important; margin-left: auto !important; margin-right: 10px !important; }
  body .site-header .brand { order: 0 !important; }
  body .site-header .menu-toggle { order: 3 !important; }
}
body .site-header .hf-lang-switch a { font-size: 12.5px !important; opacity: .9 !important; letter-spacing: .045em !important; }
body .site-header .hf-lang-switch a.active { opacity: 1 !important; }
body .site-header .hf-lang-switch a:hover { opacity: 1 !important; }
@media (max-width:800px) {
  body .site-header .hf-lang-switch a { font-size: 11.5px !important; }
}
@media (min-width:981px) {
  body .site-header .brand { align-self: center !important; }
  body .site-header .main-nav { align-self: center !important; }
  body .site-header .header-cta { transform: none !important; align-self: center !important; line-height: 1.3 !important; }
  body .site-header .hf-lang-switch { top: 7px !important; right: 4vw !important; }
}
body .site-header .hf-lang-switch a,
body .site-header .hf-lang-switch a span { font-weight: 800 !important; }
body .site-header .hf-lang-switch a.active,
body .site-header .hf-lang-switch a.active span { font-weight: 800 !important; }
@media (max-width:980px) {
  body .site-header .brand .brand-logo { width: clamp(140px,19vw,175px) !important; height: auto !important; }
}
@media (min-width:981px) {
  body .site-header .brand .brand-logo { width: clamp(215px,19vw,258px) !important; max-height: 94px !important; height: auto !important; object-fit: contain !important; }
  body .site-header .brand { transform: translate(-14px,9px) !important; }
}
@media (min-width:801px) and (max-width:980px) {
  body .site-header .brand .brand-logo { width: clamp(170px,20vw,195px) !important; height: auto !important; }
}
body .site-header .header-cta { font-weight: 800 !important; }

/* 2026-10-20: contact heading below the header, keep content compact */
@media (min-width:701px) {
 body.inner-page:has(.contact-editorial) .contact-editorial-hero { padding-top:clamp(116px, 14vh, 142px) !important; padding-bottom:0 !important; }
 body.inner-page:has(.contact-editorial) .contact-editorial { padding-top:0 !important; padding-bottom:10px !important; }
 body.inner-page:has(.contact-editorial) .contact-editorial-grid { gap:16px !important; }
 body.inner-page:has(.contact-editorial) .contact-editorial-image { max-height: min(48vh,400px) !important; }
}
@media (min-width:701px) and (max-height:720px) {
 body.inner-page:has(.contact-editorial) .contact-editorial-hero { padding-top:100px !important; }
 body.inner-page:has(.contact-editorial) .contact-editorial-image { max-height: 42vh !important; }
}
