/*
Theme Name: Travity Basic Theme
Author: Travity Vision UG
Description: Klassisches, responsives Basistheme mit Customizer, dynamischen Sidebars und optionalem Hero oder Beitrags-Slider.
Version: 1.0.1
Requires at least: 6.5
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: travity-basic
*/
:root{--brand:#167481;--ink:#21343a;--bg:#fff;--muted:#f0f5f5;--font:system-ui,sans-serif;--size:17px;--heading:40px;--width:1200px}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font:var(--size)/1.65 var(--font)}a{color:var(--brand);text-underline-offset:.18em}img{max-width:100%;height:auto}button,input,textarea,select{font:inherit}button,.button,input[type=submit]{background:var(--brand);color:#fff;border:0;padding:.65em 1em;cursor:pointer;border-radius:4px}a:focus-visible,button:focus-visible,input:focus-visible{outline:3px solid var(--brand);outline-offset:4px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:100}.wrap{width:min(calc(100% - 40px),var(--width));margin:auto}.site-header{border-bottom:1px solid #dfe8e8;background:var(--bg)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:2rem;min-height:100px}.brand{font-size:1.4rem;font-weight:750;text-decoration:none;color:var(--ink)}.custom-logo{max-width:240px;max-height:85px;width:auto;display:block}.menu{list-style:none;padding:0;margin:0;display:flex;gap:1.4rem;align-items:center}.menu li{position:relative}.menu a{text-decoration:none;color:var(--ink);display:block;padding:.5rem 0}.menu .sub-menu{list-style:none;padding:.6rem 1rem;margin:0;min-width:210px;background:var(--bg);box-shadow:0 8px 25px #0002}.primary-menu .sub-menu{position:absolute;left:0;top:100%;z-index:20;display:none}.primary-menu li:hover>.sub-menu,.primary-menu li:focus-within>.sub-menu{display:block}.primary-menu .sub-menu .sub-menu{position:static;box-shadow:none}.menu-toggle{display:none}.layout{display:grid;grid-template-columns:minmax(0,1fr);gap:3rem;padding-block:3rem}.layout.has-sidebar{grid-template-columns:minmax(0,1fr) 290px}.layout.full-width{width:100%;max-width:none;padding-inline:0}.layout.full-width .entry-content> :not(.alignfull):not(.alignwide){max-width:var(--width);margin-left:auto;margin-right:auto}.layout.full-width .entry-header{width:min(calc(100% - 40px),var(--width));margin:auto}.entry-content:after{content:'';display:table;clear:both}h1{font-size:clamp(1.9rem,4vw,var(--heading));line-height:1.17}h2{font-size:1.65em;line-height:1.25}h3{font-size:1.3em;line-height:1.3}.entry-title a{color:inherit;text-decoration:none}.entry-meta{font-size:.9em;opacity:.75}.post-card{margin-bottom:3rem}.post-card>img{width:100%;max-height:440px;object-fit:cover}.sidebar{background:var(--muted);padding:1.5rem;align-self:start}.widget{margin-bottom:1.8rem;overflow-wrap:anywhere}.widget-title{font-size:1.1em}.site-footer{background:var(--muted);padding-block:2.5rem}.footer-widgets{display:grid;grid-template-columns:repeat(var(--columns),minmax(0,1fr));gap:2rem}.footer-bottom{border-top:1px solid #0002;padding-top:1.5rem;display:flex;justify-content:space-between;gap:1rem;flex-wrap:wrap}.hero,.slide{position:relative;background:var(--ink);color:#fff;min-height:420px;display:flex;align-items:end;isolation:isolate}.hero img,.slide img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0;z-index:-2}.hero:after,.slide:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent,#071c24dc);z-index:-1}.hero-copy{padding-block:3rem}.hero h1,.slide h2{margin:0;max-width:900px}.slide a{color:white}.slide[hidden]{display:none}.slider-controls{display:flex;align-items:center;justify-content:center;gap:1rem;padding:1rem;background:var(--muted)}.alignwide{max-width:var(--width)}.alignfull{width:100%;max-width:none}.wp-caption{max-width:100%}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.alignleft{float:left;margin:0 1.5rem 1rem 0}.alignright{float:right;margin:0 0 1rem 1.5rem}.aligncenter{display:block;margin-inline:auto}.gallery{display:flex;flex-wrap:wrap;gap:1rem}.gallery-item{max-width:100%;margin:0}.sticky{border-left:4px solid var(--brand);padding-left:1rem}.bypostauthor{border-left:2px solid var(--brand)}.comment-list{padding-left:1.5rem}.comment-form textarea{width:100%}.comment-form input:not([type=checkbox]):not([type=submit]){max-width:100%}.pagination{margin-block:2rem}.page-numbers{padding:.4rem}.wp-block-image img{height:auto}@media(max-width:800px){.header-inner{min-height:80px;flex-wrap:wrap;padding-block:1rem;gap:1rem}.menu-toggle{display:block}.primary-menu{width:100%}.primary-menu:not(.is-open){display:none}.primary-menu .menu{display:block}.primary-menu .sub-menu{display:block;position:static;box-shadow:none;padding-block:0}.layout.has-sidebar{grid-template-columns:1fr}.footer-widgets{grid-template-columns:repeat(2,minmax(0,1fr))}.hero,.slide{min-height:330px}.custom-logo{max-width:190px}.footer-bottom .menu{flex-wrap:wrap}}@media(max-width:480px){.footer-widgets{grid-template-columns:1fr}.wrap{width:calc(100% - 32px)}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* A full-width block may leave the text column, without using viewport
   units that include the browser scrollbar. Nested blocks stay contained. */
.layout:not(.has-sidebar){width:100%;container-type:inline-size}
.layout:not(.has-sidebar) .entry-header,
.layout:not(.has-sidebar) .entry-content{
 width:min(calc(100% - 40px),var(--width));margin-inline:auto;
}
.layout.full-width:not(.has-sidebar) .entry-content{width:100%}
.layout:not(.has-sidebar) .entry-content > .alignfull{
 width:100cqw;max-width:none;margin-inline:calc(50% - 50cqw);
}
.layout:not(.has-sidebar) .entry-content > .alignwide{
 width:min(calc(100cqw - 40px),calc(var(--width) + 240px));
 max-width:none;
 margin-inline:calc((100% - min(calc(100cqw - 40px),calc(var(--width) + 240px))) / 2);
}
@media(max-width:480px){
 .layout:not(.has-sidebar) .entry-header,
 .layout:not(.has-sidebar):not(.full-width) .entry-content{width:calc(100% - 32px)}
}

@media(max-width:480px){
 .layout:not(.has-sidebar) .entry-content > .alignwide{
 width:calc(100cqw - 32px);
 margin-inline:calc((100% - (100cqw - 32px)) / 2);
 }
}

.layout.full-width:not(.has-sidebar) .entry-content > :not(.alignfull):not(.alignwide){width:min(calc(100% - 40px),var(--width))}
@media(max-width:480px){.layout.full-width:not(.has-sidebar) .entry-content > :not(.alignfull):not(.alignwide){width:calc(100% - 32px)}}
