:root {
    --pr-primary: #1b2e6e;
    --pr-primary-light: #23378d;
    --pr-accent: #09bcc6;
    --pr-accent-dark: #088e96;
    --pr-dark: #1a1a2e;
    --pr-gray: #5a6a80;
    --pr-light: #f4f7fa;
    --pr-white: #ffffff;
    --pr-border: #e2e8f0;
}

/* Bricks full-width overrides */
html, body, #brx-content, .brx-container, .brxe-post-content {
    max-width: 100% !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow-x: hidden;
}

/* Override WP core content-size */
:root {
    --wp--style--global--content-size: 100% !important;
    --wp--style--global--wide-size: 100% !important;
}
.is-layout-constrained > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
    max-width: 100% !important;
}

/* Hide Bricks default page title */
.entry-header, .page-header, .brxe-post-title, #brx-content > .brxe-post-title,
.bricks-layout-wrapper > .brxe-post-title, h1.brxe-post-title,
#brx-content > h1:first-child { display: none !important; }

/* Custom header */
.prb-header {
    position: relative;
    z-index: 100;
    background: #fff;
    border-bottom: 1px solid rgba(0,0,0,0.06);
    overflow: visible !important;
}

.prb-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 1400px;
    margin: 0 auto;
    padding: 0 20px;
    min-height: 60px;
    overflow: visible !important;
}

.prb-logo-link {
    display: block;
    position: relative;
    z-index: 200;
    height: 50px;
    overflow: visible !important;
}

.prb-logo-img {
    height: 160px !important;
    width: auto !important;
    position: relative;
    top: -5px;
}

/* Nav menu */
.prb-nav { display: flex; }

.prb-menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    align-items: center;
}

.prb-menu > li > a {
    font-size: 0.95rem;
    font-weight: 500;
    color: var(--pr-primary);
    padding: 0 16px;
    line-height: 60px;
    text-decoration: none;
    transition: color 0.2s;
    white-space: nowrap;
}

.prb-menu > li > a:hover { color: var(--pr-accent); }

/* Request Quote CTA in nav */
.prb-menu > .prb-nav-cta > a {
    background: var(--pr-accent) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 10px 22px !important;
    line-height: 1.4 !important;
}

.prb-menu > .prb-nav-cta > a:hover { background: var(--pr-accent-dark) !important; }

/* Dropdown */
.prb-menu li { position: relative; }

.prb-menu ul.sub-menu {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 340px !important;
    width: 340px !important;
    padding: 8px 0;
    border-radius: 12px;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12);
    border: 1px solid var(--pr-border);
    background: #fff;
    z-index: 1000;
    list-style: none;
    margin: 0;
}

.prb-menu li:hover > ul.sub-menu { display: block; }

.prb-menu ul.sub-menu li { display: block; width: 100%; }

.prb-menu ul.sub-menu li a {
    padding: 10px 16px;
    line-height: 1.4;
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin: 2px 8px;
    border-radius: 8px;
    white-space: normal;
    font-size: 0.88rem;
    text-decoration: none;
    color: var(--pr-primary);
    transition: background 0.15s;
}

.prb-menu ul.sub-menu li a:hover { background: var(--pr-light); }

body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
    color: #2d3748;
    line-height: 1.7;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Playfair Display', Georgia, serif !important;
    color: var(--pr-primary);
    line-height: 1.3 !important;
}

h2 { font-size: clamp(1.8rem, 3vw, 2.5rem) !important; }
h3 { font-size: 1.3rem !important; }

/* ========== HEADER / LOGO ========== */
#brx-header, header.brx-header {
    overflow: visible !important;
    position: relative;
    z-index: 100;
    background: #fff;
    border-bottom: 1px solid rgba(0,0,0,0.06);
}

.site-branding, .brxe-logo {
    position: relative;
    z-index: 200;
    overflow: visible !important;
    height: 50px;
}

.brxe-logo img, .custom-logo-link img, .custom-logo {
    height: 160px !important;
    width: auto !important;
    max-height: none !important;
    max-width: none !important;
}

.site-title, .site-description { display: none !important; }

/* Nav */
.bricks-nav-menu .menu > li > a,
.brxe-nav-menu .menu > li > a {
    font-size: 0.95rem !important;
    font-weight: 500 !important;
    color: var(--pr-primary) !important;
    padding: 0 16px !important;
}

.bricks-nav-menu .menu > li > a:hover,
.brxe-nav-menu .menu > li > a:hover {
    color: var(--pr-accent) !important;
}

/* Request Quote CTA */
.prb-nav-cta > a {
    background: var(--pr-accent) !important;
    color: #fff !important;
    border-radius: 6px !important;
    padding: 10px 22px !important;
}

/* Dropdown */
.bricks-nav-menu .sub-menu,
.brxe-nav-menu .sub-menu {
    min-width: 340px !important;
    width: 340px !important;
    padding: 8px 0 !important;
    border-radius: 12px !important;
    box-shadow: 0 10px 40px rgba(0,0,0,0.12) !important;
    border: 1px solid var(--pr-border) !important;
    background: #fff !important;
}

.bricks-nav-menu .sub-menu li a,
.brxe-nav-menu .sub-menu li a {
    padding: 10px 16px !important;
    display: flex !important;
    align-items: flex-start !important;
    gap: 12px !important;
    border-radius: 8px !important;
    margin: 2px 8px !important;
    white-space: normal !important;
    font-size: 0.88rem !important;
}

.bricks-nav-menu .sub-menu li a:hover,
.brxe-nav-menu .sub-menu li a:hover { background: var(--pr-light) !important; }

.prb-dd-icon { display:flex;align-items:center;justify-content:center;width:38px;height:38px;min-width:38px;background:var(--pr-light);border-radius:10px;margin-top:2px; }
.prb-dd-icon img { width:20px;height:20px; }
.prb-dd-text { flex:1; }
.prb-dd-label { display:block;font-weight:600;font-size:0.88rem;color:var(--pr-primary); }
.prb-dd-desc { display:block;font-size:0.75rem;font-weight:400;color:var(--pr-gray);margin-top:3px;line-height:1.4; }

/* ========== HERO ========== */
.pr-hero { position:relative;min-height:75vh;display:flex;align-items:center;background:linear-gradient(135deg,rgba(27,46,110,0.92) 0%,rgba(9,188,198,0.85) 100%);overflow:hidden;width:100%; }
.pr-hero-bg { position:absolute;inset:0;z-index:0; }
.pr-hero-bg img { width:100%;height:100%;object-fit:cover;mix-blend-mode:overlay;opacity:0.4; }
.pr-hero-content { position:relative;z-index:1;max-width:720px;padding:80px 40px;color:var(--pr-white); }
.pr-hero-company { font-family:'Playfair Display',Georgia,serif !important;font-size:clamp(1.6rem,3vw,2.4rem) !important;font-weight:700 !important;color:#fff !important;margin-bottom:0.5rem !important;letter-spacing:1px;text-transform:uppercase; }
.pr-hero-company span { font-family:'Inter',sans-serif !important;font-size:0.5em !important;font-weight:400;font-style:italic;letter-spacing:2px;opacity:0.8;text-transform:none; }
.pr-hero-content h1 { font-size:clamp(2rem,5vw,3.2rem) !important;color:var(--pr-white) !important;margin-bottom:1rem;font-weight:700 !important;font-family:'Playfair Display',Georgia,serif !important; }
.pr-hero-content p { font-size:1.15rem !important;opacity:0.9;margin-bottom:2rem;line-height:1.8 !important; }

/* Buttons */
.pr-btn-row { display:flex !important;flex-wrap:wrap;gap:12px;align-items:center; }
.pr-btn-row br { display:none !important; }
.pr-cta .pr-btn-row { justify-content:center; }
.pr-btn { display:inline-block !important;padding:14px 36px;border-radius:6px;font-weight:600;font-size:0.95rem;text-decoration:none !important;transition:all 0.3s ease;letter-spacing:0.5px;cursor:pointer; }
.pr-btn-primary { background:var(--pr-accent);color:var(--pr-white) !important;border:2px solid var(--pr-accent); }
.pr-btn-primary:hover { background:var(--pr-accent-dark);border-color:var(--pr-accent-dark);transform:translateY(-2px);box-shadow:0 8px 25px rgba(9,188,198,0.3); }
.pr-btn-outline { background:transparent;color:var(--pr-white) !important;border:2px solid rgba(255,255,255,0.5); }
.pr-btn-outline:hover { background:var(--pr-white);color:var(--pr-primary) !important; }

/* Sections */
.pr-section { padding:60px 0; }
.pr-section + .pr-section { padding-top:40px; }
.pr-section-gray { background:var(--pr-light); }
.pr-section-dark { background:var(--pr-dark);color:var(--pr-white); }
.pr-section-dark h2,.pr-section-dark h3 { color:var(--pr-white); }
.pr-section-title { text-align:center;max-width:700px;margin:0 auto 36px; }
.pr-section-title .pr-overline { display:block;font-family:'Inter',sans-serif;font-size:0.8rem;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--pr-accent);margin-bottom:12px; }
.pr-section-title h2 { font-size:clamp(1.8rem,3vw,2.5rem);margin-bottom:12px; }
.pr-section-title p { color:var(--pr-gray);font-size:1.05rem; }

/* Cards */
.pr-cards { display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:30px;max-width:1200px;margin:0 auto;padding:0 20px; }
.pr-card { background:var(--pr-white);border-radius:12px;overflow:hidden;box-shadow:0 4px 20px rgba(0,0,0,0.06);transition:all 0.3s ease;border:1px solid var(--pr-border); }
.pr-card:hover { transform:translateY(-6px);box-shadow:0 12px 40px rgba(0,0,0,0.12); }
.pr-card-img { height:200px;overflow:hidden;background:var(--pr-light); }
.pr-card-img img { width:100%;height:100%;object-fit:cover;object-position:center;transition:transform 0.5s ease;display:block; }
.pr-card:hover .pr-card-img img { transform:scale(1.05); }
.pr-card-body { padding:28px; }
.pr-card-body h3 { font-size:1.3rem;margin-bottom:12px;font-family:'Inter',sans-serif;font-weight:700; }
.pr-card-body p { color:var(--pr-gray);font-size:0.95rem;margin-bottom:16px; }
.pr-card-link { color:var(--pr-accent);font-weight:600;text-decoration:none;font-size:0.9rem;display:inline-flex;align-items:center;gap:6px;transition:gap 0.3s ease; }
.pr-card-link:hover { gap:12px;color:var(--pr-accent-dark); }

/* Stats */
.pr-stats { display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:30px;max-width:1000px;margin:0 auto;padding:0 20px;text-align:center; }
.pr-stat h3 { font-family:'Inter',sans-serif;font-size:2.5rem;font-weight:800;color:var(--pr-accent);margin-bottom:4px; }
.pr-stat p { font-size:0.9rem;color:var(--pr-gray);text-transform:uppercase;letter-spacing:1px;font-weight:500; }

/* CTA */
.pr-cta { background:linear-gradient(135deg,var(--pr-primary) 0%,var(--pr-primary-light) 100%);padding:60px 40px;text-align:center;border-radius:16px;max-width:1000px;margin:0 auto;color:var(--pr-white); }
.pr-cta h2 { color:var(--pr-white);font-size:2rem;margin-bottom:16px; }
.pr-cta p { opacity:0.85;max-width:600px;margin:0 auto 24px;font-size:1.1rem; }

/* Contact */
.pr-contact-grid { display:grid !important;grid-template-columns:1fr 1fr !important;gap:40px;max-width:1100px;margin:0 auto;padding:0 20px; }
@media (max-width:768px) { .pr-contact-grid { grid-template-columns:1fr !important; } }
.pr-contact-info h3 { font-family:'Inter',sans-serif;font-size:1.2rem;margin-bottom:20px; }
.pr-contact-item { display:flex;align-items:flex-start;gap:16px;margin-bottom:20px; }
.pr-contact-icon { width:44px;height:44px;background:var(--pr-light);border-radius:10px;display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--pr-accent);font-size:1.2rem; }

/* Footer */
.pr-footer-custom { padding:60px 0 40px; }
.pr-footer-custom h4 { color:var(--pr-white);font-family:'Inter',sans-serif;font-size:1rem;font-weight:600;margin-bottom:16px; }
.pr-footer-custom a { color:#94a3b8;text-decoration:none; }
.pr-footer-custom a:hover { color:var(--pr-accent); }
.pr-footer-custom p { margin-bottom:6px;font-size:0.9rem;color:#94a3b8; }
.pr-footer-grid { display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;max-width:1200px;margin:0 auto;padding:0 20px; }
@media (max-width:768px) { .pr-footer-grid { grid-template-columns:1fr 1fr;gap:30px; } }
.pr-badges { display:flex;gap:20px;align-items:center;flex-wrap:wrap;margin-top:20px; }
.pr-badges img { height:50px;opacity:0.8; }

/* Inner pages */
.pr-page-header { background:linear-gradient(135deg,var(--pr-primary) 0%,var(--pr-primary-light) 100%);padding:80px 0 60px;text-align:center;color:var(--pr-white);width:100%; }
.pr-page-header h1 { color:var(--pr-white);font-size:clamp(2rem,4vw,3rem);margin-bottom:8px; }
.pr-page-header .pr-breadcrumb { font-size:0.9rem;opacity:0.7; }
.pr-page-header .pr-breadcrumb a { color:rgba(255,255,255,0.8);text-decoration:none; }
.pr-page-content { max-width:900px;margin:0 auto;padding:50px 20px 60px; }
.pr-page-content p { margin-bottom:1.2rem;font-size:1.05rem; }
.pr-page-content a { color:var(--pr-accent);font-weight:500; }
.pr-page-content h2 { margin-top:40px;margin-bottom:16px; }
.pr-page-content ul { padding-left:24px;margin-bottom:20px; }
.pr-page-content ul li { margin-bottom:8px; }

/* Bricks footer */
#brx-footer, footer.brx-footer { background:#111827 !important;padding:15px 0 !important;color:#94a3b8;text-align:center;font-size:0.85rem; }

.pr-container { max-width:1200px;margin:0 auto;padding:0 20px; }
.pr-text-center { text-align:center; }
.pr-mt-40 { margin-top:40px; }
