/* JSV 61 – lokaler Gestaltungsentwurf. Keine externen Schriftarten oder Bilder. */
:root{--jsv-ink:#102748;--jsv-blue:#174c85;--jsv-bright:#a9dcf5;--jsv-paper:#f5f7f7;--jsv-gold:#e5b66b;--jsv-line:#dce4e8}
html{scroll-behavior:smooth}
body.site{background:var(--jsv-paper);color:var(--jsv-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}
body.site.itemid-101.view-category{background-image:linear-gradient(#f6f8f2d6,#f6f8f2d6),url("../images/judoka-trainer-logo-v6.png");background-size:cover;background-position:center;background-attachment:fixed}
a{color:var(--jsv-blue)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid #efaa49!important;outline-offset:3px}
.container-header{background:#fff!important;background-image:none!important;box-shadow:0 1px 0 rgba(16,39,72,.1);color:var(--jsv-ink);z-index:20}
.container-header>.grid-child{max-width:1320px;margin:auto;padding:1rem 2rem .5rem}
.container-header .navbar-brand{padding:0;margin:0}
.container-header .navbar-brand img{width:auto;height:auto;max-width:min(410px,75vw);max-height:78px;object-fit:contain;object-position:left}
.container-header .container-nav{padding:0 2rem;min-height:0}
.container-header .navbar{padding:0}
.container-header .mod-menu{gap:0 1.25rem;align-items:center}
.container-header .metismenu>li>a,.container-header .metismenu>li>button{color:#203958!important;font-size:.83rem;font-weight:700;letter-spacing:.015em;padding:.8rem 0!important;text-decoration:none}
.container-header .metismenu>li.current>a,.container-header .metismenu>li>a:hover,.container-header .metismenu>li>button:hover{color:#286da8!important}
.container-header .metismenu>li.active:not(.current)>a:after{display:none}
.container-header .metismenu>li.current>a:after{background:#d49749;bottom:0;height:3px}
.container-header .metismenu.mod-menu .mm-collapse{background:#fff;box-shadow:0 16px 36px #10274824;border:1px solid #e5ebee;border-radius:0 0 12px 12px;min-width:230px}
.container-header .metismenu.mod-menu .mm-collapse li a{color:#203958!important;padding:.65rem 1rem!important}
.container-header .metismenu.mod-menu .mm-collapse li a:hover{background:#edf4f8}
.container-header .navbar-toggler{color:var(--jsv-ink);border:1px solid #c5d2dc}
.jsv-hero{background:#657d46 url("../images/judoka-trainer-logo-v6.png") right center/cover no-repeat;color:#fff;overflow:hidden;position:relative}
.jsv-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(18,35,25,.18),transparent 55%);pointer-events:none}
.jsv-hero__inner{max-width:1320px;margin:auto;padding:5.9rem 2rem 5.4rem;min-height:calc(100svh - 145px);display:grid;grid-template-columns:1fr 1fr;align-items:center;position:relative;gap:2rem}
.jsv-hero__copy{max-width:650px;position:relative;z-index:2;align-self:end;margin:0 0 1rem -1.25rem;padding:1.25rem;background:linear-gradient(90deg,rgba(18,35,25,.92),rgba(18,35,25,.76) 75%,rgba(18,35,25,.48));border-radius:10px}
@media(min-width:992px) and (min-height:800px){.jsv-hero__copy{transform:translateY(48px)}}
.jsv-eyebrow{color:#b4d9ed;font-weight:800;font-size:.73rem;letter-spacing:.18em;text-transform:uppercase;display:flex;align-items:center;gap:.7rem;margin:0 0 1.3rem}
.jsv-eyebrow:before{content:"";height:2px;width:30px;background:var(--jsv-gold)}
.jsv-hero h1{font-size:clamp(3rem,6.2vw,5.8rem);line-height:.99;letter-spacing:-.055em;color:#fff;font-weight:800;margin:0 0 1.3rem;max-width:700px}
.jsv-hero h1 span{color:#dcf1c4}
.jsv-hero__intro{font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.7;color:#d4e5ef;max-width:540px;margin:0 0 2rem}
.jsv-actions{display:flex;gap:.8rem;flex-wrap:wrap}
.jsv-button{display:inline-flex;align-items:center;justify-content:center;gap:1.3rem;min-height:50px;padding:.75rem 1.2rem;border-radius:5px;background:#fff;color:#173c63!important;font-weight:750;text-decoration:none!important;font-size:.9rem;transition:transform .18s,background .18s}
.jsv-button:hover{transform:translateY(-2px);background:#e5f2f9}
.jsv-button--quiet{background:transparent;border:1px solid #85a9c5;color:#fff!important}
.jsv-button--quiet:hover{background:#ffffff15}
.jsv-mark{height:360px;width:360px;justify-self:center;position:relative;border:1px solid #a3d3ed55;border-radius:50%;display:grid;place-items:center}
.jsv-mark:before,.jsv-mark:after{content:"";position:absolute;border:1px solid #a3d3ed32;border-radius:50%;inset:20px}
.jsv-mark:after{inset:48px}
.jsv-mark__line{position:absolute;height:23px;width:130%;background:#e7f1f5;transform:rotate(-35deg);box-shadow:0 6px 20px #091c3430}
.jsv-mark__line--blue{height:19px;transform:rotate(34deg);background:#7cafd2}
.jsv-mark__center{z-index:1;width:158px;height:158px;border-radius:50%;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f5f8f7;color:#173f69;box-shadow:0 15px 35px #0c234355;border:8px solid #b5d7ea}
.jsv-mark__center strong{font-size:4rem;line-height:.9;letter-spacing:-.08em}
.jsv-mark__center small{font-size:.63rem;font-weight:900;letter-spacing:.18em;margin-top:.6rem}
.jsv-mark__caption{position:absolute;bottom:-2.3rem;right:0;color:#b8d4e6;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.jsv-hero__art{position:relative;display:grid;place-items:center;min-width:0;align-self:stretch}
.jsv-hero__art-ring{position:absolute;width:min(90%,370px);aspect-ratio:1;border:1px solid #a3d3ed55;border-radius:50%;background:radial-gradient(circle,#8ac4e626,#366c9b0a 68%,transparent 69%)}
.jsv-hero__art-ring:after{content:"";position:absolute;inset:9%;border:1px solid #a3d3ed32;border-radius:50%}
.jsv-hero__art img{position:relative;width:min(100%,550px);height:auto;max-height:400px;object-fit:contain;filter:drop-shadow(0 18px 18px #071b3550)}
.jsv-dojo-frame{position:relative;width:min(100%,550px);line-height:0;overflow:hidden;border-radius:10px;box-shadow:0 18px 36px #071b3550}
.jsv-hero__art .jsv-dojo-scene{display:block;width:100%;height:auto;max-height:none;filter:none}
.jsv-hero__art .jsv-dojo-logo{position:absolute;top:4%;right:3%;width:28%;height:auto;max-height:none;padding:3px;background:#fff;border-radius:3px;box-shadow:0 2px 6px #10274840;filter:none}
.jsv-hero__art span{position:absolute;right:1rem;bottom:-.5rem;color:#b8d4e6;font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.jsv-hero__wall-logo{position:absolute;top:2rem;right:2rem;z-index:2;width:clamp(140px,16vw,230px);padding:5px;background:#fff;border-radius:4px;box-shadow:0 3px 12px #10274845;line-height:0}
.jsv-hero__wall-logo img{display:block;width:100%;height:auto}
.jsv-logo-mobile{display:none}
.jsv-quick{max-width:1256px;margin:-1.6rem auto 0;padding:0 1rem;position:relative;z-index:3;display:grid;grid-template-columns:repeat(4,1fr);gap:1px}
.jsv-quick a{background:#fff;display:flex;align-items:center;justify-content:space-between;gap:1rem;text-decoration:none;color:var(--jsv-ink);padding:1.35rem 1.5rem;box-shadow:0 12px 32px #16304a0c;transition:background .2s,transform .2s}
.jsv-quick a:first-child{border-radius:6px 0 0 6px}.jsv-quick a:last-child{border-radius:0 6px 6px 0}
.jsv-quick a:hover{background:#eaf4f9;transform:translateY(-3px)}
.jsv-quick small{display:block;color:#657d92;font-size:.67rem;letter-spacing:.12em;text-transform:uppercase;font-weight:800}
.jsv-quick strong{font-size:1rem}.jsv-quick .arrow{font-size:1.4rem;color:#4e82a9}
.site-grid{max-width:1320px!important;margin:0 auto;padding:2.5rem 2rem 5rem;column-gap:2rem}
.itemid-101.view-category .container-component main:before{content:"BEITRÄGE AUS DEM VEREIN";display:block;font-size:.72rem;font-weight:850;letter-spacing:.17em;color:#59758b;margin:0 0 1.2rem}
.blog-items{gap:1.3rem!important}
.blog-item,.com-content-article,.com-contact,.com-icagenda{background:#fff;border:1px solid #e4ebee;border-radius:8px;padding:1.65rem;box-shadow:0 9px 30px #1a38520a}
body.site .blog-items .blog-item{padding:1.65rem}
.blog-item h2,.com-content-article h1,.com-contact h1{font-size:clamp(1.35rem,2.3vw,1.8rem);letter-spacing:-.035em;font-weight:750;line-height:1.2;color:var(--jsv-ink)}
.blog-item h2 a{color:inherit;text-decoration:none}.blog-item h2 a:hover{color:#3676a9}
.blog-item p{color:#536777}.blog-item img{max-width:100%;height:auto;border-radius:4px}
.com-content-category.category-list h1{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.045em;color:var(--jsv-ink)}
.com-content-category.category-list .btn-primary{background:var(--jsv-blue);border-color:var(--jsv-blue)}
.com-content-category__table{border-color:#dfe7eb!important;background:#fff!important;margin-top:1.2rem}
.com-content-category__table>:not(caption)>*>*{background-color:#fff!important;box-shadow:none!important;border-color:#e3eaed!important;padding:.9rem 1rem!important}
.com-content-category__table tbody tr:hover>*{background-color:#edf5f9!important}
.com-content-category__table a{color:var(--jsv-ink);font-weight:700;text-decoration:none}
.com-content-category__table a:hover{color:#286da8;text-decoration:underline}
.jsv-year-filter{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:1rem 0 1.35rem}
.jsv-year-filter label{font-weight:700}.jsv-year-filter select{width:auto;min-width:10rem}
.jsv-filter-count,.jsv-post-date{color:#637b8c;font-size:.83rem;font-weight:500}
.jsv-post-date{display:block;margin-top:.15rem}
.com-content-category__table tr[hidden]{display:none!important}
.jsv-home-filter{display:flex;align-items:center;gap:.75rem;flex-wrap:wrap;margin:0 0 1.3rem}
.jsv-home-filter label{font-weight:700}.jsv-home-filter select{width:auto;min-width:10rem}
.jsv-home-filter-count{color:#637b8c;font-size:.83rem}
.blog-item[hidden]{display:none!important}
.jsv-more-posts{margin:1.5rem 0 2.5rem;padding:.75rem 1.1rem;background:#174c85;color:#fff;border:0;border-radius:5px;font-weight:700}
.jsv-more-posts:hover{background:#103b6c}.jsv-more-posts[hidden]{display:none!important}
.jsv-intro-date{color:#59758b!important;font-weight:700;font-size:.82rem}
.com-content-article img{max-width:100%;height:auto}
.sidebar-right.card{border:1px solid #e4ebee;border-radius:8px;box-shadow:0 9px 30px #1a38520a}
.sidebar-right .card-body{padding:1.5rem}.sidebar-right .card-body:before{content:"MITGLIEDERBEREICH";display:block;color:#59758b;font-size:.72rem;letter-spacing:.14em;font-weight:850;margin-bottom:1rem}
.sidebar-right input.form-control{min-width:0;border-color:#d1dce3}.sidebar-right .btn-primary{background:#174c85;border-color:#174c85}
.jsv-footer{background:#102748;color:#b8ccdb;padding:2.2rem max(2rem,calc((100% - 1256px)/2));display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap;font-size:.85rem}
.jsv-footer strong{color:#fff}.jsv-footer a{color:#d7e8f2;text-decoration:none;margin-left:1rem}
@media(max-width:991px){.container-header>.grid-child{padding:1rem 1.25rem .5rem}.container-header .container-nav{padding:0 1.25rem .65rem}.container-header .navbar-toggler{margin-left:auto}.container-header .navbar-collapse{width:100%}.container-header .metismenu{align-items:stretch}.container-header .metismenu>li>a,.container-header .metismenu>li>button{padding:.55rem 0!important}.jsv-hero__inner{min-height:calc(100svh - 140px);padding:4.5rem 1.5rem 4rem}.jsv-mark{width:265px;height:265px}.jsv-mark__center{width:120px;height:120px}.jsv-mark__center strong{font-size:3rem}.site-grid{padding:2.5rem 1.25rem 4rem}}
@media(max-width:640px){.com-content-category .com-content__filter.btn-group{display:flex;flex-wrap:wrap;width:100%;max-width:100%}.com-content-category .com-content__filter input{min-width:0;flex:1 1 100%;width:100%}.com-content-category .com-content__filter button{flex:1 1 50%}.com-content-category .com-content-category__pagination.float-end{float:none!important;margin-top:.75rem}}
@media(max-width:640px){body.site.itemid-101.view-category{background-attachment:scroll}.jsv-hero{background-position:75% center}.jsv-hero:before{background:linear-gradient(180deg,rgba(18,35,25,.1),rgba(18,35,25,.2))}.jsv-hero__copy{margin-left:0;padding:1rem}.jsv-hero__wall-logo{top:1rem;right:1rem;width:145px}.jsv-logo-mobile{display:block;position:absolute;top:1rem;left:1rem;z-index:2;width:105px;aspect-ratio:1;border-radius:50%;background-image:url("../images/judoka-trainer-logo-v6.png");background-size:948.7% auto;background-position:24.3% 13.45%;box-shadow:0 3px 12px #10274855}}
@media(max-width:640px){.jsv-hero__inner{grid-template-columns:1fr;padding:5.5rem 1.25rem 7rem;min-height:calc(100svh - 115px);gap:0}.jsv-hero h1{font-size:clamp(3rem,13vw,4.3rem)}.jsv-hero__intro{max-width:32rem}.jsv-mark{display:none}.jsv-quick{grid-template-columns:1fr;margin:-1.4rem 1.25rem 0;padding:0;gap:1px}.jsv-quick a{padding:1rem 1.1rem}.jsv-quick a:first-child{border-radius:6px 6px 0 0}.jsv-quick a:last-child{border-radius:0 0 6px 6px}.site-grid{padding-top:2rem}.blog-item,.com-content-article,.com-contact,.com-icagenda,body.site .blog-items .blog-item{padding:1.25rem}.jsv-footer{padding:2rem 1.25rem;display:block}.jsv-footer div+div{margin-top:.7rem}.jsv-footer a{margin:0 1rem 0 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.jsv-button,.jsv-quick a{transition:none}}

@media(min-width:992px){.jsv-hero__copy{transform:translateY(100px)}}
