/*
Theme Name: Marché Rosé
Theme URI: https://example.com/
Author: Marché Rosé
Description: Minimal Scandinavian-inspired event theme for Marché Rosé. Gutenberg and Gravity Forms friendly.
Version: 1.21.0
Requires at least: 6.0
Requires PHP: 7.4
Text Domain: marche-rose
*/
:root{--rose:#f6dddd;--rose-2:#f1d2d4;--pink:#e6007e;--ink:#181219;--paper:#fffafa;--line:rgba(24,18,25,.16);--max:1440px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.55}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto;display:block}.wrap{width:min(calc(100% - 64px),var(--max));margin:auto}.site-header{background:var(--rose);padding:28px 0}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}.brand img{width:180px;max-height:100px;object-fit:contain}.brand-text{font-size:26px;font-weight:700;color:var(--pink)}.menu{display:flex;gap:44px;list-style:none;margin:0;padding:0;align-items:center}.menu a{font-size:12px;text-transform:uppercase;letter-spacing:.06em}.menu a:hover,.current-menu-item>a{color:var(--pink)}.menu-toggle{display:none;border:0;background:none;font-size:24px}.hero{background:var(--rose);min-height:690px;padding:40px 0 70px}.hero-grid,.split{display:grid;grid-template-columns:1fr 1.18fr;align-items:stretch}.hero-copy{padding:90px 8vw 70px 0;display:flex;flex-direction:column;justify-content:center}.hero h1{font-size:clamp(70px,9vw,150px);font-weight:400;line-height:.84;letter-spacing:-.065em;margin:0 0 56px}.dot{color:var(--pink)}.eyebrow{font-size:13px;letter-spacing:.12em;text-transform:uppercase;max-width:330px}.hero-media,.split-media{min-height:560px;background:#e7cdca center/cover no-repeat;position:relative}.placeholder{display:flex;align-items:center;justify-content:center;color:#765f64;text-transform:uppercase;letter-spacing:.12em;font-size:12px}.down{margin-top:60px;color:var(--pink);font-size:30px}.intro{background:var(--rose);padding:90px 0}.intro .split-copy{padding:25px 9vw 40px 0}.split-copy h2,.contact-cta h2{font-weight:400;font-size:clamp(42px,4vw,68px);line-height:1.02;letter-spacing:-.045em;margin:0 0 40px}.split-copy p{max-width:360px}.text-link{display:inline-block;margin-top:30px;color:var(--pink);font-size:12px;letter-spacing:.06em;text-transform:uppercase;border-bottom:1px solid var(--pink);padding-bottom:4px}.facts{padding:75px 0;background:var(--paper)}.facts-grid{display:grid;grid-template-columns:repeat(3,1fr)}.fact{padding:0 60px;border-right:1px solid var(--line)}.fact:first-child{padding-left:0}.fact:last-child{border:0}.fact-num{color:var(--pink);font-size:13px}.fact-label{font-size:12px;text-transform:uppercase;margin:14px 0}.fact-value{font-size:16px;text-transform:uppercase}.contact-cta{background:var(--rose);padding:90px 0}.contact-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;align-items:center}.contact-image{min-height:330px;background:#e4c9c4 center/cover no-repeat}.page-main{padding:80px 0 110px;min-height:60vh}.page-main h1{font-size:clamp(58px,8vw,120px);font-weight:400;letter-spacing:-.06em;line-height:.9}.entry-content{max-width:900px}.entry-content p{font-size:18px}.site-footer{background:var(--rose);padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:60px}.footer-title{font-size:12px;text-transform:uppercase;margin-bottom:25px}.footer-menu{list-style:none;margin:0;padding:0}.footer-menu li{margin:8px 0}.footer-bottom{text-align:center;margin-top:70px;font-size:11px;text-transform:uppercase}.gform_wrapper input:not([type=submit]),.gform_wrapper textarea,.gform_wrapper select{background:transparent!important;border:0!important;border-bottom:1px solid var(--ink)!important;border-radius:0!important;padding:14px 0!important}.gform_wrapper input[type=submit]{background:var(--pink)!important;color:white!important;border:0!important;border-radius:0!important;padding:15px 28px!important;text-transform:uppercase!important;cursor:pointer}.wp-block-button__link{border-radius:0;background:var(--pink)}
@media(max-width:800px){.wrap{width:min(calc(100% - 36px),var(--max))}.menu-toggle{display:block}.main-nav{display:none;position:absolute;top:105px;left:0;right:0;background:var(--rose);padding:25px 18px;z-index:20}.main-nav.open{display:block}.menu{flex-direction:column;align-items:flex-start;gap:18px}.brand img{width:145px}.hero{min-height:auto}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-copy{padding:55px 0}.hero h1{font-size:76px;margin-bottom:35px}.hero-media,.split-media{min-height:430px}.intro{padding:60px 0}.intro .split-copy{padding:0 0 55px}.facts-grid{grid-template-columns:1fr}.fact{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.contact-cta{padding:60px 0}.contact-image{min-height:280px}.footer-grid{grid-template-columns:1fr;gap:35px}}


/* Gravity Forms — Marché Rosé */
.gform_wrapper.gravity-theme .gfield_label,
.gform_wrapper .gfield_label{font-weight:400!important;font-size:13px!important;letter-spacing:.04em!important}
.gform_wrapper.gravity-theme input[type=text],
.gform_wrapper.gravity-theme input[type=email],
.gform_wrapper.gravity-theme input[type=tel],
.gform_wrapper.gravity-theme input[type=url],
.gform_wrapper.gravity-theme input[type=number],
.gform_wrapper.gravity-theme input[type=password],
.gform_wrapper.gravity-theme input[type=date],
.gform_wrapper.gravity-theme textarea,
.gform_wrapper.gravity-theme select,
.gform_wrapper input:not([type=submit]):not([type=checkbox]):not([type=radio]),
.gform_wrapper textarea,
.gform_wrapper select{
 background:#fff!important;border:1px solid rgba(24,18,25,.12)!important;border-radius:0!important;
 color:var(--ink)!important;padding:15px 16px!important;min-height:52px!important;box-shadow:none!important;
}
.gform_wrapper.gravity-theme textarea{min-height:150px!important;resize:vertical}
.gform_wrapper input::placeholder,.gform_wrapper textarea::placeholder{color:rgba(24,18,25,.48)!important}
.gform_wrapper.gravity-theme input:focus,.gform_wrapper.gravity-theme textarea:focus,.gform_wrapper.gravity-theme select:focus{outline:1px solid var(--pink)!important;border-color:var(--pink)!important}
.gform_wrapper .gchoice{position:relative}
.gform_wrapper input[type=radio],.gform_wrapper input[type=checkbox]{appearance:none;-webkit-appearance:none;background:#fff!important;border:1px solid rgba(24,18,25,.35)!important;width:22px!important;height:22px!important;min-width:22px!important;margin:0 9px 0 0!important;vertical-align:middle!important;display:inline-grid!important;place-content:center!important;box-shadow:none!important}
.gform_wrapper input[type=radio]{border-radius:50%!important}
.gform_wrapper input[type=checkbox]{border-radius:0!important}
.gform_wrapper input[type=radio]::before{content:"";width:10px;height:10px;border-radius:50%;transform:scale(0);background:var(--pink);transition:transform .12s ease}
.gform_wrapper input[type=checkbox]::before{content:"";width:10px;height:6px;border-left:2px solid var(--pink);border-bottom:2px solid var(--pink);transform:rotate(-45deg) scale(0);transition:transform .12s ease;margin-top:-2px}
.gform_wrapper input[type=radio]:checked::before{transform:scale(1)}
.gform_wrapper input[type=checkbox]:checked::before{transform:rotate(-45deg) scale(1)}
.gform_wrapper .gchoice label{font-weight:400!important;vertical-align:middle!important}
.gform_wrapper.gravity-theme .gform_footer,.gform_wrapper.gravity-theme .gform_page_footer{margin-top:28px!important}
.gform_wrapper input[type=submit],.gform_wrapper button[type=submit],.gform_wrapper .gform_button{
 background:var(--pink)!important;color:#fff!important;border:1px solid var(--pink)!important;border-radius:0!important;
 padding:16px 28px!important;text-transform:uppercase!important;letter-spacing:.06em!important;font-size:12px!important;cursor:pointer!important;transition:.2s ease!important;
}
.gform_wrapper input[type=submit]:hover,.gform_wrapper button[type=submit]:hover,.gform_wrapper .gform_button:hover{background:var(--ink)!important;border-color:var(--ink)!important}
.gform_wrapper .gfield_required{color:var(--pink)!important}
.gform_wrapper .gfield_validation_message,.gform_wrapper .validation_message{background:transparent!important;border:0!important;color:var(--pink)!important;padding:6px 0!important}
.gform_wrapper .gform_validation_errors{background:#fff!important;border:1px solid var(--pink)!important;border-radius:0!important;box-shadow:none!important}

/* Header & navigation — v1.3 */
.site-header{position:sticky;top:0;z-index:1000;background:rgba(246,221,221,.96);border-bottom:1px solid transparent;transition:background .2s ease,border-color .2s ease}
body.admin-bar .site-header{top:32px}
.header-inner{min-height:62px}
.main-nav .menu>li:last-child>a{background:var(--pink);color:#fff;padding:12px 18px;display:inline-block}
.main-nav .menu>li:last-child>a:hover,.main-nav .menu>li:last-child.current-menu-item>a{background:var(--ink);color:#fff}
.menu-toggle{font:inherit;font-size:11px;letter-spacing:.09em;text-transform:uppercase;color:var(--ink);cursor:pointer;padding:10px 0}
.menu-toggle::after{content:'  +';color:var(--pink);font-size:16px}
.menu-toggle[aria-expanded="true"]::after{content:'  −'}
@media(max-width:800px){body.admin-bar .site-header{top:46px}.site-header{padding:16px 0}.main-nav{top:100%;border-top:1px solid var(--line);padding:26px 18px 34px}.main-nav .menu>li:last-child>a{margin-top:8px}.menu-toggle{display:block}.main-nav.open{display:block}}

/* Footer logo + participating brands ticker — v1.5 */
.footer-brand{margin-bottom:24px}.footer-brand img{width:min(230px,100%);max-height:110px;object-fit:contain;object-position:left center}
.brand-ticker{background:var(--ticker-bg,#000);overflow:hidden;width:100%;padding:24px 0}.ticker-track{display:flex;width:max-content;will-change:transform;animation:mrTicker 38s linear infinite}.ticker-set{display:flex;align-items:center;gap:80px;padding-right:80px;flex:0 0 auto}.ticker-logo{width:150px;height:58px;display:flex;align-items:center;justify-content:center;flex:0 0 auto}.ticker-logo img{max-width:100%;max-height:58px;width:auto;height:auto;object-fit:contain}.brand-ticker:hover .ticker-track{animation-play-state:paused}@keyframes mrTicker{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-100% / 6),0,0)}}@media(prefers-reduced-motion:reduce){.ticker-track{animation:none}}@media(max-width:800px){.brand-ticker{padding:20px 0}.ticker-set{gap:50px;padding-right:50px}.ticker-logo{width:120px;height:46px}.ticker-logo img{max-height:46px}.footer-brand img{width:190px}}

.ticker-logo a{display:flex;align-items:center;justify-content:center;height:100%;transition:opacity .2s ease}.ticker-logo a:hover{opacity:.7}

/* Footer widgets + customizable colors */
.site-footer{background:var(--footer-bg,var(--rose));color:var(--footer-text,var(--ink))}
.site-footer a{color:inherit}.footer-widget{margin:0 0 28px}.footer-widget:last-child{margin-bottom:0}.footer-widget ul{list-style:none;margin:0;padding:0}.footer-widget li{margin:8px 0}.footer-widget p:first-child{margin-top:0}.footer-widget p:last-child{margin-bottom:0}.footer-widget img{max-width:230px;height:auto}.footer-widget .wp-block-social-links{gap:12px}.footer-widget .wp-block-social-link{margin:0}.footer-column:empty{display:none}

/* Homepage video — v1.11: ultraminimalistische editorial layout */
.home-video{background:var(--video-bg,var(--rose));padding:72px 0}
.video-grid{display:grid;grid-template-columns:minmax(280px,420px) minmax(0,1fr);gap:clamp(70px,10vw,170px);align-items:center}
.video-media{display:flex;justify-content:flex-start}
.youtube-short,.video-placeholder{width:min(100%,390px);aspect-ratio:9/16;position:relative;overflow:hidden;background:#000}
.video-frame{position:absolute;inset:0;width:100%;height:100%;border:0;display:block}
.video-placeholder{display:grid;place-items:center;text-align:center;padding:30px;background:#ead6d2;color:#765f64;text-transform:uppercase;letter-spacing:.1em;font-size:11px}
.video-copy{max-width:760px;padding-right:3vw}
.video-label{color:var(--pink);font-size:11px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:34px}
.video-copy h2{font-size:clamp(58px,7vw,112px);font-weight:400;line-height:.88;letter-spacing:-.065em;margin:0 0 42px;max-width:760px}
.video-copy p{max-width:440px;font-size:17px;line-height:1.55;margin:0}
@media(max-width:800px){.home-video{padding:52px 0 62px}.video-grid{grid-template-columns:1fr;gap:44px}.video-media{order:0}.video-copy{order:1;padding-right:0}.youtube-short,.video-placeholder{width:min(82vw,360px)}.video-label{margin-bottom:24px}.video-copy h2{font-size:clamp(52px,15vw,78px);margin-bottom:28px}}


/* v1.12 — global headings + calmer widget footer */
h1,h2,h3,h4,h5,h6,.hero h1,.split-copy h2,.contact-cta h2,.page-main h1,.video-title{color:var(--heading-color,var(--ink))}
.site-footer{padding:64px 0 24px}
.site-footer a{color:var(--footer-link,var(--footer-text));transition:opacity .2s ease}
.site-footer a:hover{opacity:.62}
.site-footer .footer-grid{grid-template-columns:1.15fr .85fr .85fr;gap:clamp(40px,6vw,100px);align-items:start}
.site-footer .footer-column{min-width:0}
.site-footer .footer-widget{margin:0 0 22px;padding:0;background:transparent;border:0;box-shadow:none}
.site-footer .footer-widget:last-child{margin-bottom:0}
.site-footer .footer-title,.site-footer .wp-block-heading{margin:0 0 20px;font-size:12px!important;line-height:1.3;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:inherit}
.site-footer p{margin:0 0 18px;max-width:360px}
.site-footer ul,.site-footer .wp-block-list{margin:0;padding:0;list-style:none}
.site-footer li{margin:0 0 10px!important;padding:0}
.site-footer .wp-block-buttons{margin:22px 0 0;gap:10px}
.site-footer .wp-block-button{margin:0}
.site-footer .wp-block-button__link{display:inline-block;border-radius:0;padding:13px 20px;font-size:13px;line-height:1.2;text-decoration:none}
.site-footer .wp-block-social-links{margin:4px 0 0;padding:0;gap:10px}
.site-footer .wp-block-social-link{margin:0!important}
.site-footer .wp-block-image{margin:0 0 26px}
.site-footer .wp-block-image img,.site-footer .footer-widget img{max-width:220px;height:auto}
.site-footer .footer-bottom{border-top:1px solid color-mix(in srgb,var(--footer-text) 20%,transparent);padding-top:22px;margin-top:56px;text-align:left;opacity:.85}
@media(max-width:800px){.site-footer{padding:48px 0 22px}.site-footer .footer-grid{grid-template-columns:1fr;gap:38px}.site-footer .footer-bottom{margin-top:42px}.site-footer .footer-widget{margin-bottom:18px}}

/* v1.13 — subtiele moving-photo loops */
.hero-media,.split-media,.contact-image{overflow:hidden}
.ambient-loop{display:block;width:100%;height:100%;position:absolute;inset:0;object-fit:cover;object-position:center;border:0}
.contact-image{position:relative}
@media (prefers-reduced-motion: reduce){.ambient-loop{display:none}.hero-media,.split-media,.contact-image{background-position:center;background-size:cover}}


/* v1.14 — globale pagina-achtergrond + verticale footer navigatie */
body, body.page, body.single, .page-main{background:var(--site-bg,var(--paper))}
body.home .hero,body.home .intro,body.home .contact-cta{background:var(--rose)}
.site-footer .wp-block-navigation,.site-footer .wp-block-navigation__container,.site-footer .wp-block-page-list{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;width:100%}
.site-footer .wp-block-navigation-item{width:100%;margin:0!important}
.site-footer .wp-block-navigation-item__content{display:inline-block;padding:0!important}
.site-footer .menu,.site-footer .footer-menu{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important}
.site-footer .menu li,.site-footer .footer-menu li{margin:0!important}

/* v1.15 — links & buttons */
/* Content links: clearly recognisable, while navigation/brand/button links stay clean. */
.entry-content a:not(.wp-block-button__link),
.page-main a:not(.wp-block-button__link),
.intro p a,
.contact-cta p a,
.footer-widget p a,
.footer-widget li a:not(.wp-block-button__link) {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: .18em;
  text-decoration-color: currentColor;
  transition: color .2s ease, opacity .2s ease, text-decoration-thickness .2s ease;
}
.entry-content a:not(.wp-block-button__link):hover,
.page-main a:not(.wp-block-button__link):hover,
.intro p a:hover,
.contact-cta p a:hover,
.footer-widget p a:hover,
.footer-widget li a:not(.wp-block-button__link):hover {
  color: var(--pink);
  opacity: 1;
  text-decoration-thickness: 2px;
}
/* Navigation remains deliberately un-underlined. */
.site-header a,.brand,.menu a,.ticker a,.wp-block-navigation-item__content {text-decoration:none}

/* One button language across the site. */
.wp-block-button__link,
.gform_wrapper input[type=submit],
.gform_wrapper button[type=submit],
.gform_wrapper .gform_button,
button:not(.menu-toggle),
input[type=button],
input[type=submit] {
  border-radius: 999px!important;
}
.site-footer .wp-block-button__link {
  border-radius:999px!important;
  padding:13px 22px;
}

/* v1.16 — consistent CTA buttons */
/* The final item in the primary navigation is the header CTA. */
.main-nav .menu>li:last-child>a {
  border-radius:999px!important;
  text-transform:uppercase;
  padding:13px 22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
/* Footer buttons use the same uppercase pill language. */
.site-footer .wp-block-button__link,
.site-footer button:not(.menu-toggle),
.site-footer input[type=button],
.site-footer input[type=submit] {
  border-radius:999px!important;
  text-transform:uppercase!important;
  letter-spacing:.06em;
}


/* v1.17 — Gravity Forms select/dropdown readability */
.gform_wrapper.gravity-theme select,
.gform_wrapper select,
.gform_wrapper.gravity-theme .gfield_select {
  background-color:#fff!important;
  color:var(--ink)!important;
  font-family:inherit!important;
  font-size:16px!important;
  font-weight:400!important;
  line-height:1.25!important;
  height:52px!important;
  min-height:52px!important;
  padding:0 46px 0 16px!important;
  border:1px solid rgba(24,18,25,.12)!important;
  border-radius:0!important;
  box-shadow:none!important;
  vertical-align:middle!important;
}
.gform_wrapper.gravity-theme select:focus,
.gform_wrapper select:focus {
  outline:1px solid var(--pink)!important;
  outline-offset:0!important;
  border-color:var(--pink)!important;
}
.gform_wrapper select option {
  color:var(--ink)!important;
  background:#fff!important;
  font-size:16px!important;
}


/* v1.18 — static brand grid above footer; data is shared with the ticker */
.brand-grid-section{background:var(--brand-grid-bg,#000);color:var(--brand-grid-text,#fff);padding:72px 0 78px}
.brand-grid-title{color:inherit!important;font-size:13px!important;line-height:1.3!important;font-weight:600!important;letter-spacing:.08em!important;text-transform:uppercase;margin:0 0 42px!important}
.brand-grid{display:grid;grid-template-columns:repeat(var(--brand-grid-cols,4),minmax(0,1fr));gap:42px 48px;align-items:center}
.brand-grid-logo{min-width:0;height:72px;display:flex;align-items:center;justify-content:center}
.brand-grid-logo a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;text-decoration:none!important;transition:opacity .2s ease,transform .2s ease}
.brand-grid-logo a:hover{opacity:.68;transform:translateY(-2px)}
.brand-grid-logo img{width:auto;height:auto;max-width:150px;max-height:58px;object-fit:contain}
@media(max-width:1000px){.brand-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:38px 32px}}
@media(max-width:640px){.brand-grid-section{padding:54px 0 58px}.brand-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 22px}.brand-grid-logo{height:60px}.brand-grid-logo img{max-width:120px;max-height:46px}}


/* v1.19 — next edition block in header */
.header-right{display:flex;flex-direction:column;align-items:flex-start;gap:20px;margin-left:auto}
.header-edition{line-height:1.15}
.header-edition-label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--pink);margin-bottom:8px}
.header-edition-text{font-size:clamp(20px,2vw,30px);font-weight:700;letter-spacing:-.025em}
.header-right .main-nav{width:100%}
@media(min-width:801px){.header-inner{align-items:center}.header-right{min-width:min(620px,55vw)}.header-right .menu{justify-content:flex-start}}
@media(max-width:800px){.header-inner{align-items:flex-start;position:relative}.header-right{gap:12px;max-width:58%;align-items:flex-end}.header-edition{text-align:right}.header-edition-label{font-size:9px;margin-bottom:5px}.header-edition-text{font-size:16px}.header-right .main-nav{width:auto}.header-right .menu-toggle{margin-left:auto}}


/* v1.21 — tighter spacing between ticker and homepage heading */
body.home .hero{padding-top:14px}
body.home .hero-copy{padding-top:52px}
@media(max-width:800px){body.home .hero{padding-top:8px}body.home .hero-copy{padding-top:32px}}
