/*
Theme Name: Czarowne Theme
Theme URI: https://www.czarowne-fotografia.pl
Author: Izabela Orepuk
Author URI: https://www.czarowne-fotografia.pl
Description: Lekki motyw WordPress kompatybilny z Elementor dla strony fotograficznej.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
Text Domain: czarowne-theme
*/
@font-face {
  font-family: 'Amelia';
  src: url('assets/fonts/amelia.woff2') format('woff2'),
       url('assets/fonts/amelia.woff') format('woff');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
:root{
  --cz-bg:#f8f5f1;
  --cz-bg-soft:#fdfaf7;
  --cz-text:#2f2a26;
  --cz-text-light:#6f655d;
  --cz-accent:#b08b73;
  --cz-accent-dark:#8f6d57;
  --cz-border:#e8ddd4;
  --cz-white:#ffffff;
  --cz-max:1240px;
  --cz-radius:18px;
  --cz-shadow:0 12px 35px rgba(73,51,38,.08);
  --cz-script-font:"Amelia", "Allura", "Great Vibes", cursive;
  --cz-heading-font:"Cormorant Garamond", Georgia, serif;
  --cz-body-font:"Lora", Georgia, serif;
  --cz-ui-font:Arial, Helvetica, sans-serif;
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--cz-bg);
  color:var(--cz-text);
  font-family:var(--cz-body-font);
  font-size:18px;
  line-height:1.75;
}
img{max-width:100%;height:auto;display:block;}
a{color:inherit;text-decoration:none;transition:.25s ease;}
a:hover{color:var(--cz-accent-dark);}
.container{width:min(100% - 40px, var(--cz-max));margin-inline:auto;}
.site-main{min-height:60vh;}
.site-header{
  position:sticky;top:0;z-index:1000;
  background:rgba(253,250,247,.9);
  backdrop-filter:blur(12px);
  border-bottom:1px solid rgba(176,139,115,.15);
}
.site-header-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:88px;}
.site-branding{display:flex;align-items:center;gap:14px;}
.site-branding img{max-height:62px;width:auto;}
.site-title{margin:0;font-family:var(--cz-heading-font);font-size:30px;line-height:1.05;font-weight:600;letter-spacing:.3px;}
.site-title a:hover{color:inherit;}
.site-tagline-script{display:block;margin-top:4px;font-family:var(--cz-script-font);font-size:26px;line-height:1;color:var(--cz-accent);}
.site-description{margin:6px 0 0;color:var(--cz-text-light);font-size:14px;font-family:var(--cz-ui-font);}
.main-navigation ul{display:flex;align-items:center;gap:28px;list-style:none;margin:0;padding:0;}
.main-navigation a{font-family:var(--cz-ui-font);font-size:13px;text-transform:uppercase;letter-spacing:1.15px;}
.main-navigation .current-menu-item>a,.main-navigation a:hover{color:var(--cz-accent);}
.menu-toggle{display:none;border:1px solid var(--cz-border);background:#fff;border-radius:999px;padding:10px 16px;font-family:var(--cz-ui-font);cursor:pointer;}
.content-wrap{padding:60px 0;}
.entry-header{margin-bottom:28px;}
.entry-title,.page-title{margin:0 0 14px;font-family:var(--cz-heading-font);font-size:clamp(40px,5vw,64px);line-height:1.05;font-weight:600;}
.entry-content h1,.entry-content h2,.entry-content h3,.entry-content h4,.entry-content h5,.entry-content h6,
.widget-title,.comments-title,.comment-reply-title{
  font-family:var(--cz-heading-font);line-height:1.15;color:var(--cz-text);
}
.entry-content,.entry-summary,.comment-content{font-size:17px;color:var(--cz-text-light);}
.entry-content p,.entry-summary p{margin:0 0 1.1em;}
.entry-content ul,.entry-content ol{padding-left:1.4rem;margin:0 0 1.1em;}
.post-card{background:var(--cz-white);border:1px solid var(--cz-border);border-radius:var(--cz-radius);overflow:hidden;box-shadow:var(--cz-shadow);}
.post-card+.post-card{margin-top:28px;}
.post-thumb img{width:100%;aspect-ratio:16/10;object-fit:cover;}
.post-body{padding:28px;}
.post-card-title{margin:0 0 10px;font-family:var(--cz-heading-font);font-size:clamp(28px,3vw,42px);line-height:1.08;}
.post-meta{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:14px;color:var(--cz-text-light);font-size:13px;font-family:var(--cz-ui-font);text-transform:uppercase;letter-spacing:.7px;}
.read-more{display:inline-flex;align-items:center;gap:8px;margin-top:16px;padding:12px 18px;border:1px solid var(--cz-border);border-radius:999px;background:#fff;font-family:var(--cz-ui-font);font-size:13px;text-transform:uppercase;letter-spacing:.9px;}
.read-more:hover{background:var(--cz-accent);border-color:var(--cz-accent);color:#fff;}
.archive-grid{display:grid;gap:28px;}
.site-footer{margin-top:50px;padding:42px 0;border-top:1px solid var(--cz-border);background:var(--cz-bg-soft);}
.site-footer-inner{display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;}
.footer-brand{font-family:var(--cz-heading-font);font-size:28px;line-height:1.1;}
.footer-brand .script{display:block;font-family:var(--cz-script-font);font-size:24px;color:var(--cz-accent);}
.footer-copy{font-family:var(--cz-ui-font);font-size:14px;color:var(--cz-text-light);}
.pagination,.posts-navigation,.post-navigation{margin-top:34px;}
.nav-links{display:flex;gap:12px;flex-wrap:wrap;}
.nav-links a,.nav-links span{
  display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;
  padding:10px 16px;border-radius:999px;border:1px solid var(--cz-border);background:#fff;font-family:var(--cz-ui-font);font-size:14px;
}
.nav-links .current,.nav-links a:hover{background:var(--cz-accent);border-color:var(--cz-accent);color:#fff;}
.widget-area{margin-top:30px;}
.widget{background:#fff;border:1px solid var(--cz-border);border-radius:var(--cz-radius);padding:24px;box-shadow:var(--cz-shadow);}
.screen-reader-text{position:absolute;left:-9999px;}
.alignwide{width:min(100%, calc(var(--cz-max) + 140px));margin-left:auto;margin-right:auto;}
.alignfull{width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);}

body.elementor-page .content-wrap,
body.elementor-page .entry-content,
body.elementor-page article.page,
body.elementor-page article.page > .entry-content{
  margin:0;padding:0;
}

@media (max-width: 980px){
  .site-header-inner{min-height:78px;}
  .menu-toggle{display:inline-flex;}
  .main-navigation{position:absolute;left:0;right:0;top:100%;background:rgba(253,250,247,.98);border-bottom:1px solid var(--cz-border);display:none;}
  .main-navigation.is-open{display:block;}
  .main-navigation ul{flex-direction:column;align-items:flex-start;gap:0;padding:14px 20px;}
  .main-navigation li{width:100%;}
  .main-navigation a{display:block;padding:14px 0;width:100%;}
}

@media (max-width: 640px){
  body{font-size:17px;}
  .container{width:min(100% - 24px, var(--cz-max));}
  .post-body{padding:22px;}
  .site-footer-inner{align-items:flex-start;}
}
