/*
Theme Name: Ultramaraton Generała
Theme URI: https://example.org/
Author: Projekt dedykowany
Description: Autorski motyw sportowo-historyczny wydarzenia Ultramaraton Generała w Lusowie.
Version: 2.5.0
Requires at least: 6.2
Requires PHP: 7.4
Text Domain: ultramaraton-generala
License: GPL-2.0-or-later
*/
:root{--green:#26382f;--dark:#17271e;--cream:#f3f0e8;--red:#a72d32;--gold:#b59a63;--ink:#202321}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}button{font:inherit}.container{width:min(1320px,calc(100% - 88px));margin-inline:auto}.skip-link{position:absolute;left:-9999px;top:0;background:#fff;z-index:100}.skip-link:focus{left:8px}.site-header{background:#f6f3eb;position:relative;z-index:20;box-shadow:0 1px 8px #0000000b}.header-inner{min-height:88px;max-width:1480px;margin:auto;padding:0 34px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:18px;min-width:420px;color:var(--green)}.eagle-ribbon{align-self:stretch;min-height:88px;width:57px;display:grid;place-items:center;color:white;font-size:35px;background:#a21d29;position:relative}.eagle-ribbon:after{content:'';position:absolute;bottom:-13px;left:0;border-left:28.5px solid #a21d29;border-right:28.5px solid #a21d29;border-bottom:13px solid transparent}.brand-title{font:600 21px/.96 Oswald,Impact,sans-serif;letter-spacing:-.4px;transform:skew(-5deg)}.brand-title strong{font-size:28px}.brand-caption{border-left:1px solid #b8b4a8;padding-left:20px;font-size:10px;font-weight:800;letter-spacing:2px;line-height:1.5}.primary-nav{display:flex;align-items:center;gap:30px}.nav-list{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:25px}.nav-list a{font-size:13px;font-weight:500;white-space:nowrap}.nav-list a:hover,.nav-list .current-menu-item>a{color:var(--red)}.button{min-height:50px;padding:14px 27px;display:inline-flex;align-items:center;justify-content:center;gap:18px;border-radius:4px;font-weight:800;font-size:13px;line-height:1.2;letter-spacing:.2px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-red{background:var(--red);color:#fff}.button-red:hover{background:#861c26}.nav-cta{min-width:132px}.button-outline{color:#fff;border:1px solid #c4b487;background:#12261c40}.menu-toggle{display:none}.hero{position:relative;min-height:550px;background-image:linear-gradient(90deg,#112019 0%,#1b2b20 38%,#17251c33 75%),var(--hero-image);background-position:center,right center;background-size:cover,60% auto;background-repeat:no-repeat;background-color:#1d2c22;color:#fff;overflow:hidden}.hero-general{position:absolute;inset:0 auto 0 0;width:28%;background-size:cover;background-position:center 34%;filter:grayscale(1) sepia(.2);opacity:.45;mask-image:linear-gradient(90deg,#000 0%,#0009 58%,transparent 100%)}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0e1d18b3 0%,#0c201a8a 43%,transparent 86%)}.hero-inner{position:relative;display:flex;align-items:center;justify-content:space-between;min-height:550px}.hero-content{padding:65px 0 65px 23%;max-width:920px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:4px;line-height:1.7}.eyebrow-gold{color:#e5d7af}.gold-rule{width:56px;height:2px;background:var(--gold);margin:20px 0 14px}.hero h1{font:700 clamp(53px,6vw,93px)/1.05 Oswald,Impact,sans-serif;letter-spacing:-1.5px;transform:skew(-4deg);margin:0;text-shadow:0 4px 20px #0005}.red-swoosh{width:160px;height:7px;background:var(--red);clip-path:polygon(0 60%,100% 0,83% 38%,100% 70%,24% 100%);transform:rotate(-4deg);margin:12px 0 18px 34%}.hero-subtitle{max-width:560px;font-style:italic;font-size:17px;line-height:1.7;color:#f3f0e8;margin:0 0 28px}.hero-actions{display:flex;gap:18px;flex-wrap:wrap}.hero-actions .button{min-width:180px}.hero-location{position:absolute;right:0;bottom:55px;display:flex;gap:14px;align-items:center;background:#f3f0e8ed;color:var(--green);padding:16px 22px;border-radius:2px}.location-pin{color:var(--green);font-size:30px}.hero-location strong{font-size:16px;letter-spacing:2px;display:block}.hero-location small{display:block;font-size:10px;letter-spacing:2px}.event-facts{background:#f9f7f1}.facts-grid{display:grid;grid-template-columns:repeat(3,1fr);min-height:118px;align-items:center}.fact{display:flex;justify-content:center;align-items:center;gap:25px;min-height:74px}.fact+.fact{border-left:1px solid #a8a9a1}.fact-icon{font-size:42px;line-height:1;color:var(--red);font-family:Arial}.fact-label{display:block;color:var(--red);font-weight:800;font-size:11px;letter-spacing:3px}.fact strong{display:block;font-size:23px;line-height:1.22;color:var(--green)}.intro-section{background:#f0ede5;overflow:hidden}.intro-grid{min-height:286px;display:grid;grid-template-columns:53% 47%;align-items:center}.intro-copy{padding:45px 25px 40px 0;position:relative;z-index:1}.section-kicker{font-size:12px;letter-spacing:3px;color:var(--red);font-weight:800;margin:0 0 12px}.section-kicker span{display:inline-block;background:var(--green);width:42px;height:1px;vertical-align:middle;margin-left:15px}.intro-copy h2,.section-heading h2{font:600 clamp(36px,4vw,55px)/1.1 Oswald,sans-serif;color:var(--green);margin:0 0 18px}.intro-copy p:not(.section-kicker){max-width:660px;margin:0;font-size:16px}.history-photo{height:100%;min-height:280px;background-size:cover;background-position:center;filter:grayscale(1) sepia(.2);mask-image:linear-gradient(90deg,transparent,#000 25%)}.features{padding:0 0 30px;background:#f0ede5}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.feature-card{height:265px;background-size:cover;background-position:center;position:relative;overflow:hidden;border-radius:5px;color:#fff;transition:transform .2s}.feature-card:hover{transform:translateY(-4px)}.feature-card:before{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#10251de8 0%,#172d225c 65%,transparent 100%)}.feature-content{position:absolute;bottom:0;left:0;right:0;padding:24px 28px}.feature-symbol{font-size:35px;color:#ead8a5;line-height:1}.feature-content h3{font:600 28px Oswald,sans-serif;margin:5px 0 2px}.feature-content p{font-size:13px;margin:0;max-width:260px}.feature-arrow{position:absolute;right:25px;bottom:24px;font-size:27px}.join-section{background:radial-gradient(ellipse at 60% 40%,#31513d 0%,#1c3227 45%,#172a20 100%);color:#fff;padding:34px 0}.join-grid{display:grid;grid-template-columns:110px 1.45fr 1fr auto;gap:30px;align-items:center}.join-map{color:#f0e8d2;border-right:1px solid #a8b3a1;padding-right:25px}.join-map svg{width:76px}.join-title{border-right:1px solid #87998b;padding-right:20px}.join-title h2{font:600 clamp(27px,3vw,43px) Oswald,sans-serif;line-height:1.1;margin:0;white-space:nowrap}.join-title .red-swoosh{margin:5px 0 0 40%;width:130px}.join-grid>p{max-width:320px;font-size:14px}.join-grid>.button{white-space:nowrap}.news-section{background:#f8f6f0;padding:65px 0 80px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:25px}.section-heading h2{margin:0}.section-heading>a{font-size:13px;font-weight:700;color:var(--red)}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{background:#fff;border:1px solid #e7e2d8;border-radius:5px;overflow:hidden}.news-card img,.news-placeholder{width:100%;height:190px;object-fit:cover}.news-placeholder{display:grid;place-items:center;background:#26382f;color:#fff;font:600 25px Oswald;text-align:center}.news-card-body{padding:22px}.news-card-body time{color:var(--red);font-size:12px}.news-card-body h3{font:600 24px Oswald;margin:6px 0 14px}.news-card-body span{font-size:12px;color:var(--red);font-weight:700}.empty-news{grid-column:1/-1;padding:25px;background:#fff;border-left:4px solid var(--gold)}.site-footer{background:#14261c;color:#e6e7df;padding:55px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:50px}.footer-brand{font:600 27px Oswald}.footer-grid p{font-size:13px;color:#becbc0}.footer-grid h3{font:600 21px Oswald;margin:0 0 14px}.footer-grid a:not(.footer-brand){display:block;font-size:13px;margin-bottom:8px}.footer-bottom{border-top:1px solid #ffffff30;margin-top:40px;padding-top:17px;font-size:11px;color:#aebcaf;display:flex;justify-content:space-between}.inner-page{min-height:55vh;padding:75px 0}.inner-page h1{font:600 clamp(40px,5vw,70px) Oswald;color:var(--green);margin:0 0 35px}.prose{max-width:900px}.prose p,.prose li{line-height:1.85}.prose img{border-radius:5px}.post-list{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.post-item{background:#fff;padding:20px}.post-item img{width:100%;height:180px;object-fit:cover}.post-item h2{font:600 27px Oswald;color:var(--green)}.read-more{color:var(--red);font-weight:700}
@media(max-width:1150px){.brand{min-width:290px}.brand-caption{display:none}.nav-list{gap:15px}.primary-nav{gap:18px}.hero-content{padding-left:18%}.join-grid{grid-template-columns:90px 1fr 1fr}.join-grid>.button{grid-column:3}.join-title{border-right:0}}
@media(max-width:900px){.container{width:min(100% - 40px,1320px)}.header-inner{min-height:75px;padding:0 20px}.eagle-ribbon{min-height:75px}.menu-toggle{display:flex;flex-direction:column;gap:5px;background:transparent;border:0;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:26px;height:2px;background:var(--green)}.primary-nav{display:none;position:absolute;top:100%;left:0;right:0;background:#f6f3eb;padding:25px 20px;box-shadow:0 10px 20px #0002;flex-direction:column;align-items:stretch}.primary-nav.is-open{display:flex}.nav-list{flex-direction:column;align-items:stretch;gap:0}.nav-list li a{display:block;padding:12px 0}.hero{background-size:cover;background-position:60% center}.hero-content{padding-left:12%;max-width:730px}.hero-general{width:40%}.hero-location{right:0;bottom:20px}.intro-grid{grid-template-columns:1fr}.history-photo{height:230px;min-height:0;mask-image:linear-gradient(0deg,#000,transparent 100%)}.intro-copy{padding:45px 0}.feature-grid{gap:12px}.feature-content{padding:18px}.feature-content h3{font-size:24px}.join-grid{grid-template-columns:75px 1fr}.join-grid>p{grid-column:2}.join-grid>.button{grid-column:2;justify-self:start}.join-title h2{white-space:normal}}
@media(max-width:620px){.brand{gap:10px;min-width:0}.brand-title{font-size:16px}.brand-title strong{font-size:22px}.eagle-ribbon{width:42px;font-size:24px}.eagle-ribbon:after{border-left-width:21px;border-right-width:21px}.hero,.hero-inner{min-height:680px}.hero{background-size:auto 100%;background-position:58% center}.hero-shade{background:linear-gradient(90deg,#0c201be8,#0c201b94)}.hero-general{width:45%;opacity:.27}.hero-inner{align-items:flex-start}.hero-content{padding:78px 0 125px}.hero h1{font-size:clamp(46px,11vw,69px)}.hero-subtitle{font-size:15px}.hero-actions{gap:10px}.hero-actions .button{min-width:0;padding:14px 18px}.hero-location{bottom:20px;right:0;padding:12px 16px}.facts-grid{grid-template-columns:1fr;gap:0;padding:12px 0}.fact{justify-content:flex-start;padding:15px 25px;min-height:80px}.fact+.fact{border-left:0;border-top:1px solid #ddd7cb}.fact strong{font-size:20px}.feature-grid,.news-grid,.footer-grid,.post-list{grid-template-columns:1fr}.feature-card{height:270px}.intro-copy h2{font-size:43px}.join-grid{grid-template-columns:1fr;gap:13px}.join-map{display:none}.join-grid>p,.join-grid>.button{grid-column:1}.join-section{padding:42px 0}.footer-grid{gap:22px}.footer-bottom{display:block}.footer-bottom span{display:block;margin-top:7px}.news-section{padding:45px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}


/* Gutenberg homepage: native editable core blocks */
.ug-editable-home{overflow:hidden}.ug-editable-home .wp-block-group{box-sizing:border-box}
.ug-editable-home .ug-hero-section{background:linear-gradient(90deg,rgba(15,28,22,.93) 0%,rgba(15,28,22,.73) 48%,rgba(15,28,22,.13) 100%),url('assets/images/hero-lake.jpg') center/cover;min-height:540px;color:#f3f0e8;display:flex;align-items:center;padding:75px max(24px,calc((100vw - 1160px)/2));position:relative}
.ug-hero-inner{width:100%;max-width:1160px!important;margin:auto!important}.ug-hero-inner>*,.ug-intro-copy>*{max-width:670px}
.ug-kicker,.ug-section-label{color:#b59a63;font-size:12px!important;letter-spacing:.25em;font-weight:800;margin-bottom:22px}
.ug-hero-title{font:700 clamp(48px,6vw,88px)/1.05 Oswald,sans-serif!important;color:#f3f0e8!important;letter-spacing:.015em;margin:0 0 22px}
.ug-hero-desc{max-width:510px;font-size:17px;line-height:1.7;color:#f3f0e8}
.ug-hero-buttons{max-width:400px;gap:12px!important;margin:30px 0!important}.ug-hero-buttons .wp-block-column{flex:0 0 auto!important}.ug-hero-buttons .wp-block-buttons{margin:0}
.ug-editable-home .wp-block-button__link{border-radius:4px;padding:14px 26px;font-weight:800;font-size:13px;text-decoration:none!important}
.ug-red .wp-block-button__link{background:#a72d32!important;color:white!important}.ug-outline .wp-block-button__link{background:transparent!important;border:1px solid #b59a63;color:#f3f0e8!important}
.ug-location{font-size:13px;letter-spacing:.18em;font-weight:700;color:#e8ddc4;margin-top:38px}
.ug-facts-section{background:#f3f0e8;padding:28px 22px}.ug-facts-cols{max-width:1160px;margin:auto!important;gap:0!important}.ug-facts-cols>.wp-block-column{padding:12px 25px;border-right:1px solid #c9c2b7}.ug-facts-cols>.wp-block-column:last-child{border:0}
.ug-fact-label{color:#a72d32;font-weight:800;font-size:12px!important;letter-spacing:.2em}.ug-fact h3{font-size:22px;color:#26382f;margin:8px 0;font-family:Inter,sans-serif}
.ug-intro-section{background:#f3f0e8;padding:65px 24px 25px}.ug-intro-cols{max-width:1160px;margin:auto!important;align-items:center;gap:40px}.ug-intro-copy h2,.ug-news-section h2{font:600 clamp(32px,4vw,52px)/1.2 Oswald,sans-serif;color:#26382f;margin:12px 0}.ug-intro-copy p{line-height:1.8;color:#29372f}.ug-intro-image img{width:100%;height:280px;object-fit:cover;filter:grayscale(1) sepia(.25)}
.ug-feature-section{background:#f3f0e8;padding:12px 24px 55px}.ug-feature-cols{max-width:1160px;margin:auto!important;gap:16px}.ug-feature-card{position:relative;overflow:hidden;border-radius:5px;background:#26382f;min-height:300px;display:flex;flex-direction:column;justify-content:end}.ug-card-image{position:absolute;inset:0;margin:0!important}.ug-card-image img{width:100%;height:100%;object-fit:cover;filter:brightness(.55)}.ug-card-copy{position:relative;z-index:1;color:white;padding:20px!important}.ug-card-copy h3{font:600 27px Oswald,sans-serif;color:white;margin:0 0 8px}.ug-card-copy p{color:#f3f0e8;font-size:14px}.ug-card-link a{color:#ead3a5;text-decoration:none;font-weight:700}
.ug-join-section{background:#26382f;color:#f3f0e8;padding:65px 24px}.ug-join-cols{max-width:1160px;margin:auto!important;align-items:center}.ug-join-copy h2{font:600 clamp(32px,4vw,50px) Oswald,sans-serif;color:#f3f0e8;margin:10px 0}.ug-join-copy p{color:#e4e0d7}
.ug-news-section{background:#fff;padding:65px max(24px,calc((100vw - 1160px)/2))}.ug-news-section>.wp-block-latest-posts{margin-top:30px}.ug-latest-posts{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;padding:0!important}.ug-latest-posts li{list-style:none;background:#f3f0e8;padding:0 0 20px}.ug-latest-posts li>a,.ug-latest-posts time{display:block;padding:12px 18px;color:#26382f}.ug-latest-posts img{width:100%;height:180px;object-fit:cover}
@media(max-width:780px){.ug-editable-home .ug-hero-section{min-height:530px;padding:55px 22px}.ug-hero-title{font-size:55px!important}.ug-hero-buttons{display:flex!important;flex-wrap:wrap!important}.ug-facts-cols>.wp-block-column{border-right:0;border-bottom:1px solid #d7d0c6}.ug-intro-cols,.ug-feature-cols,.ug-join-cols{display:block!important}.ug-feature-cols>.wp-block-column{margin-bottom:15px}.ug-intro-image img{height:230px}.ug-latest-posts{grid-template-columns:1fr}}


/* v2.1: icons added with CSS, so existing Gutenberg page content remains intact */
.ug-facts-cols>.wp-block-column .ug-fact{position:relative;padding-left:72px;min-height:80px;display:flex;flex-direction:column;justify-content:center}
.ug-facts-cols>.wp-block-column .ug-fact::before{content:"";position:absolute;left:4px;top:50%;transform:translateY(-50%);width:48px;height:48px;background-repeat:no-repeat;background-position:center;background-size:contain;pointer-events:none}
.ug-facts-cols>.wp-block-column:nth-child(1) .ug-fact::before{background-image:url('assets/icons/calendar.svg')}
.ug-facts-cols>.wp-block-column:nth-child(2) .ug-fact::before{background-image:url('assets/icons/pin.svg')}
.ug-facts-cols>.wp-block-column:nth-child(3) .ug-fact::before{background-image:url('assets/icons/mountain.svg')}
@media(max-width:780px){.ug-facts-cols>.wp-block-column .ug-fact{padding-left:66px}.ug-facts-cols>.wp-block-column .ug-fact::before{width:42px;height:42px}}

/* 2.2: Gutenberg block widgets in footer */
.ug-footer-block-editor{min-height:120px}.ug-footer-block-editor .ug-footer-widget{margin-bottom:18px}
.ug-footer-block-editor .wp-block-columns{gap:40px}.ug-footer-block-editor h1,.ug-footer-block-editor h2,.ug-footer-block-editor h3,.ug-footer-block-editor h4{color:#f3f0e8;font-family:Oswald,sans-serif}
.ug-footer-block-editor a{color:#f3f0e8;text-decoration:none}.ug-footer-block-editor a:hover{text-decoration:underline;color:#e3c28b}
.ug-footer-block-editor p,.ug-footer-block-editor li{color:#becbc0}.ug-footer-block-editor .wp-block-navigation a{color:#f3f0e8}
.ug-footer-block-editor .wp-block-social-links .wp-social-link{color:#fff}
@media(max-width:780px){.ug-footer-block-editor .wp-block-columns{display:block}.ug-footer-block-editor .wp-block-column{margin-bottom:24px}}

/* v2.4: Gutenberg feature cards: edge-to-edge image and whole-card navigation */
.ug-editable-home .ug-feature-cols > .wp-block-column { min-width:0; }
.ug-editable-home .ug-feature-card {
  position:relative!important; display:block!important; isolation:isolate;
  height:300px!important; min-height:300px!important;
  padding:0!important; margin:0!important; overflow:hidden!important;
  background:#26382f; border-radius:5px;
}
.ug-editable-home .ug-feature-card > .ug-card-image,
.ug-editable-home .ug-feature-card > figure.ug-card-image {
  position:absolute!important; inset:0!important; width:100%!important;
  height:100%!important; min-height:100%!important; max-height:none!important;
  margin:0!important; padding:0!important; overflow:hidden!important;
  z-index:0; pointer-events:none!important;
}
.ug-editable-home .ug-feature-card .ug-card-image img,
.ug-editable-home .ug-feature-card .ug-card-image a,
.ug-editable-home .ug-feature-card .ug-card-image picture {
  display:block!important; width:100%!important; height:100%!important;
  min-height:100%!important; max-height:none!important;
  object-fit:cover!important; object-position:center!important;
  margin:0!important; padding:0!important; pointer-events:none!important;
}
.ug-editable-home .ug-feature-card::after {
  content:""; position:absolute; inset:0; z-index:1; pointer-events:none;
  background:linear-gradient(to top,rgba(13,31,23,.88),rgba(13,31,23,.25) 68%,transparent);
}
.ug-editable-home .ug-feature-card > .ug-card-copy {
  position:absolute!important; z-index:2!important;
  left:0!important; right:0!important; bottom:0!important;
  width:100%!important; margin:0!important; padding:24px!important;
  background:transparent!important; color:#fff!important;
}
.ug-editable-home .ug-feature-card .ug-card-copy h3,
.ug-editable-home .ug-feature-card .ug-card-copy p { color:#fff; }
.ug-editable-home .ug-feature-card .ug-card-link a { color:#ead3a5; }
.ug-editable-home .ug-feature-card:focus-within { outline:2px solid #b59a63; outline-offset:2px; }
@media(max-width:780px) {
  .ug-editable-home .ug-feature-card {height:280px!important;min-height:280px!important;}
  .ug-editable-home .ug-feature-card > .ug-card-copy {padding:22px!important;}
}

/* 2.5: Obrazek wyróżniający nad datą i tytułem H1 we wpisach */
.ug-single-featured-image{margin:0 0 32px;width:100%;overflow:hidden;border-radius:5px;}
.ug-single-featured-img{display:block;width:100%;height:auto;max-height:580px;object-fit:cover;border-radius:5px;}
.ug-single-post .ug-post-date{margin-bottom:12px;}
.ug-single-post .ug-post-title{margin:0 0 32px;}
@media(max-width:767px){.ug-single-featured-image{margin-bottom:24px}.ug-single-featured-img{max-height:none}.ug-single-post .ug-post-title{margin-bottom:24px}}
