/*
Theme Name: Krezor Blog
Theme URI: https://www.krezor.com/
Author: Krezor
Description: GeneratePress child theme styled to match the Krezor corporate website.
Version: 1.0.0
Template: generatepress
Text Domain: krezor-blog
*/

:root {
	--kz-night: #031226;
	--kz-night-2: #061b32;
	--kz-accent: #00d8e7;
	--kz-blue: #0685fa;
	--kz-ink: #08182c;
	--kz-muted: #536073;
	--kz-line: #e3eaf2;
	--kz-pale: #f4f8fc;
	--kz-width: 1180px;
}
html { scroll-behavior: smooth; }
body { background: #fff; color: var(--kz-ink); font-family: "DM Sans", Arial, sans-serif; font-size: 16px; line-height: 1.65; }
h1,h2,h3,h4,h5,h6 { color: var(--kz-ink); font-family: Manrope,"DM Sans",Arial,sans-serif; font-weight: 800; letter-spacing: -.045em; line-height: 1.16; }
a { color: var(--kz-blue); }
a:hover,a:focus { color: #005fc2; }
.site-header { display:none !important; }

.kz-header { position:sticky; top:0; z-index:999; background:var(--kz-night); border-bottom:1px solid rgba(255,255,255,.08); box-shadow:0 8px 24px rgba(2,12,28,.14); }
.kz-header-inner { width:min(var(--kz-width),calc(100% - 48px)); min-height:82px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:30px; }
.kz-brand { display:inline-flex; align-items:center; gap:10px; color:#fff; text-decoration:none; font-family:Manrope,"DM Sans",sans-serif; font-size:25px; font-weight:800; letter-spacing:-1.2px; }
.kz-brand:hover,.kz-brand:focus { color:#fff; }
.kz-brand img { width:34px; height:34px; object-fit:contain; }
.kz-brand b { color:var(--kz-accent); }
.kz-nav { display:flex; align-items:center; justify-content:flex-end; gap:clamp(16px,2.1vw,29px); }
.kz-nav a { color:#e7f4ff; font-size:13px; font-weight:700; text-decoration:none; transition:color .2s,background .2s,border-color .2s; }
.kz-nav a:hover,.kz-nav a:focus,.kz-nav .kz-current { color:var(--kz-accent); }
.kz-nav .kz-contact { padding:10px 17px; border:1px solid rgba(255,255,255,.75); border-radius:7px; color:#fff; }
.kz-nav .kz-contact:hover,.kz-nav .kz-contact:focus { background:#fff; color:var(--kz-night); }
.kz-menu-toggle { display:none; }

.site-content { padding:0 0 78px; }
.content-area { width:100%; }
.inside-article,.comments-area,.page-header,.paging-navigation { border:0; }
.inside-article { padding:0; background:transparent; }
.site-main { width:min(var(--kz-width),calc(100% - 48px)); margin:0 auto; }
.page-header { margin:0 0 34px; padding:56px 0 25px; }
.page-header .page-title,.entry-title { color:var(--kz-ink); font-weight:800; letter-spacing:-.045em; line-height:1.16; }
.page-header .page-title { margin:0; font-size:clamp(36px,5vw,56px); }
.page-header .taxonomy-description { max-width:720px; margin-top:14px; color:var(--kz-muted); }
.site-main>article { margin:0 0 32px; padding:0 0 30px; border-bottom:1px solid var(--kz-line); }
.post-image,.featured-image { margin-bottom:0; }
.post-image img,.featured-image img { width:100%; height:auto; border-radius:12px; }
.entry-header { margin-bottom:14px; }
.entry-title { font-size:clamp(28px,3.5vw,42px); }
.entry-title a { color:inherit; text-decoration:none; }
.entry-title a:hover { color:var(--kz-blue); }
.entry-meta,.entry-meta a,.cat-links a,.tags-links a { color:var(--kz-muted); font-size:13px; }
.entry-summary,.entry-content { color:#35445a; }
.entry-summary p,.entry-content p { margin-bottom:1.25em; }
.entry-content h2,.entry-content h3,.entry-content h4 { margin-top:1.6em; color:var(--kz-ink); font-family:Manrope,"DM Sans",sans-serif; font-weight:800; line-height:1.22; }
.entry-content h2 { font-size:clamp(27px,3vw,38px); }
.entry-content h3 { font-size:clamp(22px,2.4vw,29px); }
.entry-content img { border-radius:12px; }
.entry-content blockquote { padding:20px 24px; border-left:4px solid var(--kz-accent); background:var(--kz-pale); color:#35445a; }
.entry-content a { text-decoration-thickness:1px; text-underline-offset:3px; }
.entry-content .wp-block-button__link,.button,button,input[type="button"],input[type="submit"] { border-radius:8px; background:var(--kz-blue); }
.entry-content .wp-block-button__link:hover,.button:hover,button:hover,input[type="button"]:hover,input[type="submit"]:hover { background:#006bd1; }
.pagination,.paging-navigation { margin-top:35px; }
.nav-links .page-numbers,.nav-links a { display:inline-flex; align-items:center; justify-content:center; min-width:42px; min-height:42px; margin:3px; padding:7px 12px; border:1px solid var(--kz-line); border-radius:8px; color:var(--kz-blue); text-decoration:none; }
.nav-links .current,.nav-links a:hover { border-color:var(--kz-blue); background:var(--kz-blue); color:#fff; }
.comments-area { margin-top:45px; padding:28px; border:1px solid var(--kz-line); border-radius:12px; }
.sidebar .widget { margin-bottom:25px; padding:24px; border:1px solid var(--kz-line); border-radius:12px; }
.sidebar .widget-title { color:var(--kz-ink); font-family:Manrope,sans-serif; font-size:20px; font-weight:800; }
.sidebar a { text-decoration:none; }

.kz-footer-cta { background:linear-gradient(115deg,var(--kz-night),#082746); color:#fff; }
.kz-footer-cta-inner { width:min(var(--kz-width),calc(100% - 48px)); margin:0 auto; padding:48px 0; display:flex; align-items:center; justify-content:space-between; gap:28px; }
.kz-eyebrow { color:var(--kz-accent); font-size:11px; font-weight:800; letter-spacing:1.5px; }
.kz-footer-cta h2 { margin:9px 0; color:#fff; font-size:clamp(28px,3vw,39px); }
.kz-footer-cta p { margin:0; color:#c7d7e7; font-size:15px; }
.kz-footer-cta-inner>a { display:inline-flex; flex:0 0 auto; align-items:center; gap:9px; padding:13px 21px; border:1px solid var(--kz-accent); border-radius:8px; color:var(--kz-night); background:var(--kz-accent); font-size:14px; font-weight:800; text-decoration:none; }
.kz-footer-cta-inner>a:hover { color:var(--kz-accent); background:transparent; }
.kz-footer { background:#020c1c; color:#fff; }
.kz-footer-main { width:min(var(--kz-width),calc(100% - 48px)); margin:0 auto; padding:42px 0 28px; display:grid; grid-template-columns:minmax(220px,1fr) 2fr; align-items:start; gap:38px; }
.kz-footer-brand { display:inline-flex; align-items:center; gap:9px; color:#fff; font-family:Manrope,sans-serif; font-size:23px; font-weight:800; text-decoration:none; }
.kz-footer-brand img { width:31px; height:31px; }
.kz-footer-brand b { color:var(--kz-accent); }
.kz-footer-main p { margin:12px 0 0; color:#9fb2c7; font-size:13px; }
.kz-footer-links { display:flex; flex-wrap:wrap; justify-content:flex-end; gap:12px 22px; }
.kz-footer-links a { color:#d8e5f1; font-size:13px; text-decoration:none; }
.kz-footer-links a:hover { color:var(--kz-accent); }
.kz-footer-bottom { width:min(var(--kz-width),calc(100% - 48px)); margin:0 auto; padding:17px 0 20px; display:flex; justify-content:space-between; gap:15px; border-top:1px solid rgba(255,255,255,.12); color:#8da1b8; font-size:12px; }
.site-footer { background:#020c1c; }
.site-footer .inside-site-info,.site-footer .footer-widgets { display:none!important; }

@media(max-width:860px) {
	.kz-header-inner { width:calc(100% - 36px); min-height:72px; }
	.kz-menu-toggle { width:43px; height:43px; display:inline-flex; align-items:center; justify-content:center; padding:0; border:1px solid rgba(255,255,255,.28); border-radius:7px; color:#fff; background:transparent; cursor:pointer; }
	.kz-menu-bars { display:flex; flex-direction:column; gap:4px; }
	.kz-menu-bars i { display:block; width:18px; height:2px; background:currentColor; }
	.kz-nav { position:absolute; top:100%; left:0; right:0; display:none; align-items:stretch; gap:0; padding:8px 18px 17px; background:var(--kz-night-2); box-shadow:0 14px 20px rgba(2,12,28,.2); }
	.kz-nav.is-open { display:flex; flex-direction:column; }
	.kz-nav a { padding:12px 8px; }
	.kz-nav .kz-contact { margin-top:7px; text-align:center; }
	.site-main,.kz-footer-cta-inner,.kz-footer-main,.kz-footer-bottom { width:calc(100% - 36px); }
}
@media(max-width:600px) {
	.site-content { padding-bottom:52px; }
	.page-header { margin-bottom:22px; padding:38px 0 18px; }
	.site-main>article { margin-bottom:24px; padding-bottom:23px; }
	.entry-title { font-size:29px; }
	.kz-footer-cta-inner { align-items:flex-start; flex-direction:column; padding:36px 0; }
	.kz-footer-cta-inner>a { align-self:flex-start; }
	.kz-footer-main { grid-template-columns:1fr; gap:25px; }
	.kz-footer-links { justify-content:flex-start; }
	.kz-footer-bottom { flex-direction:column; }
}
@media(prefers-reduced-motion:reduce) { html{scroll-behavior:auto} *,*::before,*::after{transition-duration:.01ms!important;animation-duration:.01ms!important} }
