/*
Theme Name: ISC Portal
Theme URI: https://inchirierespatiicomerciale.ro/
Description: Child theme dedicat portalului Inchirieri Spatii Comerciale.
Author: Inchirieri Spatii Comerciale
Template: twentytwentyfive
Version: 1.0.4
Requires at least: 6.7
Requires PHP: 8.1
Text Domain: isc-portal
*/

:root {
    --isc-header-height: 84px;
}

html { scroll-behavior: smooth; }
body { -webkit-font-smoothing: antialiased; background: #fff; color: #111923; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.65; margin: 0; overflow-x: clip; text-rendering: optimizeLegibility; }
.wp-site-blocks { padding: 0; }
.wp-site-blocks > * { margin-block-start: 0; }
.wp-block-shortcode { margin: 0 !important; }

.isc-site-header { backdrop-filter: saturate(180%) blur(18px); background: rgba(255,255,255,.86); border-bottom: 1px solid rgba(17,25,35,.09); position: sticky; top: 0; z-index: 1000; }
.admin-bar .isc-site-header { top: 32px; }
.isc-site-header-inner { align-items: center; display: flex; gap: 2.5rem; height: var(--isc-header-height); justify-content: space-between; margin-inline: auto; max-width: min(1320px, calc(100vw - 64px)); }
.isc-brand { align-items: center; color: #111923; display: flex; flex: 0 0 auto; gap: .7rem; text-decoration: none; }
.isc-brand-mark { align-items: center; background: #ffb21c; border-radius: 12px; display: flex; font-size: .8rem; font-weight: 900; height: 44px; justify-content: center; letter-spacing: -.02em; width: 44px; }
.isc-brand-text { display: flex; flex-direction: column; font-size: 1rem; font-weight: 850; letter-spacing: -.018em; line-height: 1.18; }
.isc-brand-text small { color: #74808b; font-size: .6rem; font-weight: 750; letter-spacing: .12em; line-height: 1.4; margin-top: .28rem; text-transform: uppercase; }
.isc-main-nav { align-items: center; display: flex; gap: clamp(1.2rem, 2.4vw, 2.25rem); }
.isc-main-nav > a { color: #2f3b47; font-size: .91rem; font-weight: 650; line-height: 1.4; text-decoration: none; transition: color .18s ease; }
.isc-main-nav > a:hover { color: #c97900; }
.isc-main-nav .isc-header-phone { background: #111923; border-radius: 999px; color: #fff; padding: .78rem 1.1rem; }
.isc-main-nav .isc-header-phone:hover { background: #273646; color: #fff; }
.isc-menu-toggle { align-items: center; background: #111923; border: 0; border-radius: 50%; color: #fff; cursor: pointer; display: none; height: 44px; justify-content: center; padding: 0; width: 44px; }
.isc-menu-toggle span, .isc-menu-toggle::before, .isc-menu-toggle::after { background: currentColor; content: ""; display: block; height: 2px; position: absolute; transition: transform .2s ease, opacity .2s ease; width: 18px; }
.isc-menu-toggle::before { transform: translateY(-6px); }
.isc-menu-toggle::after { transform: translateY(6px); }
.isc-menu-toggle[aria-expanded="true"] span { opacity: 0; }
.isc-menu-toggle[aria-expanded="true"]::before { transform: rotate(45deg); }
.isc-menu-toggle[aria-expanded="true"]::after { transform: rotate(-45deg); }

.isc-site-footer { background: #0c131b; color: #fff; padding-block: 6rem 1.75rem; }
.isc-footer-inner { margin-inline: auto; max-width: min(1320px, calc(100vw - 64px)); }
.isc-footer-top { align-items: start; display: grid; gap: 4rem; grid-template-columns: 1.25fr .75fr .75fr; padding-bottom: 4rem; }
.isc-footer-brand { max-width: 520px; }
.isc-footer-brand h2 { font-size: clamp(2rem, 3.7vw, 4rem); letter-spacing: -.032em; line-height: 1.13; margin: 1.25rem 0 1.4rem; }
.isc-footer-brand p { color: #aeb8c2; font-size: 1.02rem; line-height: 1.75; max-width: 460px; }
.isc-footer-label { color: #ffb000; font-size: .68rem; font-weight: 850; letter-spacing: .16em; text-transform: uppercase; }
.isc-footer-links { display: grid; gap: .95rem; }
.isc-footer-links strong { font-size: .82rem; margin-bottom: .35rem; }
.isc-footer-links a { color: #b8c2cb; font-size: .92rem; line-height: 1.5; text-decoration: none; }
.isc-footer-links a:hover { color: #ffb000; }
.isc-footer-bottom { border-top: 1px solid rgba(255,255,255,.12); color: #7f8c98; display: flex; font-size: .72rem; gap: 1rem; justify-content: space-between; padding-top: 1.5rem; }

.isc-page-default { margin-inline: auto; max-width: min(900px, calc(100vw - 36px)); padding-block: 5rem 7rem; }
.isc-page-default h1 { font-size: clamp(2.6rem, 6vw, 5rem); letter-spacing: -.032em; line-height: 1.1; }
.isc-page-default .wp-block-post-content { color: #3f4c59; font-size: 1.06rem; line-height: 1.86; }
.isc-404 { align-items: center; display: flex; flex-direction: column; justify-content: center; min-height: 65vh; padding: 4rem 1rem; text-align: center; }
.isc-404 strong { color: #ffb000; font-size: 1rem; letter-spacing: .15em; }
.isc-404 h1 { font-size: clamp(3rem, 8vw, 7rem); letter-spacing: -.06em; margin: 1rem 0; }
.isc-404 p { color: #64717c; margin-bottom: 2rem; }
.isc-404 a { background: #111923; border-radius: 999px; color: #fff; font-weight: 750; padding: .9rem 1.3rem; text-decoration: none; }

@media (max-width: 820px) {
    :root { --isc-header-height: 72px; }
    .isc-site-header-inner, .isc-footer-inner { max-width: calc(100vw - 30px); }
    .isc-menu-toggle { display: flex; position: relative; }
    .isc-main-nav { align-items: stretch; background: #fff; border-bottom: 1px solid #dfe3e7; box-shadow: 0 12px 30px rgba(17,25,35,.12); display: none; flex-direction: column; gap: 0; left: 0; padding: .5rem 15px 1rem; position: absolute; right: 0; top: var(--isc-header-height); }
    .isc-main-nav.is-open { display: flex; }
    .isc-main-nav > a { border-bottom: 1px solid #edf0f2; font-size: .98rem; padding: 1rem 0; }
    .isc-main-nav .isc-header-phone { margin-top: .7rem; text-align: center; }
    .isc-footer-top { gap: 2.5rem; grid-template-columns: 1fr 1fr; }
    .isc-footer-brand { grid-column: 1 / -1; }
}

@media (max-width: 782px) {
    .admin-bar .isc-site-header { top: 46px; }
}

@media (max-width: 520px) {
    .isc-brand-text { font-size: .82rem; }
    .isc-brand-text small { display: none; }
    .isc-footer-top { grid-template-columns: 1fr; }
    .isc-footer-brand { grid-column: auto; }
    .isc-footer-bottom { flex-direction: column; }
}
