/*
Theme Name: Powerlegal Child
Theme URI: http://demo.7iquid.com/powerlegal
Author: 7iquid
Author URI: http://themeforest.net/user/7iquid
Template: powerlegal
Description: Powerlegal is the WordPress theme for Attorneys, Lawyers, Law Agencies and other similar businesses. With its trustable design and feel, its a best fit for the Law Industry. The theme helps you to get your site up and running in less than minutes with the One Click Demo Importer. Create pages easily with the Drag & Drop Page Builder (Elementor Free) and fully responsive, retina ready and easy to customize.
Version: 3.0
License: ThemeForest
License URI: https://themeforest.net/licenses
Text Domain: powerlegal-child
Tags: elementor, advocate, attorney, barrister, clerk, counselor, court, dispute, judge, law, law agency, lawyer, lawyers, legal, prosecutor, solicitor, translation-ready
This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/

/* ==========================================================================
   Custom Global Layout & Header Styling
   ========================================================================== */

/* 1. Full-Width Layout overrides (Restricted to main content area) */
html, body {
    width: 100%;
    overflow-x: hidden; /* Prevent horizontal scrollbars */
}

/* Force all boxed sections inside the main content area to stretch full width */
#pxl-main .elementor-section.elementor-section-boxed > .elementor-container,
#pxl-main .pxl-content-container.container,
#pxl-main .pxl-content-container.elementor-container,
#pxl-main .container,
#pxl-main .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
}

/* ==========================================================================
   2. Custom Header Styling to Match Theme Demo
   ========================================================================== */

/* Box shadow and background on main header section container */
#pxl-header .elementor-element-cd2af94 {
    background-color: #ffffff !important;
    box-shadow: 0px 10px 40px 0px rgba(16, 23, 44, 0.06) !important;
    border-bottom: 1px solid #f0f0f0 !important;
}

/* Constrain both top bar and main header containers to standard boxed width (1200px) instead of 1570px */
#pxl-header .elementor-element-e3719cd > .elementor-container,
#pxl-header .elementor-element-cd2af94 > .elementor-container {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 40px !important;
    padding-right: 40px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
}

/* Force horizontal flex layout and vertical centering of top-bar elements */
#pxl-header .elementor-element-e3719cd .elementor-widget-wrap {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: space-between !important;
    width: 100% !important;
}

/* Force top-bar list items to stay on a single line */
#pxl-header .elementor-element-bf9ce43 {
    width: auto !important;
    max-width: none !important;
}

#pxl-header .elementor-element-bf9ce43 .elementor-icon-list-items.elementor-inline-items {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    margin: 0 !important;
}

#pxl-header .elementor-element-bf9ce43 .elementor-inline-item {
    margin-left: 10px !important;
    margin-right: 10px !important;
    white-space: nowrap !important;
}

/* Align the dividers correctly with the new smaller margin */
#pxl-header .elementor-element-bf9ce43 .elementor-inline-items .elementor-icon-list-item:not(:last-child):after {
    right: -10px !important;
    inset-inline-end: -10px !important;
}

#pxl-header .elementor-element-b300d49 {
    width: auto !important;
    max-width: none !important;
}

/* Ensure flex alignment and vertical centering of elements in the main header */
#pxl-header .elementor-element-cd2af94 .elementor-row {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
}

/* ====================================================
   HEADER COLUMN ALIGNMENT - Logo left, Nav right
   Column 6270faf = logo (left ~27%)
   Column ba8b0a2 = nav+search+phone (right ~73%)
   ==================================================== */

/* Logo column - left ~27% (enough for the logo) */
#pxl-header .elementor-element-6270faf {
    width: 22% !important;
    max-width: 22% !important;
    flex: 0 0 22% !important;
    min-width: 0 !important;
}

/* Nav column - right ~73% (enough for all nav items + search + phone) */
#pxl-header .elementor-element-ba8b0a2 {
    width: 78% !important;
    max-width: 78% !important;
    flex: 0 0 78% !important;
    min-width: 0 !important;
}

/* Logo column inner wrap - vertically center logo */
#pxl-header .elementor-element-6270faf > .elementor-widget-wrap {
    display: flex !important;
    align-items: center !important;
    padding: 8px 0 !important;
}

/* Nav column inner wrap - row layout, all items on same line */
#pxl-header .elementor-element-ba8b0a2 > .elementor-widget-wrap {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    padding: 0 !important;
    gap: 0 !important;
}

/* Nav menu height matches logo height */
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_menu.default"] {
    display: flex !important;
    align-items: center !important;
    height: 88px !important;
    flex-shrink: 0 !important;
}

/* Search, phone icon, phone number - inline */
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_anchor.default"],
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="icon.default"],
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_heading.default"] {
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0 !important;
}

/* Force the parent column 6270faf (which contains both the logo and the nested nav column due to a missing closing tag) to be a full-width horizontal flex container */


/* Sizing and alignment for the logo container (child 1 of 6270faf) */


/* Ensure the widget wrap inside the logo container centers its content */


/* Force the navigation column ba8b0a2 (which is nested inside 6270faf) to grow and take up remaining space, aligning items to the far right */


/* Ensure the wrapper inside the nav column expands to 100% and uses flex to justify elements */


/* Reset margins on the outer elements of the widgets in the navigation row */


/* Custom spacing for the menu widget (margin-left: auto pushes it to the right) - higher specificity than reset */


/* Force the primary menu to layout horizontally */
#pxl-header .pxl-primary-menu {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-end !important;
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

#pxl-header .pxl-primary-menu > li {
    display: inline-flex !important;
    flex-direction: row !important;
    flex: 0 0 auto !important;
    width: auto !important;
    max-width: none !important;
    margin-left: 12px !important;
    margin-right: 12px !important;
    align-items: center !important;
}

#pxl-header .pxl-primary-menu > li > a {
    display: inline-block !important;
    white-space: nowrap !important;
    line-height: 100px !important; /* Increased line-height to center vertically with larger logo */
}

/* Increase logo size to match the demo's prominent logo (80px height) */
#pxl-header .elementor-element-1be94e4 img {
    max-height: 80px !important;
    height: 80px !important;
    width: auto !important;
    display: block !important;
    object-fit: contain !important;
}

/* Custom spacing for the search widget - higher specificity than reset */


#pxl-header .elementor-element-93e1b78 > .elementor-widget-container {
    margin: 0 !important; /* Clear old margin constraint */
    display: flex !important;
    align-items: center !important;
}

/* Custom spacing for the phone icon widget - higher specificity than reset */


#pxl-header .elementor-element-7f0ac41 > .elementor-widget-container {
    margin: 0 !important; /* Clear old margin constraint */
    display: flex !important;
    align-items: center !important;
}

#pxl-header .elementor-element-7f0ac41 .elementor-icon {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
}

/* Spacing and layout for phone text box widget - higher specificity than reset */


#pxl-header .elementor-element-a8bc2b2 > .elementor-widget-container {
    margin: 0 !important; /* Clear old margin constraint */
    padding: 6px 14px !important; /* Make the phone box more compact */
    border-style: solid !important;
    border-width: 1px !important;
    border-color: #E2DBD3 !important;
    border-radius: 0px !important;
    display: flex !important;
    align-items: center !important;
    white-space: nowrap !important;
}

#pxl-header .elementor-element-a8bc2b2 h2.heading-title {
    font-size: 16px !important;
    line-height: 1 !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

#pxl-header .elementor-element-a8bc2b2 h2.heading-title span {
    font-size: 16px !important;
    line-height: 1 !important;
    white-space: nowrap !important; /* Force phone number on a single line */
}


/* The main header section (cd2af94) - force flex row with vertical center */
.elementor-35 .elementor-element-cd2af94 > .elementor-container,
.elementor-146 .elementor-element-cd2af94 > .elementor-container {
    align-items: center !important;
    min-height: 0 !important;
}

/* Reduce header section vertical padding */
.elementor-35 .elementor-element-cd2af94,
.elementor-146 .elementor-element-cd2af94 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Logo column - vertically center the logo */
.elementor-35 .elementor-element-cd2af94 .elementor-col-50:first-child .elementor-widget-wrap,
.elementor-146 .elementor-element-cd2af94 .elementor-col-50:first-child .elementor-widget-wrap {
    align-items: center !important;
    padding-top: 10px !important;
    padding-bottom: 10px !important;
}

/* Right column - force all items inline and vertically centered */
.elementor-35 .elementor-element-cd2af94 .elementor-col-50:last-child .elementor-widget-wrap,
.elementor-146 .elementor-element-cd2af94 .elementor-col-50:last-child .elementor-widget-wrap {
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Navigation menu widget - inline and centered */
.elementor-35 .elementor-element-cd2af94 [data-widget_type="pxl_menu.default"],
.elementor-146 .elementor-element-cd2af94 [data-widget_type="pxl_menu.default"] {
    display: flex !important;
    align-items: center !important;
    height: auto !important;
}

/* Search/anchor icon widget */
.elementor-35 .elementor-element-cd2af94 [data-widget_type="pxl_anchor.default"],
.elementor-146 .elementor-element-cd2af94 [data-widget_type="pxl_anchor.default"] {
    display: flex !important;
    align-items: center !important;
}

/* Phone icon widget */
.elementor-35 .elementor-element-cd2af94 [data-widget_type="icon.default"],
.elementor-146 .elementor-element-cd2af94 [data-widget_type="icon.default"] {
    display: flex !important;
    align-items: center !important;
}

/* Phone number heading widget */
.elementor-35 .elementor-element-cd2af94 [data-widget_type="pxl_heading.default"],
.elementor-146 .elementor-element-cd2af94 [data-widget_type="pxl_heading.default"] {
    display: flex !important;
    align-items: center !important;
}

/* Ensure the nav UL items are vertically centered */
#pxl-header .pxl-header-main .elementor-element-cd2af94 .pxl-nav > ul > li {
    display: inline-flex !important;
    align-items: center !important;
}

/* Overall header section height - single compact row */
.pxl-header-main .elementor-element-cd2af94 {
    min-height: 0 !important;
}

/* Full header wrapper - no extra padding */
#pxl-header-wrap,
#pxl-header {
    overflow: visible !important;
}


/* [HEADER ALIGNMENT FIX removed] */

/* Make the header section container a proper flex row */
.elementor-element-cd2af94 > .elementor-container {
    flex-wrap: nowrap !important;
    align-items: center !important;
}

/* Logo column (6270faf) - exactly 50% width, no growing */
#pxl-header .elementor-element-6270faf {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
}

/* Nav column (ba8b0a2) - exactly 50% width */
#pxl-header .elementor-element-ba8b0a2 {
    width: 50% !important;
    max-width: 50% !important;
    flex: 0 0 50% !important;
}

/* Inner column wraps - vertically center content */
#pxl-header .elementor-element-6270faf > .elementor-widget-wrap {
    align-items: center !important;
    padding-top: 8px !important;
    padding-bottom: 8px !important;
}

/* Nav column wrap - row layout, vertically centered, right-aligned */
#pxl-header .elementor-element-ba8b0a2 > .elementor-widget-wrap {
    flex-direction: row !important;
    align-items: center !important;
    flex-wrap: nowrap !important;
    justify-content: flex-end !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* Nav menu - fix its height so it matches logo height */
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_menu.default"] {
    display: flex !important;
    align-items: center !important;
    height: 88px !important;
    flex-shrink: 0;
}

/* Search icon, phone icon, phone number - inline flex, centered */
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_anchor.default"],
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="icon.default"],
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_heading.default"] {
    display: inline-flex !important;
    align-items: center !important;
    flex-shrink: 0;
}

/* The nav UL items themselves - vertically centered */
#pxl-header .elementor-element-ba8b0a2 .pxl-nav > ul > li,
#pxl-header .elementor-element-ba8b0a2 .pxl-nav > ul {
    display: inline-flex !important;
    align-items: center !important;
    height: 100%;
}


/* Slightly reduce nav font size to fit all items in one row */
#pxl-header .elementor-element-ba8b0a2 .pxl-primary-menu > li > a {
    font-size: 13px !important;
    letter-spacing: 0.5px !important;
    padding-left: 7px !important;
    padding-right: 7px !important;
}

/* Reduce the large left margin on the nav widget */
#pxl-header .elementor-element-ba8b0a2 [data-widget_type="pxl_menu.default"] {
    margin-left: 0 !important;
}
