/*
Theme Name: Tiermarken Storefront
Template: storefront
Description: Child-Theme für Tiermarken Studio. Übernimmt Farben und Schrift des Markendesigners, lädt keine externen Schriften.
Version: 1.1.10
Text Domain: tiermarken-storefront
*/

/* Same tokens as the designer (tiermarken-studio/assets/studio.css :host). */
:root{--ink:#243e34;--muted:#7a807a;--green:#315747;--green-dark:#234436;--paper:#faf9f5;--line:#e6e7df;--soft:#eef0e9;--orange:#d28a4e;--field:#dce1d8;--font:Arial,Helvetica,sans-serif}

body,button,input,select,textarea,.button,.main-navigation a,.site-title,.widget-title,.woocommerce-breadcrumb{font-family:var(--font)}
body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3,h4,h5,h6,.entry-title,.page-title,.alpha,.beta,.gamma{font-family:var(--font);font-weight:500;letter-spacing:-.04em;line-height:1.15;color:var(--ink)}
h1,.entry-title,.page-title{font-size:clamp(2rem,3.2vw,2.9rem)}
a{color:var(--ink)}a:hover,a:focus{color:var(--green)}
:focus-visible{outline:2px solid var(--orange);outline-offset:3px}

/* Header */
.site-header{background:#fff;border-bottom:1px solid var(--line);padding-top:1.6em}
.site-branding .site-title a{color:var(--ink);font-weight:700;letter-spacing:-.045em}
.site-branding .site-description{color:var(--muted);font-size:.85em}
.main-navigation ul.menu>li>a,.main-navigation ul.nav-menu>li>a{color:var(--ink);font-weight:600;font-size:.95em}
.main-navigation ul li a:hover,.main-navigation ul li.current-menu-item>a,.main-navigation ul li.current_page_item>a{color:var(--green)}
.main-navigation ul li.current-menu-item>a,.main-navigation ul li.current_page_item>a{box-shadow:inset 0 -3px 0 var(--green)}
.site-search .widget_product_search input[type=search]{background:var(--soft);border-radius:7px}
.site-header-cart .cart-contents,.site-header-cart .cart-contents .amount{color:var(--ink)}
.menu-toggle{border-radius:7px;border-color:var(--field)!important;color:var(--ink)!important}
.woocommerce-breadcrumb{background:transparent;color:var(--muted);font-size:.85em}
.woocommerce-breadcrumb a{color:var(--muted)}

/* Buttons and fields */
button,input[type=button],input[type=reset],input[type=submit],.button,.wc-block-components-button,.added_to_cart{background:var(--green);border-color:var(--green);color:#fff;border-radius:7px;font-weight:600;letter-spacing:.01em;padding:.85em 1.4em}
button:hover,input[type=button]:hover,input[type=reset]:hover,input[type=submit]:hover,.button:hover,.added_to_cart:hover{background:var(--green-dark);border-color:var(--green-dark);color:#fff}
button.alt,input[type=button].alt,input[type=submit].alt,.button.alt,.widget-area .widget a.button.alt{background:var(--ink);border-color:var(--ink);color:#fff}
button.alt:hover,.button.alt:hover,input[type=submit].alt:hover{background:#182c24;border-color:#182c24;color:#fff}
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=password],input[type=search],input[type=number],textarea,select,.input-text{background:#fff;border:1px solid var(--field);border-radius:7px;box-shadow:none;color:var(--ink)}
input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus,input[type=password]:focus,input[type=search]:focus,input[type=number]:focus,textarea:focus,.input-text:focus{background:#fff;border-color:var(--green)}
label{color:var(--ink)}

/* Shop */
ul.products li.product img,.woocommerce-product-gallery img{border-radius:12px}
ul.products li.product .woocommerce-loop-product__title{color:var(--ink);font-weight:500;letter-spacing:-.02em}
ul.products li.product .price,.single-product div.product p.price{color:var(--green);font-weight:600}
.onsale{border-color:var(--orange);color:var(--orange);border-radius:6px}
table,table th,table td{border-color:var(--line)}
table thead th{background:var(--soft)}
.woocommerce-message,.woocommerce-info,.woocommerce-noreviews,p.no-comments{background:var(--soft);color:var(--ink);border-left:4px solid var(--green);border-radius:8px}
.woocommerce-message a,.woocommerce-info a{color:var(--ink)}
.woocommerce-error,.woocommerce-NoticeGroup .woocommerce-error{background:#fff0e0;color:#8a5526;border-left:4px solid var(--orange);border-radius:8px}
.woocommerce-MyAccount-navigation ul li a{color:var(--ink)}
.woocommerce-MyAccount-navigation ul li.is-active a{color:var(--green);font-weight:600}
#payment,.woocommerce-checkout-review-order{background:#fff;border-radius:12px}
.woocommerce-checkout #payment .payment_methods li .payment_box{background:var(--soft)}

/* Footer */
.site-footer{background:var(--soft);color:var(--muted);border-top:1px solid var(--line)}
.site-footer a{color:var(--ink)}
.storefront-handheld-footer-bar{background:#fff;border-top:1px solid var(--line)}
.storefront-handheld-footer-bar ul li>a{background:#fff;color:var(--ink)}
.storefront-handheld-footer-bar ul li.cart .count{background:var(--green);border-color:#fff;color:#fff}

/* Block buttons and homepage content */
.wp-block-button__link,.wp-element-button{background:var(--green);color:#fff;border-radius:7px;font-weight:600}
.wp-block-button__link:hover{background:var(--green-dark);color:#fff}
.wp-block-button.is-style-outline>.wp-block-button__link,.wp-block-button.is-style-outline>.wp-block-button__link:not(:hover){background:#fff;color:var(--ink);border:1px solid var(--field)}
.wp-block-button.is-style-outline>.wp-block-button__link:hover{background:var(--soft);color:var(--ink)}
.page-template-template-homepage .entry-header{display:none}
.page-template-template-homepage .entry-content .wp-block-buttons{justify-content:center}
.page-template-template-homepage .entry-content ol{display:table;margin-left:auto;margin-right:auto;text-align:left;padding-left:1.4em}
.hentry .entry-content .wp-block-button .wp-block-button__link{border-radius:7px}.hentry .entry-content .wp-block-button.is-style-outline .wp-block-button__link{border:1px solid var(--field)}

/* Logo (wordmark incl. tagline): sized by height, so wordmarks of different length keep the same size; tall enough on desktop for the tagline to stay readable. */
body .site-header .custom-logo-link img{height:51px;width:auto;max-width:100%}
@media(min-width:768px){body .site-header .custom-logo-link img{height:83px;max-width:none}body .site-header .site-branding{margin-bottom:1.2em}}

/* iOS Safari zooms into focused fields with text below 16px (checkout, search, account) and stays zoomed. */
@media(max-width:768px){input:not([type=checkbox]):not([type=radio]):not([type=submit]):not([type=button]),select,textarea,.select2-container .select2-selection{font-size:16px!important}}

/* Landing page sections (block classes tm-*). Pages containing them get body class tm-landing. */
.tm-landing .entry-header,.tm-landing .storefront-breadcrumb{display:none}
.tm-hero{align-items:center!important;margin:1em 0 3.5em}
.tm-eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.78em;font-weight:700;color:var(--green);margin-bottom:.5em}
.tm-hero h1{font-size:clamp(2rem,4vw,3rem);margin:0 0 .45em}
.tm-hero .wp-block-buttons{margin:1.4em 0 1em}
.tm-facts{color:var(--muted);font-size:.9em;margin-bottom:.4em}
.tm-small{font-size:.9em}
.tm-section{margin:4em 0}
.tm-section:not(.tm-band) h2.wp-block-heading,.tm-center{text-align:center}
.tm-lead{text-align:center;color:var(--muted);max-width:40em;margin:0 auto 2em}
.tm-band{background:var(--soft);border-radius:18px;padding:2.5em 2em}
.tm-band .wp-block-columns{align-items:center!important}
.tm-phone img{width:280px;max-width:100%;border:9px solid #1e2b25;border-radius:32px;box-shadow:0 18px 40px #0002;display:block;margin:auto}
.tm-steps{counter-reset:tm;list-style:none;margin:1.2em 0 1.4em;padding:0}
.tm-steps li{counter-increment:tm;position:relative;padding-left:2.7em;margin-bottom:1em}
.tm-steps li::before{content:counter(tm);position:absolute;left:0;top:-.1em;width:1.85em;height:1.85em;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700;font-size:.9em}
.tm-checks{list-style:none;margin:0 0 1.6em;padding:0}
.tm-checks li{position:relative;padding-left:1.7em;margin-bottom:.45em}
.tm-checks li::before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}
.tm-styles .wp-block-image img{border-radius:14px}
.tm-styles figcaption{text-align:center;font-weight:600;color:var(--ink)}
/* "So einfach geht's": numbered cards. Storefront zeroes the side padding of block columns (.hentry .entry-content .wp-block-columns .wp-block-column), hence the higher specificity. */
.tm-how{counter-reset:tmhow}
.hentry .entry-content .tm-how.wp-block-columns>.wp-block-column{counter-increment:tmhow;background:#fff;border:1px solid var(--line);border-radius:14px;padding:1.6em 1.7em 1.5em}
.tm-how>.wp-block-column::before{content:counter(tmhow);display:grid;place-items:center;width:2.1em;height:2.1em;border-radius:50%;background:var(--green);color:#fff;font-weight:700;margin-bottom:1em}
.entry-content .tm-how h3{font-size:1.2em;font-weight:600;letter-spacing:-.02em;margin:0 0 .4em}
.entry-content .tm-how p{margin:0;line-height:1.6;color:#4a5650}
.tm-cta{text-align:center}
.tm-cta .wp-block-buttons{justify-content:center}
.tm-scan figcaption{text-align:center;font-size:.85em;color:var(--muted);margin-top:.2em}
.tm-scan a{display:block}
/* Device-specific hint texts: scanning works from a computer screen, tapping on a phone. */
.tm-only-phone{display:none}
@media(max-width:781px){.tm-only-phone{display:inline}.tm-only-desktop{display:none}}
@media(max-width:781px){.tm-hero{margin-top:0}.tm-hero .wp-block-column:last-child{order:-1}.tm-band{padding:2em 1.2em}.tm-section{margin:3em 0}
.tm-styles{flex-wrap:nowrap!important;gap:.7em!important}.tm-styles>.wp-block-column{flex-basis:0!important;min-width:0}.tm-styles figcaption{font-size:.75em}}
/* Product row on phones: two per line instead of one long column. */
@media(max-width:767px){.tm-section ul.products{display:grid;grid-template-columns:1fr 1fr;gap:1.2em .9em}.tm-section ul.products::before,.tm-section ul.products::after{display:none}.tm-section ul.products li.product{width:auto!important;float:none!important;margin:0!important}.tm-section ul.products li.product .woocommerce-loop-product__title{font-size:.85em}.tm-section ul.products li.product .button{padding:.7em .8em;font-size:.85em}}
