:root{
  --ko-bg:#fbf5ea;
  --ko-card:#fffdf8;
  --ko-card-strong:#fff8ec;
  --ko-ink:#15181d;
  --ko-soft-ink:#2a2f36;
  --ko-muted:#64605a;
  --ko-gold:#c98422;
  --ko-gold-2:#e8b65a;
  --ko-gold-dark:#8e5b13;
  --ko-line:rgba(218,196,162,.72);
  --ko-line-strong:rgba(201,137,43,.36);
  --ko-shadow:0 28px 70px rgba(63,42,14,.17);
  --ko-shadow-soft:0 14px 36px rgba(63,42,14,.10);
  --ko-radius-xl:30px;
  --ko-radius-lg:24px;
  --ko-radius-md:18px;
  --ko-max:1440px;
  --ko-serif:Georgia,'Times New Roman',serif;
  --ko-sans:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body.ko-body{margin:0;background:radial-gradient(circle at 8% 8%,rgba(232,182,90,.20),transparent 28%),linear-gradient(180deg,#fbf6ed 0%,#fffdf8 46%,#fbf5ea 100%);color:var(--ko-ink);font-family:var(--ko-sans);font-size:16px;line-height:1.5;min-width:320px;overflow-x:hidden}
body.ko-body:before{content:"";position:fixed;inset:0;background-image:linear-gradient(rgba(201,137,43,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(201,137,43,.055) 1px,transparent 1px);background-size:42px 42px;pointer-events:none;z-index:-1}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:none}
button,input{font:inherit}
button{cursor:pointer}
img{max-width:100%;height:auto}
.ko-shell{width:min(var(--ko-max),calc(100% - 48px));margin-inline:auto}
.ko-skip{position:absolute;left:-999px;top:10px;background:#fff;color:#111;padding:12px 16px;border-radius:12px;box-shadow:var(--ko-shadow-soft);z-index:9999}
.ko-skip:focus{left:10px}
.ko-header{position:sticky;top:0;z-index:80;background:rgba(251,246,237,.88);border-bottom:1px solid rgba(230,216,193,.72);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.ko-nav{height:86px;display:grid;grid-template-columns:310px minmax(0,1fr) auto;align-items:center;gap:24px}
.ko-brand{display:flex;align-items:center;min-width:0;overflow:visible}
.ko-brand-img{display:block;width:292px;max-width:100%;max-height:68px;height:auto;object-fit:contain;object-position:left center}
.ko-menu-list{display:flex;align-items:center;justify-content:center;gap:clamp(16px,2vw,32px);font-size:15px;font-weight:720;color:#272a2f;white-space:nowrap}
.ko-menu-list a{position:relative;opacity:.88;transition:opacity .18s ease,color .18s ease}
.ko-menu-list a:hover,.ko-menu-list a.active,.ko-menu-list .current-menu-item>a{color:#101318;opacity:1}
.ko-menu-list a:hover:after,.ko-menu-list a.active:after,.ko-menu-list .current-menu-item>a:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:linear-gradient(90deg,var(--ko-gold),var(--ko-gold-2));border-radius:99px}
.ko-account{display:flex;align-items:center;gap:18px;font-size:14px;font-weight:720;white-space:nowrap}
.ko-account a:not(.ko-profile):hover{color:var(--ko-gold-dark)}
.ko-divider{width:1px;height:26px;background:var(--ko-line)}
.ko-profile{width:48px;height:48px;border:0;border-radius:50%;display:grid;place-items:center;background:transparent;overflow:hidden;transition:transform .18s ease,box-shadow .18s ease}
.ko-profile img{width:100%;height:100%;display:block;object-fit:contain}.ko-profile:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(201,137,43,.18)}
.ko-hamb{display:none;background:var(--ko-card);border:1px solid var(--ko-line);width:46px;height:46px;border-radius:15px;align-items:center;justify-content:center;flex-direction:column;gap:4px;box-shadow:var(--ko-shadow-soft)}
.ko-hamb span{width:19px;height:2px;background:var(--ko-ink);border-radius:99px;transition:transform .18s ease,opacity .18s ease}
.ko-hamb[aria-expanded="true"] span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.ko-hamb[aria-expanded="true"] span:nth-child(2){opacity:0}
.ko-hamb[aria-expanded="true"] span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}
.ko-mobile-panel{position:fixed;left:14px;right:14px;top:84px;z-index:90;background:rgba(255,253,248,.98);border:1px solid var(--ko-line);border-radius:20px;box-shadow:var(--ko-shadow);padding:10px;max-height:calc(100dvh - 108px);overflow:auto}
.ko-mobile-panel[hidden]{display:none!important}
.ko-mobile-panel a{display:block;padding:14px;border-radius:14px;font-weight:850;color:#252a30}
.ko-mobile-panel a:hover{background:#fff3df;color:var(--ko-gold-dark)}
.ko-mobile-panel .ko-mobile-account{margin-top:6px;padding-top:6px;border-top:1px solid var(--ko-line)}
.ko-hero{padding:34px 0 22px}
.ko-hero-grid{display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.18fr);gap:32px;align-items:stretch}
.ko-intro{min-height:430px;padding:38px 28px 34px;position:relative;overflow:hidden;border-radius:var(--ko-radius-xl)}
.ko-intro:before{content:"";position:absolute;left:-90px;bottom:-70px;width:360px;height:250px;opacity:.13;background:linear-gradient(90deg,transparent 0 20%,rgba(201,137,43,.66) 20% 23%,transparent 23% 29%,rgba(201,137,43,.52) 29% 32%,transparent 32% 100%);transform:skewX(-12deg);pointer-events:none}
.ko-kicker{color:var(--ko-gold);font-size:12px;font-weight:950;letter-spacing:.18em;text-transform:uppercase;margin-bottom:22px}
.ko-title{font-family:var(--ko-serif);font-size:clamp(46px,5.2vw,78px);line-height:.98;letter-spacing:-.055em;margin:0 0 22px;color:#14171b;text-wrap:balance}
.ko-title span{color:var(--ko-gold)}
.ko-lead{font-size:17px;line-height:1.72;color:#5d5a54;max-width:590px;margin:0 0 28px;text-wrap:pretty}
.ko-search{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;max-width:640px;background:rgba(255,255,255,.86);border:1px solid var(--ko-line);box-shadow:var(--ko-shadow-soft);border-radius:19px;padding:9px 9px 9px 17px;margin-bottom:16px}
.ko-search svg{color:var(--ko-muted);flex:0 0 auto}
.ko-search input{border:0;background:transparent;outline:0;min-width:0;font-size:15px;color:var(--ko-ink);padding:12px 4px}
.ko-search:focus-within{border-color:rgba(201,137,43,.58);box-shadow:0 0 0 4px rgba(201,137,43,.11),var(--ko-shadow-soft)}
.ko-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:14px;background:linear-gradient(135deg,var(--ko-gold),#b87318);color:white!important;font-weight:880;padding:13px 24px;cursor:pointer;box-shadow:0 12px 24px rgba(201,137,43,.24);transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.ko-btn:hover{transform:translateY(-2px);box-shadow:0 18px 32px rgba(201,137,43,.30);filter:saturate(1.04)}
.ko-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:12px}
.ko-action{display:inline-flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--ko-line);border-radius:15px;background:rgba(255,255,255,.76);padding:13px 18px;font-weight:850;color:#4b4439;box-shadow:var(--ko-shadow-soft);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.ko-action:hover{transform:translateY(-1px);border-color:var(--ko-line-strong)}
.ko-action.primary{background:linear-gradient(135deg,var(--ko-gold),#b87318);color:white;border-color:transparent}
.ko-showcase{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(230px,.72fr) minmax(230px,.72fr);gap:14px;min-height:430px;position:relative}
.ko-card-event{position:relative;overflow:hidden;border-radius:var(--ko-radius-lg);background:#17120c;box-shadow:var(--ko-shadow);min-height:240px;isolation:isolate;transform:translateZ(0)}
.ko-card-event:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.78),rgba(0,0,0,.34) 48%,rgba(0,0,0,.08)),radial-gradient(circle at 70% 10%,rgba(229,178,91,.35),transparent 34%);z-index:-1}
.ko-card-event:after{content:"";position:absolute;inset:0;z-index:-2;background:linear-gradient(120deg,#0b0907,#4c2e10 45%,#1a120b)}
.ko-card-event .stage{position:absolute;right:0;top:0;bottom:0;width:62%;opacity:.8;background:radial-gradient(ellipse at 50% 20%,rgba(255,205,122,.72),transparent 30%),linear-gradient(135deg,transparent 0 20%,rgba(255,255,255,.08) 20% 21%,transparent 21% 32%,rgba(255,255,255,.07) 32% 33%,transparent 33%),linear-gradient(180deg,rgba(120,70,20,.38),rgba(0,0,0,.2))}
.ko-card-event .performer{position:absolute;right:29%;bottom:18px;width:64px;height:158px;background:linear-gradient(180deg,#d9c1a0,#2e2116);clip-path:polygon(38% 0,62% 0,72% 18%,68% 100%,18% 100%,25% 18%);opacity:.85;filter:drop-shadow(0 20px 24px rgba(0,0,0,.4))}
.ko-card-content{position:relative;z-index:2;padding:32px;color:white;max-width:560px}
.ko-badge{display:inline-flex;align-items:center;border:1px solid rgba(230,180,93,.6);color:#ffd38b;border-radius:999px;font-weight:950;font-size:11px;letter-spacing:.08em;padding:6px 10px;text-transform:uppercase;background:rgba(0,0,0,.28)}
.ko-event-title{font-family:var(--ko-serif);font-size:clamp(32px,3.2vw,48px);line-height:1.05;letter-spacing:-.045em;margin:16px 0;color:white;text-wrap:balance}
.ko-meta{display:grid;gap:9px;color:rgba(255,255,255,.86);font-size:14px;margin-bottom:14px}
.ko-meta span{display:flex;gap:8px;align-items:center}
.ko-chips{display:flex;gap:8px;margin:14px 0 22px;flex-wrap:wrap}
.ko-chip{border:1px solid rgba(255,211,139,.45);color:#ffd38b;font-size:11px;font-weight:900;border-radius:8px;padding:6px 9px;background:rgba(0,0,0,.25)}
.ko-small-card .ko-card-content{padding:24px;display:flex;min-height:100%;flex-direction:column;justify-content:flex-end}
.ko-small-card .ko-event-title{font-size:29px;margin:12px 0}
.ko-small-card:nth-of-type(3):after{background:linear-gradient(135deg,#16100b,#4c350f 42%,#0f1712)}
.ko-small-card:nth-of-type(4):after{background:linear-gradient(135deg,#17100a,#675331 45%,#1b1b20)}
.ko-arrow{position:absolute;top:50%;transform:translateY(-50%);width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.46);display:grid;place-items:center;background:rgba(255,255,255,.86);color:#1c1f22;box-shadow:var(--ko-shadow-soft);z-index:5;font-size:24px;line-height:1}
.ko-arrow.left{left:-23px}.ko-arrow.right{right:-23px}
.ko-arrow:hover{background:#fff}
.ko-dots{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);display:flex;gap:8px;z-index:4}
.ko-dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.65)}
.ko-dots i.active{width:24px;border-radius:99px;background:var(--ko-gold)}
.ko-map-section{padding:12px 0 18px}
.ko-section-kicker{color:var(--ko-gold);font-size:12px;font-weight:950;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px}
.ko-section-title{font-family:var(--ko-serif);font-size:clamp(30px,3.4vw,44px);line-height:1.1;letter-spacing:-.04em;margin:0 0 18px;text-wrap:balance}
.ko-section-text{font-size:15px;line-height:1.75;color:var(--ko-muted);margin:0 0 24px;max-width:850px}
.ko-map-reserved{margin-top:20px;margin-bottom:34px}
.ko-map-plugin-slot{background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(255,248,236,.94));border:1px solid var(--ko-line);border-radius:var(--ko-radius-xl);box-shadow:var(--ko-shadow-soft);padding:30px;overflow:hidden;position:relative}
.ko-map-plugin-slot:before{content:"";position:absolute;inset:auto -110px -150px auto;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle,rgba(201,137,43,.16),transparent 65%);pointer-events:none}
.ko-map-plugin-head{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;margin-bottom:22px;position:relative;z-index:1}
.ko-map-plugin-badge{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border:1px solid rgba(201,137,43,.38);background:#fff8ec;color:var(--ko-gold-dark);border-radius:999px;padding:10px 14px;font-size:12px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}
.ko-map-plugin-body{position:relative;min-height:360px;border:1px dashed rgba(201,137,43,.42);border-radius:24px;background:rgba(255,255,255,.60);display:grid;place-items:center;padding:22px;z-index:1}
.ko-map-plugin-body>*{width:100%}
.ko-map-placeholder-card{text-align:center;max-width:680px;margin:0 auto;padding:38px 18px}
.ko-map-placeholder-icon{width:78px;height:78px;border-radius:25px;display:grid;place-items:center;margin:0 auto 18px;background:linear-gradient(135deg,var(--ko-gold),#b87318);color:white;font-size:36px;box-shadow:var(--ko-shadow-soft)}
.ko-map-placeholder-card h3{font-family:var(--ko-serif);font-size:clamp(30px,4vw,48px);line-height:1.05;letter-spacing:-.04em;margin:0 0 14px;color:#15181d;text-wrap:balance}
.ko-map-placeholder-card p{font-size:16px;line-height:1.7;color:var(--ko-muted);margin:0 auto 18px;max-width:560px}
.ko-map-placeholder-card code{display:inline-flex;padding:10px 14px;border-radius:12px;background:#171a1f;color:#fff;font-weight:850;font-size:13px;white-space:normal;word-break:break-word}
.ko-modules{display:grid;grid-template-columns:1.05fr 1.05fr 1fr 1fr;gap:16px;padding:0 0 22px}
.ko-module,.ko-feature-strip,.ko-wp-card{background:rgba(255,253,248,.86);border:1px solid rgba(230,216,193,.82);box-shadow:var(--ko-shadow-soft);border-radius:var(--ko-radius-lg)}
.ko-module{padding:20px;min-height:168px;overflow:hidden}
.ko-module-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}
.ko-module h3{margin:0;font-family:var(--ko-serif);font-size:21px;letter-spacing:-.02em;line-height:1.1}
.ko-module-head a{font-size:12px;font-weight:900;color:var(--ko-gold)}
.ko-mini-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ko-mini{border:1px solid var(--ko-line);background:#fffaf2;border-radius:15px;overflow:hidden;min-height:96px;transition:transform .18s ease,box-shadow .18s ease}
.ko-mini:hover,.ko-place:hover,.ko-route:hover{transform:translateY(-2px);box-shadow:var(--ko-shadow-soft)}
.ko-thumb{height:50px;background:linear-gradient(135deg,#3a2211,#be8841);position:relative}
.ko-thumb:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 20%,rgba(255,255,255,.46),transparent 24%)}
.ko-mini div:last-child{padding:9px}
.ko-tag{display:inline-block;font-size:9px;color:var(--ko-gold-dark);border:1px solid rgba(201,137,43,.35);font-weight:950;border-radius:999px;padding:2px 6px;background:#fff7e9;text-transform:uppercase}
.ko-mini strong{display:block;font-size:12px;margin:5px 0 2px;line-height:1.22}.ko-mini small{display:block;color:var(--ko-muted);font-size:10px}
.ko-place-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.ko-place{height:106px;border-radius:16px;overflow:hidden;padding:12px;color:white;display:flex;align-items:flex-end;font-weight:900;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.58)),linear-gradient(135deg,#cf9b4e,#303841);transition:transform .18s ease,box-shadow .18s ease}
.ko-route{height:110px;border-radius:17px;padding:16px;color:white;display:flex;align-items:flex-end;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.70)),linear-gradient(135deg,#1f2529,#c08d42);transition:transform .18s ease,box-shadow .18s ease}
.ko-route strong{display:block;font-family:var(--ko-serif);font-size:21px;line-height:1.12}.ko-route small{display:block;margin-top:4px;color:rgba(255,255,255,.82)}
.ko-feature-strip{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-bottom:44px;overflow:hidden}
.ko-feature{display:flex;gap:14px;align-items:center;padding:22px;border-right:1px solid var(--ko-line);min-width:0}
.ko-feature:last-child{border-right:0}
.ko-icon{width:46px;height:46px;border-radius:15px;border:1px solid rgba(201,137,43,.35);display:grid;place-items:center;color:var(--ko-gold);background:#fff8ec;font-size:22px;flex:0 0 auto}
.ko-feature strong{display:block;font-size:14px;line-height:1.24}.ko-feature span{display:block;font-size:12px;color:var(--ko-muted);line-height:1.45;margin-top:3px}
.ko-footer{border-top:1px solid var(--ko-line);padding:34px 0;background:rgba(255,250,242,.72)}
.ko-footer-grid{display:flex;justify-content:space-between;gap:30px;align-items:center}
.ko-footer-logo{width:292px;max-height:76px;object-fit:contain;object-position:left center;display:block}
.ko-footer p{color:var(--ko-muted);margin:8px 0 0}.ko-footer-menu{display:flex;gap:18px;font-weight:760;color:var(--ko-muted);flex-wrap:wrap}.ko-footer-menu a:hover{color:var(--ko-gold-dark)}
.ko-content-page{padding:46px 0}.ko-wp-card{padding:34px;margin-bottom:22px;overflow:hidden}.ko-wp-card h1{font-family:var(--ko-serif);font-size:clamp(34px,4vw,54px);line-height:1.05;letter-spacing:-.04em;margin:0 0 20px}.ko-page-content{line-height:1.75;color:#2e3238}.ko-page-content>*:first-child{margin-top:0}.ko-single-img,.ko-wp-card img{max-width:100%;height:auto;border-radius:18px}.navigation.pagination{margin:24px 0}.nav-links{display:flex;gap:8px;flex-wrap:wrap}.page-numbers{padding:9px 12px;border-radius:12px;background:#fff;border:1px solid var(--ko-line);font-weight:800}.page-numbers.current{background:var(--ko-gold);color:#fff;border-color:transparent}
@media (max-width:1280px){.ko-nav{grid-template-columns:285px minmax(0,1fr) auto;gap:18px}.ko-menu-list{gap:18px}.ko-account{gap:13px}.ko-profile{width:44px;height:44px}.ko-hero-grid{grid-template-columns:1fr}.ko-intro{min-height:auto}.ko-showcase{min-height:380px}.ko-modules{grid-template-columns:repeat(2,minmax(0,1fr))}.ko-feature-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.ko-feature:nth-child(2n){border-right:0}.ko-feature:nth-child(-n+2){border-bottom:1px solid var(--ko-line)}}
@media (max-width:980px){.ko-nav{grid-template-columns:minmax(0,1fr) auto;height:74px}.ko-menu,.ko-account{display:none}.ko-hamb{display:flex}.ko-brand-img{width:245px;max-height:58px}.ko-mobile-panel{top:74px}.ko-hero{padding-top:20px}.ko-title{font-size:clamp(42px,10vw,62px)}.ko-showcase{display:flex;gap:14px;overflow-x:auto;min-height:0;padding:2px 2px 18px;scroll-snap-type:x mandatory;scrollbar-width:thin}.ko-card-event{flex:0 0 82%;min-height:340px;scroll-snap-align:start}.ko-card-event:first-of-type{flex-basis:92%}.ko-small-card{min-height:300px}.ko-arrow{display:none}.ko-dots{display:none}.ko-map-plugin-slot{padding:22px}.ko-map-plugin-head{display:block}.ko-map-plugin-badge{margin-top:14px}.ko-map-plugin-body{min-height:300px}.ko-footer-grid{display:grid;justify-items:start}.ko-footer-menu{display:grid;gap:10px}}
@media (max-width:720px){.ko-shell{width:min(100% - 28px,var(--ko-max))}.ko-intro{padding:26px 0 8px;border-radius:0}.ko-lead{font-size:16px}.ko-search{grid-template-columns:auto minmax(0,1fr);padding:10px 10px 10px 14px}.ko-search .ko-btn{grid-column:1/-1;width:100%;padding:14px 18px}.ko-actions{display:grid}.ko-action{width:100%}.ko-card-event{flex-basis:88%;min-height:318px}.ko-card-event:first-of-type{flex-basis:94%}.ko-card-content{padding:24px}.ko-event-title{font-size:34px}.ko-card-event .stage{width:78%;opacity:.55}.ko-card-event .performer{right:17%;opacity:.56}.ko-modules{grid-template-columns:1fr}.ko-mini-list,.ko-place-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ko-feature-strip{grid-template-columns:1fr}.ko-feature{border-right:0;border-bottom:1px solid var(--ko-line)}.ko-feature:nth-child(-n+2){border-bottom:1px solid var(--ko-line)}.ko-feature:last-child{border-bottom:0}.ko-map-placeholder-card{padding:28px 8px}.ko-footer-logo{width:235px}.ko-wp-card{padding:24px}}
@media (max-width:520px){.ko-brand-img{width:216px;max-height:52px}.ko-title{font-size:clamp(38px,12vw,48px)}.ko-kicker{font-size:11px;margin-bottom:16px}.ko-card-event,.ko-card-event:first-of-type{flex-basis:92%;min-height:300px}.ko-event-title{font-size:31px}.ko-small-card .ko-event-title{font-size:27px}.ko-mini-list,.ko-place-grid{grid-template-columns:1fr}.ko-map-plugin-slot{padding:18px;border-radius:22px}.ko-map-plugin-body{padding:16px;border-radius:18px}.ko-map-placeholder-icon{width:66px;height:66px;border-radius:21px;font-size:30px}.ko-section-title{font-size:30px}.ko-module-head{align-items:flex-start;flex-direction:column}.ko-feature{padding:18px}.ko-footer{padding:28px 0}.ko-footer p{font-size:14px}}
@media (max-width:380px){.ko-brand-img{width:188px}.ko-shell{width:min(100% - 22px,var(--ko-max))}.ko-card-content{padding:20px}.ko-search input{font-size:14px}.ko-event-title{font-size:29px}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}


/* v1.4.4 - sección Experiencias con relato real */
.ko-experience{padding:10px 0 34px}
.ko-experience-card{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(255,248,236,.94));border:1px solid var(--ko-line);box-shadow:var(--ko-shadow-soft);border-radius:var(--ko-radius-xl);padding:clamp(24px,3.4vw,46px)}
.ko-experience-card:before{content:"";position:absolute;inset:-120px auto auto -80px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(232,182,90,.20),transparent 65%);pointer-events:none}
.ko-experience-card:after{content:"";position:absolute;inset:auto -130px -160px auto;width:390px;height:390px;border-radius:50%;background:radial-gradient(circle,rgba(201,137,43,.16),transparent 68%);pointer-events:none}
.ko-experience-intro,.ko-experience-copy,.ko-experience-grid{position:relative;z-index:1}
.ko-experience-intro{max-width:980px;margin-bottom:22px}
.ko-experience-intro .ko-kicker{color:var(--ko-gold-dark)}
.ko-experience h2{font-family:var(--ko-serif);font-size:clamp(34px,4.4vw,64px);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;text-wrap:balance;color:#15181d}
.ko-experience-highlight{font-size:clamp(18px,2vw,23px);line-height:1.45;color:#24282d;margin:0;max-width:980px;font-weight:650;text-wrap:balance}
.ko-experience-copy{display:grid;grid-template-columns:1fr 1fr;gap:16px 26px;color:var(--ko-soft-ink);font-size:16px;line-height:1.75;margin-top:24px}
.ko-experience-copy p{margin:0;background:rgba(255,255,255,.46);border:1px solid rgba(230,216,193,.58);border-radius:18px;padding:16px 18px}
.ko-experience-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:22px}
.ko-experience-mini{background:#17120c;color:#fff;border:1px solid rgba(232,182,90,.28);border-radius:22px;padding:22px;box-shadow:0 18px 45px rgba(37,22,6,.18);min-height:198px}
.ko-experience-mini span{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:14px;background:linear-gradient(135deg,var(--ko-gold),#a66d1e);font-size:13px;font-weight:950;margin-bottom:16px;color:#fff}
.ko-experience-mini h3{font-family:var(--ko-serif);font-size:clamp(22px,2.1vw,30px);line-height:1.06;letter-spacing:-.03em;margin:0 0 10px;color:#fff}
.ko-experience-mini p{margin:0;color:rgba(255,255,255,.80);font-size:14px;line-height:1.62}
@media (max-width:980px){.ko-experience-copy{grid-template-columns:1fr}.ko-experience-grid{grid-template-columns:1fr}.ko-experience-mini{min-height:0}.ko-experience{padding-top:0}}
@media (max-width:520px){.ko-experience-card{padding:22px;border-radius:22px}.ko-experience h2{font-size:34px}.ko-experience-highlight{font-size:17px}.ko-experience-copy p{padding:14px}.ko-experience-mini{padding:18px;border-radius:18px}}

/* v1.4.3 - portada pública sin eventos ficticios */
.ko-launch-showcase .ko-card-event{background:#17120c}
.ko-launch-showcase .ko-event-title{max-width:620px}
.ko-info-card strong{color:#ffd38b;font-size:13px;font-weight:900;margin-top:8px}
.ko-place-muted,.ko-route-muted{opacity:.86;cursor:default}
.ko-place-muted:hover,.ko-route-muted:hover{transform:none;box-shadow:none}
.ko-route-muted{background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.62)),linear-gradient(135deg,#333940,#9e7438)}
.ko-place-muted{background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.55)),linear-gradient(135deg,#696f76,#ba8a44)}

/* v1.4.7 - Contacto en cabecera y sección reservada para plugin */
html{scroll-behavior:smooth;}
#inicio,#eventos,#mapa,#ayuntamientos,#experiencias,#contacto{scroll-margin-top:120px;}
.ko-contact{padding:42px 0 28px;}
.ko-contact-card{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,.9fr) minmax(340px,1.1fr);gap:28px;align-items:start;background:linear-gradient(135deg,rgba(255,253,248,.98),rgba(255,247,232,.94));border:1px solid rgba(201,137,43,.22);box-shadow:var(--ko-shadow-soft);border-radius:var(--ko-radius-xl);padding:clamp(22px,3vw,36px);}
.ko-contact-card:before{content:"";position:absolute;inset:-120px auto auto -90px;width:300px;height:300px;border-radius:50%;background:radial-gradient(circle,rgba(232,182,90,.20),transparent 66%);pointer-events:none;}
.ko-contact-copy,.ko-contact-box{position:relative;z-index:1;}
.ko-contact-copy .ko-kicker{color:var(--ko-gold-dark);}
.ko-contact-copy h2{font-family:var(--ko-serif);font-size:clamp(34px,4.3vw,60px);line-height:1;letter-spacing:-.045em;margin:8px 0 16px;color:#15181d;}
.ko-contact-copy p{font-size:clamp(16px,1.45vw,19px);line-height:1.72;color:var(--ko-muted);max-width:720px;margin:0;}
.ko-contact-box{background:#fff;border:1px solid rgba(30,24,18,.10);border-radius:24px;padding:22px;box-shadow:0 18px 45px rgba(30,24,18,.08);}
.ko-contact-placeholder{border:1px dashed rgba(201,137,43,.42);border-radius:18px;background:#fff9ef;padding:22px;}
.ko-contact-placeholder h3{margin:0 0 8px;font-family:var(--ko-serif);font-size:28px;letter-spacing:-.02em;color:#171a21;}
.ko-contact-placeholder p{margin:0;color:#686863;line-height:1.65;}
.ko-contact-form{display:grid;gap:14px;}
.ko-contact-form label{display:grid;gap:6px;font-weight:800;color:#1d2028;font-size:.94rem;}
.ko-contact-form input,.ko-contact-form select,.ko-contact-form textarea{width:100%;border:1px solid rgba(30,24,18,.16);border-radius:14px;padding:13px 14px;background:#fffaf2;color:#191b20;font:inherit;outline:none;transition:border-color .2s,box-shadow .2s,background .2s;}
.ko-contact-form textarea{min-height:128px;resize:vertical;}
.ko-contact-form input:focus,.ko-contact-form select:focus,.ko-contact-form textarea:focus{border-color:var(--ko-gold);box-shadow:0 0 0 4px rgba(201,137,43,.12);background:#fff;}
.ko-contact-row{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
.ko-contact-privacy{display:flex!important;grid-template-columns:none!important;gap:10px!important;align-items:flex-start;font-weight:600!important;color:#595a57!important;line-height:1.45;font-size:.9rem!important;}
.ko-contact-privacy input{width:auto;margin-top:4px;}
.ko-contact-status{border-radius:14px;padding:12px 14px;margin-bottom:14px;font-weight:750;}
.ko-contact-status.ok{background:#ecf8ef;color:#1d6f35;border:1px solid rgba(29,111,53,.18);}
.ko-contact-status.err{background:#fff0ec;color:#9d351e;border:1px solid rgba(157,53,30,.18);}
.ko-contact-submit{border:0;border-radius:16px;background:linear-gradient(135deg,var(--ko-gold),#b96f12);color:#fff;font-weight:900;padding:14px 18px;cursor:pointer;box-shadow:0 14px 28px rgba(194,119,18,.22);}
.ko-contact-submit:hover{transform:translateY(-1px);}
.ko-contact-hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden;}
@media (max-width: 980px){.ko-contact-card{grid-template-columns:1fr;padding:22px;border-radius:24px}.ko-contact-copy h2{font-size:clamp(34px,8vw,52px)}}
@media (max-width: 640px){#inicio,#eventos,#mapa,#ayuntamientos,#experiencias,#contacto{scroll-margin-top:88px}.ko-contact{padding:28px 0 18px}.ko-contact-card{padding:16px}.ko-contact-box{padding:16px;border-radius:20px}.ko-contact-row{grid-template-columns:1fr}.ko-contact-copy p{font-size:1rem}}


/* ============================================================
   KulturaOne Municipio v1.0.5 - estilos específicos municipales
   ============================================================ */
:root {
  --ko-municipio-black: #0c0d10;
  --ko-municipio-ink: #161922;
  --ko-municipio-muted: #667085;
  --ko-municipio-gold: #c9a227;
  --ko-municipio-gold-soft: #f3df9a;
  --ko-municipio-white: #ffffff;
  --ko-municipio-bg: #f6f4ef;
  --ko-municipio-line: rgba(201, 162, 39, 0.28);
  --ko-municipio-shadow: 0 24px 70px rgba(12, 13, 16, 0.16);
}

html {
  margin-top: 0 !important;
  min-height: 100%;
  scroll-behavior: smooth;
}

body {
  margin: 0 !important;
  min-height: 100%;
  color: var(--ko-municipio-ink);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  background:
    radial-gradient(circle at 84% 12%, rgba(201, 162, 39, 0.18), transparent 28rem),
    radial-gradient(circle at 12% 80%, rgba(17, 24, 39, 0.08), transparent 24rem),
    var(--ko-municipio-bg);
}

#wpadminbar {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}

.ko-municipio-page {
  display: flex;
  min-height: 100vh;
  flex-direction: column;
  overflow: hidden;
}


.ko-municipio-site-header {
  position: relative;
  z-index: 20;
  width: 100%;
  background: rgba(246, 244, 239, 0.94);
  border-bottom: 1px solid rgba(201, 162, 39, 0.16);
  box-shadow: 0 12px 34px rgba(17, 24, 39, 0.06);
  backdrop-filter: blur(18px);
}

.ko-municipio-header-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: clamp(1rem, 2vw, 2rem);
  max-width: 1480px;
  width: calc(100% - 2.5rem);
  margin: 0 auto;
  min-height: 5.7rem;
  padding: 0.85rem 0;
}

.ko-municipio-brand,
.ko-municipio-account-link,
.ko-municipio-user-icon,
.ko-municipio-button {
  text-decoration: none;
}

.ko-municipio-brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
  gap: 0.8rem;
  color: var(--ko-municipio-ink);
  font-weight: 900;
  letter-spacing: -0.035em;
}

.ko-municipio-mark {
  display: inline-grid;
  place-items: center;
  width: 3.6rem;
  height: 3.6rem;
  border-radius: 1rem;
  background: linear-gradient(135deg, var(--ko-municipio-gold), #8b6b11);
  color: var(--ko-municipio-black);
  box-shadow: 0 10px 28px rgba(201, 162, 39, 0.28);
  font-weight: 950;
}

.ko-municipio-wordmark {
  font-size: clamp(1.7rem, 2.7vw, 2.65rem);
  line-height: 1;
}

.ko-municipio-logo-custom img {
  display: block;
  width: auto;
  max-height: 70px;
}

.ko-municipio-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 1 auto;
  gap: clamp(1rem, 2vw, 2rem);
  min-width: 0;
}

.ko-municipio-nav a,
.ko-municipio-account-link {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 2.7rem;
  color: #32343b;
  font-weight: 800;
  font-size: clamp(0.9rem, 1vw, 1.04rem);
  white-space: nowrap;
}

.ko-municipio-nav a::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0.18rem;
  height: 2px;
  border-radius: 999px;
  background: transparent;
  transform: scaleX(0);
  transition: transform 0.18s ease, background 0.18s ease;
}

.ko-municipio-nav a:hover::after,
.ko-municipio-nav a:focus-visible::after,
.ko-municipio-nav a.is-active::after {
  background: var(--ko-municipio-gold);
  transform: scaleX(1);
}

.ko-municipio-account {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex: 0 0 auto;
  gap: clamp(0.75rem, 1.4vw, 1.5rem);
}

.ko-municipio-account-link {
  color: #111827;
  font-weight: 900;
}

.ko-municipio-register-link {
  color: #8b6b11;
}

.ko-municipio-user-icon {
  display: inline-grid;
  place-items: center;
  width: 3rem;
  height: 3rem;
  border: 2px solid rgba(201, 162, 39, 0.68);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 10px 25px rgba(17, 24, 39, 0.08);
  overflow: hidden;
}

.ko-municipio-user-icon span,
.ko-municipio-user-icon span::before,
.ko-municipio-user-icon span::after {
  display: block;
  border-radius: 999px;
  background: #111827;
}

.ko-municipio-user-icon span {
  position: relative;
  width: 1.25rem;
  height: 1.25rem;
  margin-top: -0.35rem;
}

.ko-municipio-user-icon span::after {
  content: '';
  position: absolute;
  left: 50%;
  top: 1.05rem;
  width: 1.8rem;
  height: 1rem;
  transform: translateX(-50%);
}

.ko-municipio-avatar {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 999px;
}

.ko-municipio-main {
  flex: 1;
  width: 100%;
}

.ko-municipio-hero {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(260px, 0.95fr);
  align-items: center;
  gap: clamp(1.5rem, 5vw, 4rem);
  max-width: 1180px;
  width: calc(100% - 2rem);
  margin: 0 auto;
  padding: clamp(2rem, 7vw, 6rem) 0 clamp(2.5rem, 7vw, 6rem);
}

.ko-municipio-hero-card {
  position: relative;
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid var(--ko-municipio-line);
  border-radius: 2rem;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: var(--ko-municipio-shadow);
  backdrop-filter: blur(18px);
}

.ko-municipio-kicker {
  display: inline-flex;
  margin: 0 0 1rem;
  padding: 0.45rem 0.75rem;
  border-radius: 999px;
  background: rgba(201, 162, 39, 0.16);
  color: #7c5c04;
  font-weight: 800;
  font-size: 0.85rem;
}

.ko-municipio-hero h1 {
  margin: 0;
  color: var(--ko-municipio-ink);
  font-size: clamp(2.3rem, 6vw, 5.3rem);
  line-height: 0.96;
  letter-spacing: -0.07em;
}

.ko-municipio-title-brand,
.ko-municipio-title-town {
  display: inline-block;
}

.ko-municipio-title-separator {
  color: var(--ko-municipio-gold);
  margin: 0 0.2em;
}

.ko-municipio-hero h2 {
  margin: 1.3rem 0 0;
  color: var(--ko-municipio-black);
  font-size: clamp(1.35rem, 3vw, 2.2rem);
  line-height: 1.08;
  letter-spacing: -0.04em;
}

.ko-municipio-lead {
  max-width: 62ch;
  margin: 1rem 0 0;
  color: var(--ko-municipio-muted);
  font-size: clamp(1rem, 2vw, 1.16rem);
  line-height: 1.7;
}

.ko-municipio-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  margin-top: 1.6rem;
}

.ko-municipio-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 3rem;
  padding: 0.85rem 1.25rem;
  border-radius: 999px;
  color: var(--ko-municipio-black);
  background: linear-gradient(135deg, var(--ko-municipio-gold), var(--ko-municipio-gold-soft));
  font-weight: 900;
  box-shadow: 0 16px 34px rgba(201, 162, 39, 0.26);
}

.ko-municipio-visual {
  position: relative;
  min-height: clamp(300px, 42vw, 520px);
}

.ko-municipio-orbit {
  position: absolute;
  border: 1px solid rgba(201, 162, 39, 0.35);
  border-radius: 999px;
  transform: rotate(-18deg);
}

.ko-municipio-orbit-one {
  inset: 10% 5% 12% 1%;
}

.ko-municipio-orbit-two {
  inset: 25% 16% 24% 12%;
  border-color: rgba(17, 24, 39, 0.12);
  transform: rotate(18deg);
}

.ko-municipio-glass-card {
  position: absolute;
  inset: 50% auto auto 50%;
  transform: translate(-50%, -50%);
  display: grid;
  gap: 0.45rem;
  min-width: min(78vw, 320px);
  padding: 2rem;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 2rem;
  background: rgba(12, 13, 16, 0.86);
  color: var(--ko-municipio-white);
  box-shadow: 0 30px 80px rgba(12, 13, 16, 0.28);
}

.ko-municipio-glass-card span {
  display: inline-grid;
  place-items: center;
  width: 4rem;
  height: 4rem;
  border-radius: 1.35rem;
  background: var(--ko-municipio-gold);
  color: var(--ko-municipio-black);
  font-weight: 950;
  font-size: 1.5rem;
}

.ko-municipio-glass-card strong {
  margin-top: 1rem;
  font-size: 1.8rem;
  letter-spacing: -0.04em;
}

.ko-municipio-glass-card em {
  color: rgba(255, 255, 255, 0.72);
  font-style: normal;
}

.ko-municipio-content {
  max-width: 960px;
  width: calc(100% - 2rem);
  margin: 0 auto;
  padding: clamp(2rem, 6vw, 5rem) 0;
}

.ko-municipio-article {
  padding: clamp(1.5rem, 4vw, 3rem);
  border: 1px solid rgba(17, 24, 39, 0.08);
  border-radius: 1.5rem;
  background: rgba(255, 255, 255, 0.82);
  box-shadow: 0 18px 48px rgba(17, 24, 39, 0.08);
}

.ko-municipio-article h1 {
  margin-top: 0;
}

.ko-municipio-entry :where(img, iframe) {
  max-width: 100%;
}

.ko-municipio-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  max-width: 1180px;
  width: calc(100% - 2rem);
  margin: 0 auto;
  padding: 1.25rem 0 1.5rem;
  color: var(--ko-municipio-muted);
  font-size: 0.9rem;
}

.ko-municipio-brand:focus-visible,
.ko-municipio-nav a:focus-visible,
.ko-municipio-account-link:focus-visible,
.ko-municipio-user-icon:focus-visible,
.ko-municipio-button:focus-visible {
  outline: 3px solid rgba(201, 162, 39, 0.55);
  outline-offset: 4px;
}

@media (max-width: 1180px) {
  .ko-municipio-header-inner {
    flex-wrap: wrap;
  }

  .ko-municipio-nav {
    order: 3;
    flex-basis: 100%;
    justify-content: flex-start;
    overflow-x: auto;
    padding: 0.35rem 0 0.15rem;
    scrollbar-width: thin;
  }
}

@media (max-width: 860px) {
  .ko-municipio-header-inner {
    width: calc(100% - 1.5rem);
    min-height: auto;
  }

  .ko-municipio-logo-custom img {
    max-height: 56px;
  }

  .ko-municipio-account {
    gap: 0.75rem;
  }

  .ko-municipio-hero {
    grid-template-columns: 1fr;
  }

  .ko-municipio-visual {
    min-height: 260px;
    order: -1;
  }
}

@media (max-width: 560px) {
  .ko-municipio-header-inner,
  .ko-municipio-footer {
    flex-direction: column;
    align-items: stretch;
  }

  .ko-municipio-brand,
  .ko-municipio-account {
    justify-content: center;
  }

  .ko-municipio-nav {
    justify-content: flex-start;
  }

  .ko-municipio-account {
    flex-wrap: wrap;
  }

  .ko-municipio-account-link,
  .ko-municipio-button {
    width: auto;
  }

  .ko-municipio-hero h1 {
    font-size: clamp(2rem, 13vw, 3.5rem);
  }

  .ko-municipio-title-brand,
  .ko-municipio-title-separator,
  .ko-municipio-title-town {
    display: block;
  }

  .ko-municipio-title-separator {
    line-height: 0.8;
    margin: 0.1rem 0;
  }
}


/* Cabecera unificada: la cabecera municipal usa las mismas clases del theme principal. */
body.ko-municipio-body{min-height:100vh;}
body.ko-municipio-body .ko-header{position:sticky;top:0;}
body.ko-municipio-body .ko-menu-list a[href*='#eventos']::after{display:none;}
body.ko-municipio-body .ko-menu-list a[href*='#eventos']:hover::after{display:block;}
body.ko-municipio-body .ko-menu-list a.active::after{display:block;}
.ko-municipio-page{min-height:100vh;display:flex;flex-direction:column;}
.ko-municipio-main{flex:1;}
@media (max-width:980px){body.ko-municipio-body .ko-nav{grid-template-columns:minmax(0,1fr) auto;}}
