/*
Theme Name: Katzenpension Modern
Template: petotel
Version: 1.0.0
Description: Elementor-free modern styling for the Katzenpension and its checkout.
*/
:root{--km-ink:#233d37;--km-accent:#bb642f;--km-paper:#fcfaf6;--km-line:#dce4df;--km-muted:#61706a}
body{background:var(--km-paper);color:var(--km-ink);font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;font-size:16px;line-height:1.7}
h1,h2,h3,h4,h5,h6,.site-title,.main-navigation a,button,input,select,textarea{font-family:inherit}
h1,h2,h3{color:var(--km-ink);letter-spacing:-.035em;line-height:1.18}h1{font-size:clamp(2.3rem,4.5vw,4rem)}h2{font-size:clamp(1.7rem,3vw,2.5rem)}h3{font-size:1.25rem}
a{color:var(--km-accent)}a:hover{color:var(--km-ink)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #d69462;outline-offset:3px}
.site-header{background:#fff;border-bottom:1px solid var(--km-line);padding-top:22px;padding-bottom:18px}.site-header .site-title{font-size:19px;letter-spacing:0}.main-navigation a{font-size:15px;font-weight:600}.site-content{padding-top:35px}.entry-header{padding:30px 0!important;margin:0 0 25px!important}.entry-title{margin:0!important}.entry-content{margin-top:0}.site-footer{background:#edf2ed!important;color:var(--km-ink);padding:35px 0!important}
button,.button,input[type=submit],a.km-button{background:var(--km-ink);color:#fff;border-radius:9px;border:0;padding:13px 22px;font-size:15px;font-weight:650;line-height:1.4;box-shadow:none;text-transform:none}
button:hover,.button:hover,input[type=submit]:hover,a.km-button:hover{background:#34594d;color:#fff}input:not([type=checkbox]):not([type=radio]):not([type=submit]),textarea,select,.select2-container--default .select2-selection--single{border:1px solid var(--km-line);border-radius:8px;background:#fff;color:var(--km-ink);font-size:16px;padding:11px 13px;box-shadow:none;min-height:46px}label{font-size:14px;font-weight:550}
.km-hero{display:grid;grid-template-columns:1.05fr 1fr;gap:55px;align-items:center;padding:45px 0 70px}.km-hero h1{max-width:600px}.km-hero p{max-width:560px}.km-hero figure{margin:0}.km-hero img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:24px}.km-eyebrow{font-size:12px;letter-spacing:.13em;font-weight:700;color:var(--km-accent)}.km-actions{margin:25px 0}.km-button{display:inline-block;text-decoration:none!important}.km-page-sections{max-width:1040px;margin:auto}.km-page-sections h2{margin-top:65px}.km-page-sections figure img{max-height:440px;object-fit:cover;border-radius:18px}.km-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;padding:0;list-style:none}.km-benefits li{padding:20px;background:#edf2ed;border-radius:12px}.km-prices{display:flex;gap:25px}.km-prices article{padding:30px;background:#fff;border:1px solid var(--km-line);border-radius:16px;flex:1}.km-price{font-size:30px;font-weight:700}.km-price small{font-size:15px;font-weight:400}.km-testimonials blockquote{border-left:3px solid var(--km-accent);padding:20px;background:#fff}.km-testimonials cite{display:block;font-size:14px}.home .entry-header{display:none}
.woocommerce ul.products li.product{background:#fff;border:1px solid var(--km-line);border-radius:14px;overflow:hidden;padding-bottom:18px}.woocommerce ul.products li.product h2,.woocommerce ul.products li.product .price{padding-left:16px;padding-right:16px}.woocommerce div.product .product_title{font-size:clamp(1.8rem,3vw,2.7rem)}.woocommerce div.product .woocommerce-product-gallery{border-radius:16px;overflow:hidden}.woocommerce div.product .summary .price{color:var(--km-ink)}.woocommerce-info,.woocommerce-message{background:#edf2ed;border-radius:10px;color:var(--km-ink);padding:16px 22px}
.woocommerce-checkout .main-navigation,.woocommerce-checkout .header-search,.woocommerce-checkout .site-footer{display:none}.woocommerce-checkout .site-header{padding:16px 0}.woocommerce-checkout .entry-header{text-align:left;padding:15px 0!important}.woocommerce-checkout .entry-title{font-size:32px}.woocommerce-checkout .site-content{max-width:1160px;margin:auto;padding:20px 20px 60px}.woocommerce-checkout form.checkout{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:30px;align-items:start}.woocommerce-checkout #customer_details{grid-column:1;grid-row:1/3;width:100%;float:none;padding:28px;background:#fff;border:1px solid var(--km-line);border-radius:16px}.woocommerce-checkout #customer_details .col-1,.woocommerce-checkout #customer_details .col-2{float:none;width:100%;padding:0}.woocommerce-checkout #order_review_heading{display:none}.woocommerce-checkout #order_review{grid-column:2;grid-row:1/3;width:100%;float:none;padding:25px;background:#fff;border:1px solid var(--km-line);border-radius:16px}.woocommerce-checkout #payment{background:transparent;border-radius:0}.woocommerce-checkout #payment ul.payment_methods{padding:0;border:0}.woocommerce-checkout #payment ul.payment_methods li{padding:11px 12px;margin:8px 0;border:1px solid var(--km-line);border-radius:9px;line-height:1.6}.woocommerce-checkout #payment ul.payment_methods li label{display:inline}.woocommerce-checkout #payment ul.payment_methods li img{max-height:25px;width:auto;vertical-align:middle;float:right}.woocommerce-checkout #payment div.payment_box{background:#edf2ed;color:var(--km-ink);border-radius:6px;margin-top:12px;font-size:14px}.woocommerce-checkout #payment div.payment_box:before{display:none}.woocommerce-checkout #payment div.form-row{padding:18px 0 0}.woocommerce-checkout #place_order{width:100%;padding:16px}.woocommerce-checkout table.shop_table{border:0;font-size:15px}.woocommerce-checkout table.shop_table td,.woocommerce-checkout table.shop_table th{padding:12px 0;border-color:var(--km-line)}.woocommerce-checkout .form-row{margin-bottom:13px}.woocommerce-checkout .form-row-first,.woocommerce-checkout .form-row-last{width:48%}.woocommerce-checkout .woocommerce-additional-fields{margin-top:22px}.woocommerce-checkout .woocommerce-privacy-policy-text{font-size:13px;color:var(--km-muted)}
@media(max-width:767px){.km-hero{grid-template-columns:1fr;gap:25px;padding:20px 0 35px}.km-hero img{max-height:340px}.km-benefits{grid-template-columns:1fr}.km-prices{display:block}.km-prices article{margin-bottom:15px}.site-content{padding-top:20px}.woocommerce-checkout form.checkout{display:block}.woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{padding:20px;margin-bottom:20px}.woocommerce-checkout .site-content{padding:12px 14px 40px}.woocommerce-checkout .entry-title{font-size:27px}}

/* Compact checkout and stronger heading hierarchy override Petotel customizer rules. */
body h1,body h2,body h3{font-weight:650!important;font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important}
body.woocommerce-checkout #primary.content-area{padding:0!important}
body.woocommerce-checkout .entry-title{font-size:32px!important;text-align:left!important}
body.woocommerce-checkout .entry-header{text-align:left!important}
body.woocommerce-checkout #order_review:before{content:"Ihre Bestellung";display:block;font-size:21px;font-weight:650;margin-bottom:15px}
@media(max-width:767px){body.woocommerce-checkout .entry-title{font-size:27px!important}}

@media(max-width:767px){.site-branding{min-width:0!important;max-width:100%!important}.site-title{white-space:normal!important;font-size:15px!important;line-height:1.35!important}.site-title a{white-space:normal!important}.additional-navigation-links{max-width:100%}.site-header{overflow:hidden}}

body.home{--km-ink:#48382e;--km-accent:#c77743;--km-paper:#fffaf3;--km-line:#eadfd2;background:#fffaf3}
body.home #primary.content-area{padding:0!important;width:100%;float:none}
body.home .site-content{max-width:1320px!important;padding:32px 28px 80px!important;margin:auto}
body.home .site-header{padding-top:24px;padding-bottom:18px}
body.home .km-hero{padding:0!important;gap:0;grid-template-columns:1fr 1fr;background:#f3e8d9;border-radius:24px;overflow:hidden;min-height:570px}
body.home .km-hero>div{padding:58px 54px}
body.home .km-hero .km-eyebrow{margin:0 0 26px;color:#9f623b}
body.home .km-hero h1{font-family:Georgia,serif!important;font-size:clamp(38px,4vw,64px)!important;font-weight:400!important;line-height:1.07;letter-spacing:-.04em;margin:0 0 24px;max-width:none}
body.home .km-lead{font-size:21px;font-weight:500;line-height:1.45;margin-bottom:22px}
body.home .km-hero p:not(.km-eyebrow):not(.km-lead):not(.km-actions){font-size:16px;line-height:1.65;color:#655447}
body.home .km-hero figure{height:100%;min-height:570px}
body.home .km-hero img{width:100%;height:100%;min-height:570px;aspect-ratio:auto;object-fit:cover;object-position:center 42%;border-radius:0}
body.home .km-button{background:#b66b3d;padding:15px 25px;border-radius:8px}
body.home .km-page-sections{max-width:1160px;margin:55px auto 0}
body.home .km-page-sections h2{font-family:Georgia,serif!important;font-weight:400!important;font-size:38px!important;color:#48382e}
body.home .km-benefits li{background:#f3e8d9;border-radius:14px}
body.home .km-prices article{border-color:#eadfd2;background:#fffdf9}
@media(max-width:767px){body.home .site-content{padding:15px 16px 50px!important}body.home .km-hero{grid-template-columns:1fr}body.home .km-hero>div{padding:32px 26px}body.home .km-hero h1{font-size:42px!important}body.home .km-hero figure,body.home .km-hero img{min-height:0;height:370px}body.home .km-page-sections h2{font-size:30px!important}}

body.home .entry-content>.km-hero{max-width:none!important;width:100%;margin:0}body.home .km-hero h1{font-size:clamp(38px,3vw,60px)!important}body.home .site-header{padding-top:18px!important;padding-bottom:14px!important}

@media(min-width:768px){body.home .km-hero{min-height:570px;align-items:stretch}body.home .km-hero figure,body.home .km-hero img{height:570px;min-height:570px}body.home .km-hero>div{align-self:center}}

body.woocommerce-cart,body.woocommerce-account,body.post-type-archive-product,body.single-product{--km-ink:#48382e;--km-accent:#b66b3d;--km-paper:#fffaf3;--km-line:#eadfd2;background:#fffaf3}
body.woocommerce-cart #primary.content-area,body.woocommerce-account #primary.content-area{padding:20px 0 60px!important}
body.woocommerce-cart .site-content,body.woocommerce-account .site-content{max-width:1200px;margin:auto;padding:20px}
body.woocommerce-cart .entry-title,body.woocommerce-account .entry-title{font-size:36px!important;text-align:left!important}
body.woocommerce-cart .entry-header,body.woocommerce-account .entry-header{padding:12px 0 25px!important}
body.woocommerce-cart .woocommerce{display:grid;grid-template-columns:minmax(0,1.6fr) minmax(300px,1fr);gap:28px;align-items:start}
body.woocommerce-cart .woocommerce-notices-wrapper{grid-column:1/-1}
body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals{background:#fffdf9;border:1px solid #eadfd2;border-radius:16px;padding:24px;min-width:0}
body.woocommerce-cart .cart-collaterals .cart_totals{float:none;width:100%}
body.woocommerce-cart table.shop_table{border:0;margin:0;font-size:15px}
body.woocommerce-cart table.shop_table td,body.woocommerce-cart table.shop_table th{padding:14px 8px;border-color:#eadfd2}
body.woocommerce-cart .product-thumbnail img{width:70px;border-radius:8px}
body.woocommerce-cart .quantity input{width:70px;min-height:44px}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{border-radius:9px;background:#b66b3d;font-size:17px;margin:12px 0 0;padding:16px}
body.woocommerce-cart .coupon{display:flex;gap:8px;flex-wrap:wrap}body.woocommerce-cart .coupon input{width:140px!important}
body.woocommerce-account .woocommerce-MyAccount-navigation{background:#f3e8d9;border-radius:14px;padding:20px}
body.woocommerce-account .woocommerce-MyAccount-content{background:#fffdf9;border:1px solid #eadfd2;border-radius:14px;padding:25px}
@media(max-width:767px){body.woocommerce-cart .woocommerce{display:block}body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals{padding:14px;margin-bottom:20px}body.woocommerce-cart .site-content,body.woocommerce-account .site-content{padding:14px}body.woocommerce-cart .entry-title,body.woocommerce-account .entry-title{font-size:28px!important}}

body.woocommerce-cart .woocommerce-breadcrumb{display:none}body.woocommerce-cart .cart-collaterals{margin:0!important}body.woocommerce-cart .woocommerce-cart-form{margin:0!important}body.woocommerce-cart .woocommerce>p,body.woocommerce-cart .return-to-shop{grid-column:1/-1}body.woocommerce-cart .woocommerce>p:empty{display:none}body.woocommerce-cart .product-name{width:38%}body.woocommerce-cart .product-name a{color:#48382e}body.woocommerce-cart .entry-content>.woocommerce{max-width:none!important}body.woocommerce-cart .entry-header{border:0;margin-bottom:20px}body.woocommerce-cart .woocommerce a.checkout-button{display:block;text-align:center;width:100%}
body.woocommerce-cart table.shop_table th{font-size:13px;white-space:normal;line-height:1.4}body.woocommerce-cart .product-price,body.woocommerce-cart .product-subtotal{white-space:nowrap;font-size:14px}body.woocommerce-cart .product-quantity{width:65px}body.woocommerce-cart .quantity input{width:60px}body.woocommerce:not(.woocommerce-checkout) #primary.content-area{padding:25px 0 60px!important}body.post-type-archive-product .entry-header,body.post-type-archive-product .page-header{padding:20px 0 30px!important}body.post-type-archive-product .page-title{font-size:36px!important}body.post-type-archive-product .woocommerce-breadcrumb{padding:12px 0;margin-bottom:22px}body.woocommerce-account .woocommerce-MyAccount-content{margin-top:25px!important}body.woocommerce-account .entry-content>.woocommerce{max-width:none!important}