/* ==========================================================================
   FMOTY 2027 – huisstijl voor GeneratePress
   ========================================================================== */

/* Fonts (lokaal, Latin-subset) */
@font-face{font-family:"Pretendard";src:url(../fonts/pretendard-light.woff2) format("woff2");font-weight:300;font-display:swap}
@font-face{font-family:"Pretendard";src:url(../fonts/pretendard-regular.woff2) format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:"Pretendard";src:url(../fonts/pretendard-medium.woff2) format("woff2");font-weight:500;font-display:swap}
@font-face{font-family:"Pretendard";src:url(../fonts/pretendard-semibold.woff2) format("woff2");font-weight:600;font-display:swap}
@font-face{font-family:"Pretendard";src:url(../fonts/pretendard-bold.woff2) format("woff2");font-weight:700;font-display:swap}
@font-face{font-family:"Lora";src:url(../fonts/lora-400.woff2) format("woff2");font-weight:400;font-display:swap;
	unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Lora";src:url(../fonts/lora-400-ext.woff2) format("woff2");font-weight:400;font-display:swap;
	unicode-range:U+0100-02AF,U+0304,U+0308,U+0329,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}

/* Tokens */
:root{
	--fmy-bg:#633EFE;        /* hoofdachtergrond */
	--fmy-wave:#4336FF;      /* donkere golf */
	--fmy-card:#5132CD;      /* contentkaart */
	--fmy-card-top:#482EB6;  /* bovenkant kaart */
	--fmy-peach:#FCD5C4;     /* perzik accent */
	--fmy-red:#FE0000;       /* FLEET-rood */
	--fmy-lilac:#C47FFB;     /* "27" */
	--fmy-ink:#252421;       /* donkere tekst */
	--fmy-sans:"Pretendard",system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
	--fmy-serif:"Lora",Georgia,"Times New Roman",serif;
	--fmy-radius:clamp(1.25rem,3vw,2.5rem);
}

/* Basis */
body{background:var(--fmy-bg);color:#fff;font-family:var(--fmy-sans);font-weight:400}
h1,h2,h3,h4,.entry-title{font-family:var(--fmy-serif);font-weight:400;color:#fff;letter-spacing:0;text-transform:none}
a{color:var(--fmy-peach)}
a:hover,a:focus{color:#fff}
.fmy-red{color:var(--fmy-red)}

/* ---- Header: transparant over de visual ---- */
.site-header{position:absolute;top:0;left:0;right:0;z-index:30;background:transparent}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
.site-header .site-branding,.site-header .site-logo{display:none}
.main-navigation,.main-navigation ul ul{background:transparent}
.main-navigation .main-nav ul li a,.main-navigation .menu-toggle,.main-navigation .menu-bar-items{color:#fff;font-family:var(--fmy-sans);font-weight:500}
.main-navigation .main-nav ul li:hover>a,.main-navigation .main-nav ul li.current-menu-item>a,
.main-navigation .main-nav ul li[class*="current-menu-"]>a{color:var(--fmy-peach);background:transparent}
.main-navigation .main-nav ul ul{background:var(--fmy-card-top);border-radius:.75rem}
@media (max-width:768px){
	.main-navigation.toggled .main-nav>ul{background:var(--fmy-card-top);border-radius:0 0 1rem 1rem;padding-bottom:.5rem}
	.main-navigation .menu-toggle{background:transparent}
}

/* ---- Hero ---- */
.fmy-hero{position:relative;background:var(--fmy-bg);line-height:0}
.fmy-hero__img{display:block;width:100%;height:auto}
.fmy-lang{line-height:1}
.fmy-lang__bubble{position:absolute;display:block;transition:transform .2s ease}
.fmy-lang__bubble img{display:block;width:100%;height:auto}
.fmy-lang__bubble--nl{left:45.8%;top:69%;width:10.4%}
.fmy-lang__bubble--fr{left:57.5%;top:72.6%;width:10%}
.fmy-lang__bubble:hover,.fmy-lang__bubble:focus-visible{transform:scale(1.06) rotate(-2deg)}
.fmy-lang__bubble:focus-visible{outline:3px solid var(--fmy-peach);outline-offset:4px;border-radius:1rem}
.fmy-lang__bubble.is-active{filter:drop-shadow(0 0 .6rem rgba(252,213,196,.55))}
@media (max-width:767px){
	.fmy-lang{display:flex;justify-content:center;gap:1.25rem;padding:0 1rem 1.5rem}
	.fmy-lang__bubble{position:static;width:min(40vw,170px)}
}
@media (prefers-reduced-motion:reduce){.fmy-lang__bubble{transition:none}}

/* ---- Contentkaart (GP "Gescheiden containers") ---- */
.site-content{padding-top:clamp(1rem,4vw,3rem);padding-bottom:clamp(3rem,6vw,5rem)}
.separate-containers .inside-article,
.one-container .site-content .inside-article,
.one-container .container{background:transparent}
.separate-containers .inside-article,.one-container .inside-article{
	position:relative;background:var(--fmy-card);color:#fff;
	border-radius:var(--fmy-radius) var(--fmy-radius) 0 var(--fmy-radius);
	padding:clamp(1.5rem,5vw,4rem)}
/* speech-bubble staartje rechtsonder */
.separate-containers .inside-article::after,.one-container .inside-article::after{
	content:"";position:absolute;right:0;bottom:calc(-1 * clamp(22px,3vw,34px));
	width:clamp(28px,4vw,44px);height:clamp(22px,3vw,34px);
	background:var(--fmy-card);clip-path:polygon(0 0,100% 0,100% 100%)}
.separate-containers .site-main>*{margin-bottom:clamp(3rem,6vw,5rem)}
.entry-content h2{position:relative;display:inline-block;padding-bottom:.4rem;margin-bottom:1.5rem;font-size:clamp(1.4rem,2.4vw,1.9rem)}
.entry-content h2::after{content:"";position:absolute;left:calc(-1 * clamp(1.5rem,5vw,4rem));right:0;bottom:0;height:1px;background:rgba(255,255,255,.55)}

/* footer */
.site-footer,.site-info{background:transparent;color:rgba(255,255,255,.7)}
.site-info a{color:inherit}

/* ---- Hall of Fame ---- */
.fmy-hof{display:grid;gap:.5rem}
.fmy-hof__award{border-radius:1rem;background:rgba(255,255,255,.06)}
.fmy-hof__award[open]{background:rgba(255,255,255,.1)}
.fmy-hof__title{cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:1rem;
	padding:1rem 1.25rem;font-family:var(--fmy-serif);font-size:clamp(1.1rem,1.8vw,1.3rem)}
.fmy-hof__title::-webkit-details-marker{display:none}
.fmy-hof__title::after{content:"+";font-family:var(--fmy-sans);font-weight:300;font-size:1.6em;line-height:1;transition:transform .2s}
.fmy-hof__award[open] .fmy-hof__title::after{transform:rotate(45deg)}
.fmy-hof__title:focus-visible{outline:2px solid var(--fmy-peach);outline-offset:2px;border-radius:1rem}
.fmy-hof__award--archived .fmy-hof__title{opacity:.75}
.fmy-hof__list{list-style:none;margin:0;padding:0 1.25rem 1rem}
.fmy-hof__item{display:grid;grid-template-columns:3.5rem 1fr;column-gap:1rem;padding:.55rem 0;border-top:1px solid rgba(255,255,255,.12)}
.fmy-hof__year{font-weight:600;color:var(--fmy-peach);font-variant-numeric:tabular-nums}
.fmy-hof__company{grid-column:2;font-weight:300;opacity:.8;font-size:.9em}
.fmy-hof__item:first-child .fmy-hof__winner{font-weight:600}

/* ---- Galerijen ---- */
.entry-content .wp-block-gallery{--wp--style--unstable-gallery-gap:.5rem;gap:.5rem}
.entry-content .wp-block-gallery img{border-radius:.5rem}

/* ---- v1.1: homepage-onderdelen ---- */
.page .page-header-image,.page .featured-image{display:none}  /* oude uitgelichte afbeeldingen verbergen */
.entry-content h2{scroll-margin-top:6rem}
.entry-content>*:first-child{margin-top:0}
.fmy-lead{font-family:var(--fmy-serif);font-size:clamp(1.25rem,2.2vw,1.6rem);line-height:1.35}

/* datum/locatie-blokjes */
.fmy-facts{gap:1rem!important;margin-bottom:2.5rem}
.fmy-facts .wp-block-column{background:rgba(255,255,255,.07);border-radius:1rem;padding:1.25rem 1.5rem}
.fmy-facts__label{margin:0;font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;opacity:.75}
.fmy-facts__value{margin:.3rem 0 0;font-size:clamp(1.15rem,2vw,1.4rem);font-weight:600}

/* awards-raster */
.entry-content .fmy-awards{list-style:none;margin:0 0 2rem;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:.6rem}
.entry-content .fmy-awards li{margin:0;background:rgba(255,255,255,.07);border-radius:.75rem;padding:.85rem 1rem;font-size:.95rem;line-height:1.3}
.fmy-red{color:var(--fmy-red);font-weight:600}

/* prijzen */
.entry-content .fmy-prices{list-style:none;margin:0 0 1.5rem;padding:0}
.entry-content .fmy-prices li{display:flex;justify-content:space-between;gap:1rem;max-width:30rem;padding:.6rem 0;border-bottom:1px solid rgba(255,255,255,.18)}
.fmy-prices strong{color:var(--fmy-peach);font-variant-numeric:tabular-nums;white-space:nowrap}
.fmy-note{font-size:.9rem;opacity:.75}

/* knoppen */
.entry-content .wp-block-button__link{background:var(--fmy-peach);color:var(--fmy-ink);border-radius:999px;font-weight:600;padding:.8em 1.7em;text-decoration:none}
.entry-content .wp-block-button__link:hover,.entry-content .wp-block-button__link:focus{background:#fff;color:var(--fmy-ink)}

/* contact */
.fmy-contact{gap:1rem!important}
.fmy-contact p{margin:0 0 .3rem}
.fmy-contact a{word-break:break-word}

/* ---- v1.2: fijnafstelling ---- */
/* knop: GP's eigen knopstijl overschrijven */
.entry-content a.wp-block-button__link:not(.has-background){background:var(--fmy-peach);color:var(--fmy-ink)}
.entry-content a.wp-block-button__link:not(.has-background):hover,
.entry-content a.wp-block-button__link:not(.has-background):focus{background:#fff;color:var(--fmy-ink)}
.entry-content .wp-block-buttons{margin-bottom:2.5rem}
/* haarlijn onderaan de visual wegwerken */
.fmy-hero__img{clip-path:inset(0 0 2px 0)}
/* kaart dichter bij de visual */
.site-content{padding-top:0}
@media (max-width:767px){
	.fmy-lang__bubble{width:min(36vw,150px)}
	.site-content{padding-top:.5rem}
}

/* ---- v1.3: sponsorblok ---- */
.fmy-sponsors-card{--fmy-pad:clamp(1.5rem,5vw,4rem)}
.separate-containers .fmy-sponsors-card .inside-article{padding:0 0 var(--fmy-pad);background:#5331D5}
.separate-containers .fmy-sponsors-card .inside-article::after{background:#5331D5}
.fmy-sponsors__top{display:block;width:100%;height:auto;border-radius:var(--fmy-radius) var(--fmy-radius) 0 0}
.fmy-sponsors-card .entry-content{padding:0 var(--fmy-pad);margin-top:0}
.fmy-sponsors-card .entry-content h2{margin-top:2.5rem}
.fmy-sponsors-card .entry-content h2::after{left:calc(-1 * var(--fmy-pad))}
.fmy-sponsors-card .wp-block-image{margin:0}
.fmy-sponsors-card .fmy-logo img{display:block;width:auto;height:auto;max-width:100%}

.fmy-major .fmy-logo img{height:clamp(56px,8vw,84px)}

.fmy-award-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2.25rem 1rem;text-align:center}
@media (max-width:767px){.fmy-award-grid{grid-template-columns:repeat(2,1fr)}}
.fmy-award{display:flex;flex-direction:column;align-items:center;gap:.8rem}
.fmy-award__title{margin:0;font-size:.85rem;line-height:1.25}
.fmy-award .fmy-logo img{max-height:44px;max-width:140px;margin:0 auto}

.fmy-media{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.75rem 3rem}
.fmy-media .fmy-logo img{height:30px}
.fmy-media .fmy-logo--tall img{height:52px}

.fmy-org{text-align:center;margin-top:3.5rem}
.fmy-org__label{margin:0 0 1.25rem;font-size:.95rem;opacity:.9}
.fmy-org .fmy-org__logo img{width:min(300px,70%);margin:0 auto}

/* ---- v1.4: groepsblokken in een klassiek thema hebben een extra binnenwrapper ---- */
.fmy-award-grid:has(> .wp-block-group__inner-container),
.fmy-media:has(> .wp-block-group__inner-container),
.fmy-award:has(> .wp-block-group__inner-container){display:block}
.fmy-award-grid > .wp-block-group__inner-container{display:grid;grid-template-columns:repeat(4,1fr);gap:2.25rem 1rem;text-align:center}
@media (max-width:767px){.fmy-award-grid > .wp-block-group__inner-container{grid-template-columns:repeat(2,1fr)}}
.fmy-award > .wp-block-group__inner-container{display:flex;flex-direction:column;align-items:center;gap:.8rem}
.fmy-media > .wp-block-group__inner-container{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:1.75rem 3rem}
.fmy-sponsors-card .wp-block-group > *,
.fmy-sponsors-card .wp-block-group__inner-container > *{max-width:none;margin-left:0;margin-right:0}
.fmy-award .fmy-logo img,.fmy-org .fmy-org__logo img{margin-left:auto;margin-right:auto}
