/*
Theme Name: FEI Group IX
Description: FEI Regional Group IX editorial site.
Version: 1.0.18
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: feigroupix
*/
@font-face{font-family:Fraunces;font-style:normal;font-weight:300 500;font-display:swap;src:url('fonts/fraunces-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:Fraunces;font-style:normal;font-weight:300 500;font-display:swap;src:url('fonts/fraunces-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/instrument-sans-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Instrument Sans';font-style:normal;font-weight:400 700;font-display:swap;src:url('fonts/instrument-sans-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
:root{--purple:#48125c;--ink:#27232c;--paper:#faf8f5;--line:#ddd6df}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit;cursor:pointer}.notice{background:#eae3ee;text-align:center;padding:7px;font-size:12px;color:var(--purple)}header{padding:26px 6%;display:flex;align-items:center;gap:35px;background:white;border-bottom:1px solid var(--line)}.brand{font-size:23px;font-weight:800;line-height:1.05;color:var(--purple);letter-spacing:-1px}.brand small{display:block;font-size:10px;letter-spacing:2px;margin-top:7px}nav{margin-left:auto;display:flex;gap:28px;font-size:14px}select{border:1px solid var(--line);padding:9px;background:white}.hero{padding:75px 6% 65px;background:var(--purple);color:white;display:grid;grid-template-columns:1.6fr 1fr;gap:70px}.eyebrow{text-transform:uppercase;letter-spacing:2.3px;font-size:11px;font-weight:700}h1{font:clamp(42px,5.8vw,78px)/1.04 Georgia,serif;letter-spacing:-2px;margin:25px 0}p{max-width:580px}.hero p{color:#e1d6e6}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.btn{display:inline-block;padding:13px 20px;border:1px solid #8e709a;background:transparent;color:inherit;font-weight:600;font-size:14px}.light{background:white;color:var(--purple);border-color:white}.hero aside{border-left:1px solid #81688b;padding:20px 0 0 35px;align-self:center}.hero aside strong{font:85px/1 Georgia,serif;display:block}.hero aside p{font-size:15px}main{padding:55px 6%}.heading{display:flex;align-items:center;justify-content:space-between;margin-bottom:25px}h2{font:36px/1.15 Georgia,serif;margin:0}.heading a{color:var(--purple);font-size:14px;border-bottom:1px solid}.grid{display:grid;grid-template-columns:1.5fr 1fr;gap:45px}.feature{background:#e9e1ec;padding:38px;min-height:275px;border-top:4px solid var(--purple)}h3{font:28px/1.2 Georgia,serif;margin:18px 0}.tag{font-size:11px;letter-spacing:1.5px;text-transform:uppercase;color:var(--purple)}.empty{border:1px solid var(--line);padding:24px;background:white}.empty p{font-size:14px;color:#666}.submission{margin-top:55px;padding:35px;background:white;border:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:30px}.submission h2{font-size:30px}.submission p{margin-bottom:0}.purple{background:var(--purple);color:white}.feds{padding:45px 0 10px}.feds p{max-width:none;color:#68616b}.dialog{border:0;padding:32px;max-width:540px;width:90%;box-shadow:0 15px 90px #0004}.dialog::backdrop{background:#26142bbb}.dialog label{display:block;font-size:13px;margin:16px 0}.dialog input,.dialog textarea{display:block;width:100%;padding:11px;border:1px solid var(--line);font:inherit}.dialog p{font-size:14px}footer{padding:28px 6%;border-top:1px solid var(--line);display:flex;justify-content:space-between;font-size:12px}.close{float:right;border:0;background:none;font-size:24px}@media(max-width:780px){header{flex-wrap:wrap;gap:20px}nav{order:3;width:100%;gap:18px;overflow:auto;margin:0}header select{margin-left:auto}.hero{grid-template-columns:1fr;padding-top:45px;gap:25px}.hero aside{display:none}.grid{grid-template-columns:1fr}.submission{display:block}.submission .btn{margin-top:20px}h1{letter-spacing:-1px}footer{gap:20px}}

/* Reference-led design revision */

:root{--purple:#4a1b5c;--ink:#1e1b22;--paper:#fff;--line:#e2dfe4}body{font-family:'Instrument Sans',Arial,sans-serif;color:var(--ink)}h1,h2,h3,.brand{font-family:Fraunces,Georgia,serif;font-weight:400}.notice{background:#e7ddec}.utility{background:#1e1b22;color:#fff;padding:12px 6%;display:flex;gap:26px;align-items:center;font-size:12px}.utility span{margin-right:auto;color:#bdb7c2}.utility select{background:transparent;color:white;border:0;padding:0}.utility option{color:#222}header{padding:23px 6%}.brand{display:flex;align-items:center;gap:13px;font-size:25px;letter-spacing:0;color:var(--ink)}.monogram{display:grid;place-items:center;width:47px;height:51px;background:var(--purple);color:white;border-radius:5px;font:bold 27px Georgia}.brand small{font:10px/1.8 'Instrument Sans',Arial,sans-serif;color:#6d6770;letter-spacing:1.5px}.hero{background:white;color:var(--ink);padding:75px 6%;gap:65px;grid-template-columns:1.2fr 1fr;align-items:center}.hero h1{font-weight:300;font-size:clamp(42px,5.4vw,80px);line-height:.99}.hero p{color:#3d3a42;font-size:18px}.eyebrow{color:var(--purple)}.hero-photo{background:#e8e5e9;min-height:420px;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-direction:column;color:#756c7b;text-align:center;font-size:11px;letter-spacing:1.6px}.hero-photo .horse{font:100px Georgia;color:#c0b4c7;margin-bottom:15px}.hero-photo small{letter-spacing:0;margin-top:10px}.btn{border-radius:999px;padding:13px 22px;border-color:var(--ink)}.light,.purple{background:var(--purple);color:white;border-color:var(--purple)}main{padding:0}.section{padding:65px 6%}.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:30px 6%;gap:30px}.stats strong{font:40px Fraunces,Georgia,serif;display:block;color:var(--purple)}.stats span{font-size:14px;color:#655f69}.about{display:grid;grid-template-columns:1fr 1.3fr;gap:80px}.about h2{font-size:40px;margin-top:16px}.about p{margin-top:0}.tinted{background:#f6f4f7}.section-title{max-width:650px}.section-title h2{margin:15px 0 28px}.programmes{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{background:white;border:1px solid var(--line);padding:26px;border-radius:5px}.card h3{font-size:24px}.card p{font-size:14px;color:#625c66}.federations{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:30px}.federations a{border:1px solid var(--line);border-radius:4px;padding:15px 18px;display:flex;justify-content:space-between;font-size:14px}.federations small{color:#847a88}.events-list{border-top:1px solid var(--line)}.event-row{display:grid;grid-template-columns:125px 1fr 140px;gap:20px;border-bottom:1px solid var(--line);padding:22px 0;align-items:center}.event-row strong{font-weight:600}.event-row small{display:block;color:#777}.pill{font-size:10px;text-transform:uppercase;letter-spacing:1px;background:#eee7f1;padding:5px 12px;border-radius:30px;justify-self:end}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.photo{height:190px;background:#e7e3e9;display:grid;place-items:center;font-size:11px;letter-spacing:2px;color:#81758a;border-radius:5px;margin-bottom:20px}.news-grid h3{font-size:25px}.submission{margin:0;border:0;background:#f6f4f7;padding:40px 6%}.footer-main{background:#1e1b22;color:white;padding:55px 6%;display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}.footer-main h2{max-width:410px}.footer-main a{display:block;font-size:14px;color:#d8d0dd;margin-top:12px}footer{background:#1e1b22;color:#bdb4c4;border-color:#423b47}.heading{gap:25px}.heading div{display:flex;gap:15px;align-items:center}.example{font-size:12px;color:#796982;margin:0 0 14px}@media(max-width:780px){.utility{flex-wrap:wrap;gap:14px}.utility span{display:none}header{padding:18px 6%}.hero{grid-template-columns:1fr;padding:40px 6%;gap:30px}.hero-photo{min-height:280px}.stats{gap:15px}.stats strong{font-size:30px}.stats span{font-size:12px}.about{grid-template-columns:1fr;gap:20px}.section{padding:40px 6%}.programmes,.federations{grid-template-columns:repeat(2,1fr)}.news-grid{grid-template-columns:1fr}.heading{align-items:flex-start;flex-direction:column}.event-row{grid-template-columns:80px 1fr}.pill{grid-column:2;justify-self:start}.footer-main{grid-template-columns:1fr}.hero h1{font-size:48px}.brand{font-size:22px}.card{padding:18px}.card h3{font-size:21px}}

.calendar-controls{display:flex;align-items:end;gap:14px;flex-wrap:wrap;margin:28px 0}.calendar-controls label{display:grid;gap:6px;font-size:13px;font-weight:600}.calendar-controls select,.calendar-controls input{min-width:170px;padding:10px 13px;border:1px solid var(--line);border-radius:4px;background:white;color:var(--ink)}.calendar-controls .btn{padding:9px 18px}.calendar-empty{background:white;border:1px solid var(--line);border-radius:5px;padding:34px;max-width:800px}.calendar-empty h3{font-size:28px}.calendar-empty p{color:#665e69}.calendar-empty a{color:var(--purple);text-decoration:underline}.workflow{background:#faf8fb}.workflow-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin:32px 0}.workflow-step{padding:26px;background:white;border:1px solid var(--line);border-top:3px solid var(--purple)}.workflow-step b{color:var(--purple);font-size:13px;letter-spacing:1px}.workflow-step h3{font-size:23px}.workflow-step p,.workflow-note{font-size:14px;color:#635b66}.workflow-note{max-width:none;margin:0}@media(max-width:780px){.workflow-grid{grid-template-columns:1fr 1fr}.calendar-controls label{flex:1 1 150px}.calendar-controls select,.calendar-controls input{width:100%;min-width:0}}@media(max-width:520px){.workflow-grid{grid-template-columns:1fr}}

/* Calendar filter controls use one consistent visual scale. */
.calendar-controls{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:end;gap:14px;margin:28px 0}
.calendar-controls label{display:grid;gap:8px;min-width:0;font:600 13px/1.25 'Instrument Sans',Arial,sans-serif}
.calendar-controls select,.calendar-controls input,.calendar-controls .btn{box-sizing:border-box;width:100%;min-width:0;height:48px;margin:0;padding:0 13px;border:1px solid #cfc9d3;border-radius:4px;background:#fff;color:var(--ink);font:500 15px/1.2 'Instrument Sans',Arial,sans-serif}
.calendar-controls .btn{white-space:nowrap;text-align:center}
.calendar-controls input::-webkit-datetime-edit{font:inherit;color:var(--ink)}
@media(max-width:780px){.calendar-controls{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:430px){.calendar-controls{grid-template-columns:1fr}}

/* WordPress content and submission components. */
.site-header{position:relative;z-index:2}.site-header nav{flex-wrap:wrap}.site-header .contact-link{white-space:nowrap}
.page-content{min-height:55vh;max-width:1200px;margin:auto}.page-content h1{font-size:clamp(42px,5vw,72px);line-height:1.08;margin:18px 0 30px}.page-content .entry-content{max-width:820px}.entry-content p{max-width:none}.entry-content img,.news-card img{max-width:100%;height:auto;border-radius:5px}.entry-content a:not(.btn){color:var(--purple);text-decoration:underline}
.language-select{min-width:115px}.language-select select{color:white!important;background:#1e1b22!important;border:0!important;font:inherit!important}.language-select img{display:none!important}
.news-card h3{margin:14px 0 8px}.news-card p{font-size:14px;color:#625c66}.news-grid .news-card img{width:100%;height:190px;object-fit:cover}
.event-row[hidden],.filter-empty[hidden]{display:none!important}.event-row h3{margin:0;font-size:24px}.event-row p{margin:2px 0}.event-row .event-date{font:26px Fraunces,Georgia,serif;color:var(--purple)}.event-row a{text-decoration:underline;color:var(--purple)}.filter-empty{font-size:14px;color:#625c66}
.event-details{display:grid;grid-template-columns:125px 1fr;gap:12px 20px;margin:30px 0;padding:25px;background:#f6f4f7}.event-details dt{font-weight:700}.event-details dd{margin:0}
.fei-form{background:#f6f4f7;padding:32px;border:1px solid var(--line);border-radius:5px;max-width:800px}.fei-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.fei-form label{display:grid;gap:7px;font:600 14px/1.4 'Instrument Sans',Arial,sans-serif}.fei-form label.full{grid-column:1/-1}.fei-form input,.fei-form select,.fei-form textarea{width:100%;min-width:0;max-width:100%;box-sizing:border-box;border:1px solid #cfc9d3;border-radius:4px;background:white;color:var(--ink);padding:12px;font:400 16px/1.4 'Instrument Sans',Arial,sans-serif}.fei-form textarea{min-height:170px}.fei-form .btn{margin-top:25px;cursor:pointer}.fei-form .form-note{font-size:14px;color:#635b66;max-width:none}.fei-form input[type=file]{padding:10px}.fei-form .honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.form-message{max-width:800px;padding:16px 20px;background:#eee7f1;color:var(--purple);border-left:3px solid var(--purple);margin-bottom:24px}
@media(max-width:780px){.site-header nav{order:3;width:100%;gap:15px}.site-header .contact-link{margin-left:auto}.federations{grid-template-columns:repeat(2,minmax(0,1fr))}.federations a{display:grid;gap:3px}.fei-form .form-grid{grid-template-columns:1fr}.fei-form label.full{grid-column:auto}.event-row{grid-template-columns:85px 1fr}.event-row .pill{grid-column:2}}
@media(max-width:520px){.federations{grid-template-columns:1fr}.utility{justify-content:space-between}.utility a:nth-of-type(n+2){display:none}.site-header nav{overflow:auto;flex-wrap:nowrap}.site-header nav a{white-space:nowrap}.contact-link{display:none}.fei-form{padding:22px}.event-details{grid-template-columns:1fr;gap:2px}.event-details dd{margin-bottom:12px}}

.legal-links{display:flex;flex-wrap:wrap;gap:16px}.legal-links a{text-decoration:underline;text-underline-offset:3px}footer{flex-wrap:wrap;gap:16px}

/* Keep desktop navigation in view and use a compact mobile dropdown. */
.site-header{position:sticky;top:0;z-index:100;box-shadow:0 3px 12px rgba(30,27,34,.06)}
body.admin-bar .site-header{top:32px}
.mobile-menu-toggle,.mobile-contact-link{display:none}
html{scroll-padding-top:120px}
@media(min-width:781px) and (max-width:1150px){html{scroll-padding-top:180px}}
@media(max-width:780px){
  html{scroll-padding-top:88px}
  .site-header,body.admin-bar .site-header{position:sticky;top:0;display:flex;flex-wrap:nowrap;justify-content:space-between;gap:12px;padding:12px 6%;min-height:76px}
  body.admin-bar .site-header{top:46px}
  .site-header .brand{font-size:21px;gap:9px;min-width:0}
  .site-header .monogram{width:40px;height:44px;flex:none;font-size:23px}
  .site-header .brand small{font-size:8px;letter-spacing:.8px}
  .mobile-menu-toggle{display:flex;align-items:center;justify-content:center;gap:9px;flex:none;min-height:44px;padding:8px 12px;border:1px solid var(--line);border-radius:999px;background:white;color:var(--ink);font-size:14px;font-weight:600}
  .mobile-menu-toggle:focus-visible,.site-header nav a:focus-visible{outline:2px solid var(--purple);outline-offset:3px}
  .menu-icon{display:block;width:16px;height:12px;border-top:2px solid currentColor;border-bottom:2px solid currentColor;position:relative}
  .menu-icon:after{content:"";position:absolute;left:0;right:0;top:3px;border-top:2px solid currentColor}
  .site-header.menu-open .menu-icon{height:16px;border:0}
  .site-header.menu-open .menu-icon:before,.site-header.menu-open .menu-icon:after{content:"";position:absolute;left:0;right:0;top:7px;border-top:2px solid currentColor;transform:rotate(45deg)}
  .site-header.menu-open .menu-icon:after{transform:rotate(-45deg)}
  .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;width:100%;max-height:calc(100dvh - 76px);margin:0;padding:7px 6% 16px;overflow-y:auto;background:white;box-shadow:0 12px 18px rgba(30,27,34,.14)}
  .site-header.menu-open nav{display:grid;grid-template-columns:1fr;gap:0}
  .site-header nav a{display:block;min-height:48px;padding:13px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:white;font-size:16px;line-height:1.3;text-align:left;white-space:normal}
  .site-header nav .mobile-contact-link{display:block;color:var(--purple);font-weight:700}
  .site-header .contact-link{display:none}
}
@media(max-width:400px){.site-header .brand small{display:none}.site-header .brand{font-size:20px}}

/* Member federation cards: local flags under a pale white veil. */
.federations a{min-height:76px;align-items:center;gap:12px;background-color:#fff;background-image:linear-gradient(rgba(255,255,255,.82),rgba(255,255,255,.82)),var(--fed-flag,none);background-position:center;background-size:cover;border:1px solid #ded9e1;color:#26212a;font-weight:600;line-height:1.35;transition:box-shadow .18s ease,border-color .18s ease}
.federations a small{color:#544a59;font-size:11px;font-weight:600;white-space:nowrap}
.federations a:hover{box-shadow:0 5px 15px rgba(41,28,48,.07);border-color:#bdaac5}
.federations a:focus-visible{outline:3px solid var(--purple);outline-offset:3px}
@media(prefers-reduced-motion:reduce){.federations a{transition:none}}

/* Keep the full 3:2 homepage photograph visible at every screen width. */
.hero-photo.has-image{display:block;min-height:0;overflow:hidden;line-height:0}
.hero-photo.has-image img{display:block;width:100%;height:auto}

/* News photos fill the article width; the viewer preserves the full image. */
.news-photo{margin:0 0 24px;width:100%}
.news-photo-link{display:block;cursor:zoom-in;border-radius:5px}
.news-photo-link:focus-visible{outline:3px solid var(--purple);outline-offset:4px}
.single-post .page-content .news-photo .wp-post-image{display:block;width:100%;max-width:100%;height:auto;border-radius:5px}
.news-photo figcaption{margin-top:8px;font-size:13px;color:#625c66}
.photo-viewer{width:96vw;max-width:1600px;max-height:96dvh;margin:auto;padding:12px;border:0;border-radius:8px;background:#1e1b22;color:white;overflow:auto}
.photo-viewer::backdrop{background:rgba(0,0,0,.88)}
.photo-viewer img{display:block;width:100%;height:auto;max-height:calc(96dvh - 82px);object-fit:contain}
.photo-viewer-tools{position:sticky;top:0;left:0;display:flex;justify-content:flex-end;gap:10px;margin-bottom:12px;background:#1e1b22;z-index:1}
.photo-viewer-tools button{min-height:40px;padding:7px 16px;border:1px solid #aaa;border-radius:999px;background:#fff;color:#1e1b22;font-size:14px}
.photo-viewer-tools button:focus-visible{outline:3px solid #fff;outline-offset:3px}
body.photo-viewer-open{overflow:hidden}

.photo-viewer.is-zoomed img{width:auto;max-width:none;max-height:none;height:auto}

/* Supplied FEI Group IX logo: preserve the original proportions and clear space. */
.site-header .brand{flex:none}
.site-header .brand-logo{display:block;width:154px;height:auto;max-width:100%}
@media(max-width:780px){.site-header .brand-logo{width:116px}}

.fei-cookie-settings,.fei-translation-consent{border:0;background:none;color:inherit;padding:0;font:inherit;text-decoration:underline;text-underline-offset:3px}
.fei-cookie-settings:focus-visible,.fei-translation-consent:focus-visible{outline:2px solid currentColor;outline-offset:4px}
.language-select:has(select) .fei-translation-consent{display:none}
