/* ============================================================
   Main V3 — Internal pages layout & common components
   ============================================================ */

/* === Page Layout === */
.site-main{padding:48px 0}
@media(min-width:768px){.site-main{padding:64px 0}}

/* === Page Header === */
.page-header{margin-bottom:36px}
.page-title{font-family:var(--if-font-display);color:var(--if-ink);margin-bottom:8px}
.archive-description{font-size:15px;color:var(--if-body)}

/* === Breadcrumbs === */
.if-breadcrumbs{font-size:13px;color:var(--if-muted);margin-bottom:20px}
.if-breadcrumbs a{color:var(--if-muted)}
.if-breadcrumbs a:hover{color:var(--if-primary)}

/* === Pagination === */
.if-pagination{margin-top:48px;text-align:center}
.if-pagination .page-numbers{display:inline-block;padding:8px 16px;margin:0 3px;border-radius:var(--if-radius-pill);font-size:14px;font-weight:500;color:var(--if-body);border:1.5px solid var(--if-border);transition:all 0.2s}
.if-pagination .page-numbers.current{background:var(--if-primary);color:var(--if-white);border-color:var(--if-primary)}
.if-pagination .page-numbers:hover:not(.current){background:var(--if-surface);border-color:var(--if-primary)}

/* Page links */
.page-links{margin-top:20px;padding-top:16px;border-top:1px solid var(--if-border);font-size:14px}
.page-links .post-page-numbers{display:inline-block;padding:5px 12px;margin:0 2px;border:1px solid var(--if-border);border-radius:var(--if-radius-sm)}
.page-links .post-page-numbers.current{background:var(--if-primary);color:var(--if-white);border-color:var(--if-primary)}

/* === Widgets === */
.widget{margin-bottom:32px;font-size:14px}
.widget-title{font-family:var(--if-font-display);font-size:18px;font-weight:600;color:var(--if-ink);margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--if-border)}
.widget ul{list-style:none;padding:0;margin:0}
.widget ul li{padding:7px 0;border-bottom:1px solid rgba(0,0,0,0.04)}
.widget ul li:last-child{border-bottom:none}
.widget ul li a{color:var(--if-body)}
.widget ul li a:hover{color:var(--if-primary)}

/* === Sidebar === */
.if-sidebar{margin-top:40px}
@media(min-width:992px){
  .has-sidebar .site-main{display:grid;grid-template-columns:1fr 280px;gap:48px;align-items:start}
  .has-sidebar .if-sidebar{margin-top:0}
}

/* === 404 === */
.error-404 .page-content{max-width:480px}
.error-404 .search-form{margin-bottom:28px}
.if-404-links ul{list-style:disc;padding-left:20px}
.if-404-links li{margin-bottom:6px}

/* === No Results === */
.no-results{text-align:center;padding:48px 0}
.no-results .search-form{margin:16px auto 0;max-width:360px}

/* === CF7 Global === */
.wpcf7-form label{display:block;font-size:13px;font-weight:600;color:var(--if-ink-light);margin-bottom:6px}
.wpcf7-form input[type="text"],.wpcf7-form input[type="email"],.wpcf7-form input[type="tel"],.wpcf7-form textarea{width:100%;padding:13px 16px;border:1.5px solid var(--if-border);border-radius:var(--if-radius-sm);font-family:var(--if-font-body);font-size:15px;background:var(--if-surface);margin-bottom:14px}
.wpcf7-form input[type="text"]:focus,.wpcf7-form input[type="email"]:focus,.wpcf7-form input[type="tel"]:focus,.wpcf7-form textarea:focus{border-color:var(--if-primary);box-shadow:0 0 0 3px rgba(26,127,138,0.08);outline:none;background:var(--if-white)}
.wpcf7-form input[type="submit"]{background:var(--if-primary);color:var(--if-white);border:none;padding:15px 36px;border-radius:var(--if-radius-pill);font-family:var(--if-font-body);font-size:15px;font-weight:600;cursor:pointer;transition:all var(--if-transition);box-shadow:0 4px 14px rgba(26,127,138,0.25)}
.wpcf7-form input[type="submit"]:hover{background:var(--if-primary-hover);box-shadow:0 6px 20px rgba(26,127,138,0.35)}
.wpcf7-acceptance label{display:flex!important;align-items:flex-start;gap:10px;font-size:13px!important;color:var(--if-muted)!important;font-weight:400!important}