/*
Theme Name: NFZ A61 – Nutzfahrzeug Service
Description: Bearbeitbare Onepage auf Basis des NFZ-A61-Flyers. Native WordPress-Blöcke, frei anpassbare Schriften, Farben, Verläufe und Bilder.
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Author: NutzFahrzeugService an der A61
Text Domain: nfz-a61
License: GPL-2.0-or-later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

/* Layout defaults have intentionally low specificity. Editor styles and
   per-block typography, colors and spacing override these defaults. */
:root{--nfz-line:#dce4eb}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:30px}
body{margin:0}
img{max-width:100%;height:auto}
a:focus-visible,button:focus-visible{outline:3px solid #78b8ff;outline-offset:4px}
:where(.nfz-container){width:min(1200px,calc(100% - 80px));margin-left:auto;margin-right:auto}
:where(.nfz-section){padding-top:80px;padding-bottom:80px}
:where(.nfz-section-heading){margin-bottom:36px;align-items:flex-end}
:where(.nfz-section-heading h2){margin:0}
:where(.nfz-section-heading p){margin-top:0;margin-bottom:14px}
:where(.nfz-section-heading>.wp-block-column:last-child>p){max-width:360px;margin-bottom:3px}
:where(.nfz-eyebrow){text-transform:uppercase;letter-spacing:.15em;font-weight:700;margin-top:0;margin-bottom:18px}
:where(.nfz-eyebrow)::before{content:"";width:24px;height:2px;background:currentColor;display:inline-block;vertical-align:middle;margin-right:10px}
:where(.nfz-topbar){padding:8px 0}
:where(.nfz-topbar p){margin:0}
:where(.nfz-topbar-columns){gap:15px;align-items:center}
:where(.nfz-top-phone){text-align:right}
:where(.nfz-masthead){padding:20px 0}
:where(.nfz-masthead-inner){gap:30px}
:where(.nfz-brand){gap:13px;flex-shrink:0}
:where(.nfz-brand-image){width:75px;flex-shrink:0}
:where(.nfz-brand-image img){display:block;width:100%;object-fit:contain}
:where(.nfz-brand-text){display:flex;flex-direction:column;gap:0}
:where(.nfz-brand-text p){margin:0;line-height:1.12}
:where(.nfz-brand-top){font-weight:800;letter-spacing:.045em}
:where(.nfz-brand-location){letter-spacing:.075em;padding-top:4px}
:where(.nfz-navigation){margin-left:auto}
:where(.nfz-hero){overflow:hidden}
:where(.nfz-hero-columns){gap:0;align-items:center;min-height:575px}
:where(.nfz-hero-copy){padding:60px 38px 65px 0}
:where(.nfz-hero-title){letter-spacing:-.045em;line-height:1.08;margin-top:0;margin-bottom:24px}
:where(.nfz-hero-description){max-width:430px;margin-bottom:27px;line-height:1.75}
:where(.nfz-hero-tags){opacity:.9;margin-top:23px}
:where(.nfz-hero-image){height:575px;margin-right:calc((min(1200px,100vw - 80px) - 100vw)/2)}
:where(.nfz-hero-image img){width:100%;height:100%;object-fit:cover;object-position:57% 50%;mask-image:linear-gradient(90deg,transparent 0%,#000 17%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 17%);display:block}
:where(.nfz-hero .is-style-outline .wp-block-button__link){border-color:#ffffff90;background:transparent;color:inherit}
:where(.nfz-advantages){padding:27px 0;border-bottom:1px solid var(--nfz-line)}
:where(.nfz-advantages h3,.nfz-advantages p){margin:0}
:where(.nfz-advantages h3){margin-bottom:4px}
:where(.nfz-advantages-columns>.wp-block-column+.wp-block-column){border-left:1px solid var(--nfz-line);padding-left:22px}
:where(.nfz-services-row+.nfz-services-row){margin-top:24px}
:where(.nfz-service-card){border:1px solid var(--nfz-line);border-radius:4px;overflow:hidden;height:100%}
:where(.nfz-service-image img){display:block;width:100%;height:175px;object-fit:cover;object-position:50% 46%}
:where(.nfz-service-content){padding:21px 22px 24px}
:where(.nfz-service-content h3){margin-top:0;margin-bottom:12px}
:where(.nfz-service-content p){margin-top:0;margin-bottom:0}
:where(.nfz-service-content p:not(.nfz-service-link):not(.nfz-service-number)){min-height:70px}
:where(.nfz-service-number){letter-spacing:.1em;font-weight:700;margin-bottom:10px}
:where(.nfz-service-link){font-weight:700;padding-top:17px}
:where(.nfz-service-link a:hover){text-decoration:underline}
:where(.nfz-partners-columns){align-items:center;gap:65px}
:where(.nfz-partners h2){margin-top:0}
:where(.nfz-partners p){max-width:460px}
:where(.nfz-partner-item){padding:16px 0;border-bottom:1px solid #ffffff35}
:where(.nfz-partner-list){gap:25px}
:where(.nfz-step){border-top:1px solid #cbd8e4;padding-top:22px}
:where(.nfz-step h3){margin-top:0;margin-bottom:10px}
:where(.nfz-step p){margin-top:0}
:where(.nfz-step-number){font-weight:800;letter-spacing:.08em;margin-bottom:16px}
:where(.nfz-contact-card,.nfz-hours-card){padding:35px;border-radius:4px;height:100%}
:where(.nfz-hours-card){border:1px solid var(--nfz-line)}
:where(.nfz-contact-card p,.nfz-hours-card p){margin-top:0}
:where(.nfz-phone){margin-top:0;margin-bottom:12px;letter-spacing:-.03em}
:where(.nfz-email){margin-bottom:26px}
:where(.nfz-address){border-top:1px solid #ffffff35;padding-top:23px;line-height:1.8;margin-bottom:23px}
:where(.nfz-hours-card h3){margin-top:0;margin-bottom:25px}
:where(.nfz-hours-table){margin:0 0 20px}
:where(.nfz-hours-table table){width:100%;border-collapse:collapse}
:where(.nfz-hours-table td){border:0;border-bottom:1px solid var(--nfz-line);padding:15px 0;font-size:14px}
:where(.nfz-hours-table td:last-child){text-align:right}
:where(.nfz-location-note){padding:17px;border-left:3px solid var(--wp--preset--color--primary);margin-top:25px}
:where(.nfz-location-note h3,.nfz-location-note p){margin:0}
:where(.nfz-location-note h3){margin-bottom:4px}
:where(.nfz-footer){padding:34px 0 20px}
:where(.nfz-footer-columns){border-bottom:1px solid #ffffff25;padding-bottom:22px;margin-bottom:18px}
:where(.nfz-footer p){margin:0}
:where(.nfz-footer-links){text-align:right;line-height:2}
:where(.nfz-page-content){padding-top:70px;padding-bottom:80px;min-height:50vh}
:where(.nfz-draft-note){padding:16px;background:#eef4fa;border-left:3px solid var(--wp--preset--color--primary)}
:where(.wp-site-blocks>*){margin-top:0}
@media(max-width:1000px){:where(.nfz-container){width:calc(100% - 48px)}:where(.nfz-section){padding-top:65px;padding-bottom:65px}:where(.nfz-hero-image){margin-right:-24px}:where(.nfz-hero-copy){padding-right:22px}:where(.nfz-service-content){padding:18px}:where(.nfz-masthead-inner){gap:20px}}
@media(max-width:781px){:where(.nfz-hero-copy){padding:45px 0 32px}:where(.nfz-hero-columns){min-height:0}:where(.nfz-hero-image){height:360px;margin-left:-24px;margin-right:-24px}:where(.nfz-hero-image img){object-position:center 60%;mask-image:linear-gradient(180deg,transparent 0%,#000 15%);-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 15%)}:where(.nfz-advantages-columns){display:grid;grid-template-columns:1fr 1fr;gap:22px}:where(.nfz-advantages-columns>.wp-block-column+.wp-block-column){border:0;padding-left:0}:where(.nfz-section-heading){gap:15px;align-items:start}:where(.nfz-section-heading>.wp-block-column:last-child>p){max-width:none}:where(.nfz-services-row){gap:22px}:where(.nfz-service-image img){height:225px}:where(.nfz-service-content p:not(.nfz-service-link):not(.nfz-service-number)){min-height:0}:where(.nfz-partners-columns){gap:30px}:where(.nfz-partner-list){display:grid;grid-template-columns:1fr 1fr;gap:20px}:where(.nfz-contact-columns){gap:20px}:where(.nfz-steps){gap:25px}:where(.nfz-footer-links){text-align:left}:where(.nfz-topbar-columns){display:flex;flex-wrap:nowrap}:where(.nfz-topbar-columns>.wp-block-column){flex:1 1 0%}}
@media(max-width:540px){:where(.nfz-container){width:calc(100% - 36px)}:where(.nfz-section){padding-top:50px;padding-bottom:50px}:where(.nfz-masthead){padding:18px 0}:where(.nfz-brand-image){width:48px}:where(.nfz-brand){gap:9px}:where(.nfz-masthead-inner){gap:14px}:where(.nfz-brand-service){font-size:22px}:where(.nfz-brand-top){font-size:10px}:where(.nfz-brand-location){font-size:8px}:where(.nfz-topbar){padding:7px 0}:where(.nfz-topbar p){font-size:8px}:where(.nfz-top-phone){font-size:10px}:where(.nfz-hero-image){height:290px;margin-left:-18px;margin-right:-18px}:where(.nfz-hero-copy){padding-top:38px}:where(.nfz-contact-card,.nfz-hours-card){padding:26px}:where(.nfz-service-image img){height:205px}:where(.nfz-hours-table td){font-size:12px}:where(.nfz-advantages h3){font-size:12px}:where(.nfz-advantages p){font-size:11px}:where(.nfz-partner-item){font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
/* Editor-only: make image replacement and block selection easy. */
.editor-styles-wrapper :where(.nfz-hero-image){margin-right:0;margin-left:0}
