/* Evidence Sports Goalkeepers v0.6 — approved concept structure, brand palette. */
.ess-destination-page{--ink:#102131;--night:#081720;--dark:#0d2635;--slate:#2b435d;--primary:#2985dc;--secondary:#3f7bb1;--accent:#00a3b8;--light:#f2f6f9;--line:#c8d8e4;--font:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;box-sizing:border-box;width:100%;max-width:none;margin:0;background:#fff;color:var(--ink);font:400 15px/1.42 var(--font);container-type:inline-size;isolation:isolate}
.ess-destination-page.ess-full{position:relative;left:50%;width:100vw!important;max-width:100vw!important;margin-left:-50vw!important;margin-right:-50vw!important}.ess-destination-page.ess-contained{max-width:1440px;margin-inline:auto}.ess-destination-page *{box-sizing:border-box}.ess-destination-page img{display:block;max-width:100%}.ess-destination-page h1,.ess-destination-page h2,.ess-destination-page h3,.ess-destination-page p{margin-top:0}.ess-destination-page h1,.ess-destination-page h2,.ess-destination-page h3{letter-spacing:-.025em}.ess-destination-page h2{margin-bottom:12px;font:700 clamp(24px,2.25cqi,34px)/1.05 var(--font);text-transform:uppercase}.ess-destination-page h3{font:700 16px/1.15 var(--font)}.ess-destination-page a{color:inherit}.ess-destination-page a:focus-visible,.ess-destination-page button:focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.wp-block-shortcode:has(>.ess-destination-page),.wp-block-post-content:has(.ess-destination-page),.entry-content:has(.ess-destination-page){width:100%!important;max-width:none!important}body:has(.ess-destination-page){overflow-x:hidden}body:has(.ess-destination-page) main,body:has(.ess-destination-page) .site-main,body:has(.ess-destination-page) .content-area,body:has(.ess-destination-page) article,body:has(.ess-destination-page) .entry-content{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
.ess-dest-header{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px;min-height:58px;padding:9px clamp(22px,5.8cqi,74px);background:#071923;color:#fff;border-bottom:1px solid #36576b}.ess-dest-header>div:first-child{display:flex;flex-direction:column}.ess-dest-header .ess-brand{font-size:24px;font-weight:750;letter-spacing:-.025em;text-decoration:none}.ess-dest-header>div:first-child span{font-size:8px;letter-spacing:.15em}.ess-dest-header nav{display:flex;gap:26px}.ess-dest-header nav a,.ess-account a{font-size:11px;font-weight:600;text-decoration:none}.ess-account{display:flex;justify-content:flex-end;align-items:center;gap:22px}.ess-account .ess-header-join{padding:10px 22px;border-radius:3px;background:var(--primary)}
.ess-dest-hero{position:relative;display:grid;grid-template-columns:minmax(0,47fr) minmax(0,53fr);min-height:365px;background:var(--night);color:#fff;overflow:hidden}.ess-dest-hero>div{z-index:2;align-self:center;padding:32px 12px 34px clamp(22px,5.8cqi,74px)}.ess-kicker{display:flex;align-items:center;gap:10px;margin-bottom:8px;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.ess-kicker:before{content:"";width:23px;height:3px;background:var(--accent);flex:0 0 auto}.ess-dest-hero h1{margin:0 0 13px;font:700 clamp(30px,3.1cqi,48px)/1.02 var(--font);text-transform:uppercase}.ess-dest-hero h1 span{color:#82bce8}.ess-dest-hero>div>p:not(.ess-kicker){max-width:430px;margin-bottom:14px;font-size:14px}.ess-button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:42px;margin:2px 8px 0 0;padding:10px 18px;border:1px solid var(--primary);border-radius:3px;background:var(--primary);color:#fff!important;text-decoration:none;font-size:12px;font-weight:700}.ess-button:hover{background:#176fc1}.ess-button.ess-secondary{border-color:#9db8ca;background:transparent}.ess-dest-hero figure{position:relative;margin:0;min-height:365px}.ess-dest-hero figure:before{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(90deg,var(--night) 0%,transparent 42%),linear-gradient(0deg,#0719237d,transparent 38%)}.ess-dest-hero figure img{width:100%;height:100%;object-fit:cover;object-position:50% 42%}.ess-dest-hero figcaption{position:absolute;z-index:2;right:5%;bottom:16px;font-size:8px;letter-spacing:.15em;white-space:nowrap;color:#dae7ef}
.ess-section{padding:24px clamp(22px,5.8cqi,74px)}.ess-section.ess-light{background:linear-gradient(100deg,#fff,#eef3f6)}.ess-section>.ess-lead{max-width:720px;margin-bottom:12px;font-size:14px}.ess-note{margin:10px 0 0;font-size:11px;color:#607382}.ess-small{font-size:11px;color:#c1d1dc}
.ess-age-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;margin:16px 0 4px}.ess-age-grid article{position:relative;height:170px;overflow:hidden;background:var(--dark)}.ess-age-grid img{width:100%;height:100%;object-fit:cover}.ess-age-grid article:nth-child(1) img{object-position:0 50%}.ess-age-grid article:nth-child(2) img{object-position:33.3% 50%}.ess-age-grid article:nth-child(3) img{object-position:66.6% 50%}.ess-age-grid article:nth-child(4) img{object-position:100% 50%}.ess-age-grid article:after{content:"";position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#07131be8)}.ess-age-grid h3{position:absolute;z-index:1;left:10px;right:10px;bottom:10px;margin:0;color:#fff;text-align:center;font-size:14px}
.ess-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px;margin-top:12px}.ess-tile{position:relative;display:flex;flex-direction:column;min-height:150px;padding:64px 13px 12px;overflow:hidden;border:1px solid var(--line);border-radius:3px;background:#fff;box-shadow:0 3px 10px #16314915}.ess-tile:before{content:"";position:absolute;inset:0 0 auto;height:54px;background-image:linear-gradient(#0b21301c,#0b21301c),url('goalkeeper-age-stages.png');background-size:370% auto;background-position:0 40%}.ess-tile:nth-child(2):before{background-position:25% 40%}.ess-tile:nth-child(3):before{background-position:45% 40%}.ess-tile:nth-child(4):before{background-position:65% 40%}.ess-tile:nth-child(5):before{background-position:82% 40%}.ess-tile:nth-child(6):before{background-position:100% 40%}.ess-tile .ess-kicker{margin:0 0 5px;color:var(--secondary);font-size:9px}.ess-tile .ess-kicker:before{display:none}.ess-tile h3{margin:0 0 5px;text-transform:uppercase}.ess-tile p{margin-bottom:8px;font-size:11px;line-height:1.3}.ess-text-link{display:inline-block;margin-top:auto;color:var(--primary)!important;text-decoration:none;font-size:11px;font-weight:700}
.ess-feature{position:relative;display:grid;grid-template-columns:.75fr 1.25fr;gap:26px;min-height:220px;padding-left:29%;background:linear-gradient(90deg,#0b2534c9,#07151ff2),url('Goalkeeper in air.png') left 44%/45% auto no-repeat;color:#fff}.ess-feature>div:first-child{grid-column:1/-1}.ess-feature>div:first-child p{max-width:580px}.ess-feature .ess-role-panel{grid-column:1/-1;margin-top:-8px}.ess-role-map{display:grid;grid-template-columns:repeat(6,1fr);gap:7px;margin:8px 0 0;padding:0;list-style:none}.ess-role-map li{padding:34px 5px 7px;border:1px solid #66879c;border-radius:3px;background:#0e2b3bdb;text-align:center;font-size:10px}.ess-feature .ess-button{position:absolute;right:5.8%;top:75px;background:var(--primary)}
.ess-steps{display:flex;margin:13px 0 0;padding:0;counter-reset:step;list-style:none}.ess-steps li{position:relative;flex:1;padding:10px 20px 10px 36px;border:1px solid #c6d2da;background:#fff;color:var(--ink);font-size:10px;font-weight:700}.ess-steps li:before{counter-increment:step;content:counter(step);position:absolute;left:9px;top:8px;display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--primary);color:#fff}.ess-steps li:not(:last-child):after{content:"→";position:absolute;z-index:2;right:-9px;top:6px;color:var(--accent);font-size:18px}.ess-feature>.ess-steps{grid-column:1/-1;display:none}
.ess-learn .ess-grid{grid-template-columns:repeat(3,1fr)}.ess-learn .ess-tile{min-height:130px;padding:22px 44% 14px 16px;background:var(--dark);color:#fff;border-color:#315064}.ess-learn .ess-tile:before{inset:0 0 0 auto;width:42%;height:auto;background-size:500% auto}.ess-learn .ess-tile:nth-child(1):before{background-position:0 50%}.ess-learn .ess-tile:nth-child(2):before{background-position:45% 50%}.ess-learn .ess-tile:nth-child(3):before{background-position:100% 50%}.ess-learn .ess-tile h3{font-size:16px}.ess-learn .ess-tile p{font-size:11px}.ess-learn .ess-text-link{margin-top:auto;padding:7px 10px;background:var(--primary);color:#fff!important;border-radius:2px;width:max-content}
.ess-analysis{display:grid;grid-template-columns:1.05fr .95fr;gap:36px;min-height:185px;padding-left:36%;background:linear-gradient(90deg,#07182388,#071823f2),url('goalkeepers-action.png') left 46%/47% auto no-repeat;color:#fff}.ess-analysis>div{align-self:center}.ess-analysis h2{margin-bottom:8px}.ess-analysis p{font-size:12px}.ess-analysis-panel{padding:14px;border-left:3px solid var(--accent);background:#07151dc7}.ess-analysis .ess-steps{margin-top:8px}.ess-analysis .ess-steps li{padding:32px 5px 8px;text-align:center}.ess-analysis .ess-steps li:before{left:calc(50% - 10px);top:6px}.ess-analysis .ess-note{color:#bed0dc}
.ess-section[id$="-profile"]{position:relative;overflow:hidden;padding-right:19%;background:linear-gradient(90deg,#fff 75%,#ffffff6e),url('goalkeeper-age-stages.png') right 55%/50% auto no-repeat}.ess-section[id$="-profile"] .ess-grid{grid-template-columns:repeat(3,1fr)}.ess-section[id$="-profile"] .ess-tile{min-height:105px;padding:13px;background:#ffffffec}.ess-section[id$="-profile"] .ess-tile:before{display:none}.ess-section[id$="-profile"] .ess-steps{margin-bottom:10px}
.ess-coaching{position:relative;display:block;overflow:hidden;padding-right:30%;background:#0a2635;color:#fff}.ess-coaching>img{position:absolute;inset:0 0 0 auto;width:28%;height:100%;object-fit:cover;object-position:100% 50%;opacity:.72}.ess-coaching>div{position:relative;z-index:1}.ess-coaching p{max-width:650px;margin-bottom:8px;font-size:12px}.ess-support-list{position:absolute;left:54%;right:-26%;top:14px;display:grid;grid-template-columns:repeat(4,1fr);margin:0;padding:0;list-style:none}.ess-support-list li{padding:24px 8px;text-align:center;border-left:1px solid #4c6a7d;font-size:10px;font-weight:700}
.ess-join{min-height:120px;padding-right:36%;background:linear-gradient(90deg,#0b2835e8,#17465bc9),url('goalkeepers-action.png') right 43%/48% auto no-repeat;color:#fff}.ess-join h2{margin-bottom:6px}.ess-join .ess-lead,.ess-join>p{max-width:560px;margin-bottom:8px;font-size:12px}.ess-join-actions{display:flex;gap:8px;flex-wrap:wrap}.ess-join .ess-button{font:inherit;font-weight:700}.ess-dest-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px clamp(22px,5.8cqi,74px);background:#071219;color:#c9d7df}.ess-dest-footer .ess-brand{font-weight:700}.ess-dest-footer p{margin:0;font-size:9px;letter-spacing:.1em}.ess-dest-footer a{font-size:10px}
@media(max-width:980px){.ess-dest-header{grid-template-columns:1fr auto}.ess-dest-header nav{display:flex;grid-column:1/-1;gap:18px;overflow-x:auto;padding:7px 0 3px;white-space:nowrap;scrollbar-width:thin}.ess-dest-hero{grid-template-columns:54fr 46fr}.ess-grid{grid-template-columns:repeat(3,1fr)}.ess-feature{padding-left:24%;background-size:48% auto}.ess-feature .ess-button{position:static}.ess-analysis{padding-left:28%}.ess-support-list{position:static;margin-top:12px}.ess-section[id$="-profile"]{padding-right:6%}}
@media(max-width:680px){.ess-dest-header{padding:11px 18px}.ess-dest-header .ess-brand{font-size:19px}.ess-dest-header>div:first-child span{display:none}.ess-account{gap:10px}.ess-account .ess-header-join{padding:7px 11px}.ess-dest-hero{display:block;min-height:520px}.ess-dest-hero>div{padding:34px 20px}.ess-dest-hero h1{font-size:clamp(29px,9cqi,38px)}.ess-dest-hero figure{position:absolute;inset:0;min-height:520px}.ess-dest-hero figure:before{background:#071720bf}.ess-section{padding:28px 20px}.ess-age-grid{grid-template-columns:repeat(2,1fr)}.ess-grid{grid-template-columns:1fr 1fr}.ess-feature,.ess-analysis{display:block;padding:28px 20px;background-color:var(--night);background-size:cover}.ess-feature .ess-role-panel{margin-top:18px}.ess-role-map{grid-template-columns:repeat(2,1fr)}.ess-learn .ess-grid,.ess-section[id$="-profile"] .ess-grid{grid-template-columns:1fr}.ess-steps{display:grid}.ess-steps li:not(:last-child):after{content:"↓";right:8px;top:auto;bottom:-12px}.ess-coaching{padding-right:20px}.ess-coaching>img{width:100%;opacity:.16}.ess-support-list{grid-template-columns:1fr 1fr}.ess-join{padding-right:20px;background-size:cover}.ess-dest-footer{flex-direction:column;align-items:flex-start}}
@media(max-width:420px){.ess-age-grid,.ess-grid{grid-template-columns:1fr}.ess-account>a:last-child{display:none}.ess-dest-hero h1{font-size:29px}}
@media(prefers-reduced-motion:reduce){.ess-destination-page *{scroll-behavior:auto!important}}@media(forced-colors:active){.ess-button,.ess-tile,.ess-role-map li,.ess-steps li{border:1px solid CanvasText}}

/* v0.6.1: deterministic media sizing under WordPress theme image rules. */
.ess-destination-page{font-size:16px}
.ess-dest-header,.ess-section,.ess-dest-footer{padding-left:max(28px,calc((100cqi - 1560px)/2));padding-right:max(28px,calc((100cqi - 1560px)/2))}
.ess-dest-hero{height:clamp(390px,29cqi,560px);min-height:0!important}
.ess-dest-hero>div{padding-left:max(28px,calc((100cqi - 1560px)/2));padding-right:20px}
.ess-dest-hero figure{position:relative;height:100%!important;min-height:0!important;overflow:hidden}
.ess-dest-hero figure img{position:absolute;inset:0;width:100%!important;max-width:none!important;height:100%!important;object-fit:cover!important;object-position:50% 42%!important}
.ess-age-grid article{background-image:linear-gradient(0deg,#07131bbd,transparent 58%),url('goalkeeper-age-stages.png');background-repeat:no-repeat;background-size:400% 100%}
.ess-age-grid article:nth-child(1){background-position:0 50%}.ess-age-grid article:nth-child(2){background-position:33.333% 50%}.ess-age-grid article:nth-child(3){background-position:66.666% 50%}.ess-age-grid article:nth-child(4){background-position:100% 50%}
.ess-age-grid article img{visibility:hidden!important;width:100%!important;height:100%!important}
.ess-coaching>img{width:28%!important;max-width:none!important;height:100%!important;object-fit:cover!important;object-position:100% 50%!important}
.ess-destination-page h2{font-size:clamp(26px,2.1cqi,38px)}
.ess-section>.ess-lead{font-size:15px}
@media(max-width:980px){.ess-dest-header,.ess-section,.ess-dest-footer{padding-left:28px;padding-right:28px}.ess-dest-hero>div{padding-left:28px}.ess-dest-hero{height:clamp(390px,42cqi,500px)}}
@media(max-width:680px){.ess-dest-hero{height:520px}.ess-dest-hero figure{position:absolute;height:520px!important}.ess-dest-header,.ess-section,.ess-dest-footer{padding-left:20px;padding-right:20px}.ess-dest-hero>div{padding-left:20px}}

/* v0.6.2: restore the approved split Age & Stage composition. */
.ess-section[id$="-age"]{display:grid;grid-template-columns:minmax(280px,32fr) minmax(560px,68fr);grid-template-rows:auto auto 1fr;column-gap:34px;align-items:start}
.ess-section[id$="-age"]>.ess-kicker,.ess-section[id$="-age"]>h2,.ess-section[id$="-age"]>.ess-lead{grid-column:1}
.ess-section[id$="-age"]>.ess-kicker{grid-row:1}.ess-section[id$="-age"]>h2{grid-row:2}.ess-section[id$="-age"]>.ess-lead{grid-row:3}
.ess-section[id$="-age"]>.ess-age-grid{grid-column:2;grid-row:1/4;align-self:stretch;margin:0}
.ess-section[id$="-age"]>.ess-note{display:none}
.ess-age-grid article{height:100%;min-height:190px;background-size:400% auto;background-position-y:50%}
@media(max-width:980px){.ess-section[id$="-age"]{grid-template-columns:1fr;grid-template-rows:auto}.ess-section[id$="-age"]>.ess-kicker,.ess-section[id$="-age"]>h2,.ess-section[id$="-age"]>.ess-lead,.ess-section[id$="-age"]>.ess-age-grid{grid-column:1;grid-row:auto}.ess-section[id$="-age"]>.ess-age-grid{margin-top:12px}.ess-age-grid article{min-height:180px}}
@media(max-width:680px){.ess-age-grid article{min-height:210px}}

/* v0.6.4: keep real page navigation above theme and media overlays. */
.ess-dest-header{position:relative;z-index:20}.ess-dest-header a,.ess-dest-footer a{position:relative;z-index:21;pointer-events:auto!important}.ess-dest-footer{position:relative;z-index:20}
