/* Elementor Theme Builder review shell. Native WordPress menus and Woo search own behavior. */
.rc-shell-header,.rc-shell-footer { font-family:var(--rc-font-family); width:100%; padding:0 !important; gap:0 !important; }
.rc-shell-header { background:var(--rc-color-surface); color:var(--rc-color-ink); }
.rc-shell-header .e-con,.rc-shell-footer .e-con { padding:0; gap:0; min-width:0; }
.rc-shell-header .rc-shell-utility { padding:8px max(24px,calc((100% - 1200px)/2)); background:var(--rc-color-background); flex-direction:row; align-items:center; justify-content:space-between; gap:16px; }
.rc-shell-caption .elementor-heading-title { font:500 13px/1.5 var(--rc-font-family); color:var(--rc-color-ink-muted); }
.rc-shell-utility-links,.rc-shell-account { flex-direction:row !important; width:auto; align-items:center; gap:20px !important; }
.rc-shell-link { width:auto; }
.rc-shell-link .elementor-button { padding:8px 0; min-height:44px; display:inline-flex; align-items:center; text-align:left; border:0; border-radius:0; background:transparent; color:inherit; font:500 14px/1.5 var(--rc-font-family); }
.rc-shell-header .rc-shell-link .elementor-button { color:var(--rc-color-ink); }
.rc-shell-link .elementor-button:hover { text-decoration:underline; text-underline-offset:4px; }
.rc-shell-header .rc-shell-main { max-width:1248px; width:100%; margin:0 auto; padding:24px; flex-direction:row; align-items:center; gap:32px; }
.rc-shell-logo { width:280px; flex-shrink:0; }
.rc-shell-logo img { width:100%; height:auto; aspect-ratio:1920 / 285.02; display:block; }
.elementor-widget-image.rc-shell-logo a { display:block; width:100%; }
.elementor-widget-image.rc-shell-logo img[src$=".svg"] { width:100%; }
/* Slogan-free presentation of the supplied 1920 x 285.02 vector logos.
   Keep the complete emblem (x <= 246.89) and wordmark (y <= 200.73).
   Hide only the slogan region (x > 288, y > 222.32). Original assets stay intact. */
.rc-shell-logo img:is([src$="/rockcrete-full-color-horizontal.svg"],[src$="/rockcrete-logo-horizontal-on-dark.svg"]) {
 clip-path:polygon(0 0,100% 0,100% 78%,15% 78%,15% 100%,0 100%);
}
.rc-shell-footer .rc-footer-tagline { display:none; }
.rc-shell-search { flex:1; min-width:200px; }
.rc-shell-search .woocommerce-product-search { display:flex; gap:0; margin:0; }
.rc-shell-search .search-field { width:100%; min-width:0; border:1px solid var(--rc-color-controls); border-radius:4px 0 0 4px; padding:12px; min-height:48px; font:400 15px/1.4 var(--rc-font-family); background:var(--rc-color-surface); color:var(--rc-color-ink); }
.rc-shell-search button { border:1px solid var(--rc-color-ink); background:var(--rc-color-ink); color:var(--rc-color-surface); border-radius:0 4px 4px 0; padding:12px 16px; min-height:48px; font:600 14px/1.4 var(--rc-font-family); }
.rc-shell-header .rc-shell-nav-row { border-top:1px solid var(--rc-color-line); border-bottom:1px solid var(--rc-color-line); padding:0 max(24px,calc((100% - 1200px)/2)); }
.rc-shell-nav { width:100%; }
.rc-shell-nav .elementor-nav-menu--main .elementor-item { color:var(--rc-color-ink); font:500 15px/1.5 var(--rc-font-family); padding:16px 20px; }
.rc-shell-nav .elementor-nav-menu--main .elementor-item:hover,.rc-shell-nav .elementor-nav-menu--main .elementor-item:focus,.rc-shell-nav .elementor-nav-menu--main .elementor-item-active { color:var(--rc-color-bronze-ink); background:var(--rc-color-background); }
.rc-shell-nav .elementor-nav-menu--dropdown { background:var(--rc-color-surface); border:1px solid var(--rc-color-line); }
.rc-shell-nav .elementor-nav-menu--dropdown a { font:500 15px/1.5 var(--rc-font-family); color:var(--rc-color-ink); padding:12px 20px; min-height:44px; }
.rc-shell-nav .elementor-nav-menu--dropdown a:hover,.rc-shell-nav .elementor-nav-menu--dropdown a:focus { background:var(--rc-color-background); color:var(--rc-color-bronze-ink); }
.rc-shell-nav .elementor-menu-toggle { color:var(--rc-color-ink); background:var(--rc-color-background); min-height:44px; min-width:44px; margin:8px 0; }
.rc-shell-footer { background:var(--rc-color-ink); color:var(--rc-color-surface); }
.rc-shell-footer .rc-shell-footer-main { max-width:1248px; margin:0 auto; padding:56px 24px 40px; width:100%; flex-direction:row; flex-wrap:wrap; gap:32px; align-items:flex-start; }
.rc-shell-footer .rc-footer-brand { flex:1 1 260px; width:auto; gap:24px !important; }
.rc-footer-brand .rc-shell-logo { width:260px; max-width:100%; }
.rc-footer-tagline .elementor-heading-title,.rc-footer-copyright .elementor-heading-title { font:400 14px/1.6 var(--rc-font-family); color:var(--rc-color-surface); }
.rc-shell-footer .rc-footer-column { flex:1 1 150px; width:auto; gap:4px !important; }
.rc-footer-title .elementor-heading-title { color:var(--rc-color-accent); font:600 16px/1.5 var(--rc-font-family); margin-bottom:12px; }
.rc-shell-footer .rc-shell-link .elementor-button { color:var(--rc-color-surface); }
.rc-shell-footer .rc-shell-footer-bottom { padding:24px max(24px,calc((100% - 1200px)/2)); border-top:1px solid var(--rc-color-ink-muted); flex-direction:row; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:24px; }
.rc-footer-legal .elementor-nav-menu { flex-wrap:wrap; }
.rc-footer-legal .elementor-item { color:var(--rc-color-surface); font:400 13px/1.5 var(--rc-font-family); padding:10px 12px; min-height:44px; }
.rc-footer-legal .elementor-item:hover,.rc-footer-legal .elementor-item:focus { color:var(--rc-color-accent); }
.rc-shell-footer :where(a,button):focus-visible { outline:2px solid var(--rc-color-accent); outline-offset:3px; box-shadow:none; }
@media(max-width:1024px) {
 .rc-shell-header .rc-shell-main { flex-wrap:wrap; gap:20px; }
 .rc-shell-logo { width:250px; }
 .rc-shell-account { margin-left:auto; }
 .rc-shell-search { order:3; flex-basis:100%; }
 .rc-shell-nav .elementor-nav-menu--dropdown { position:relative; width:100% !important; left:0 !important; }
}
/* v0.4.0: measured correction to the current mockup shell. */
.rc-shell-header .rc-shell-utility {padding:0 max(24px,calc((100% - 1280px)/2));min-height:38px;background:var(--rc-color-ink);color:var(--rc-color-surface);gap:24px;}
.rc-shell-caption .elementor-heading-title {color:var(--rc-color-surface);font:400 13px/1.6 var(--rc-font-family);}
.rc-shell-caption strong {margin-right:10px;font-weight:700;}
.rc-shell-caption a {color:var(--rc-color-surface);text-decoration:underline;font-weight:700;text-underline-offset:3px;}
.rc-shell-header .rc-shell-utility-links .elementor-button {color:var(--rc-color-surface);font:400 13px/1.6 var(--rc-font-family);min-height:38px;text-decoration:underline;padding:0;}
.rc-shell-header .rc-shell-utility-links {gap:24px!important;}
.rc-shell-header .rc-shell-main {max-width:1328px;min-height:76px;display:grid;grid-template-columns:214px minmax(0,1fr) 250px 48px;gap:16px;padding:0 24px;position:relative;}
.rc-shell-header .rc-shell-logo {width:214px;min-height:48px;display:flex;align-items:center;}
.rc-shell-header .rc-shell-nav {width:100%;min-width:0;}
.rc-shell-header .rc-shell-nav .elementor-nav-menu--main .elementor-item {font:600 13px/1.2 var(--rc-font-family);min-height:48px;padding:0 10px;}
.rc-shell-header .rc-shell-search {min-width:0;width:250px;order:initial;}
.rc-header-search {margin:0;width:100%;}
.rc-header-search-control {position:relative;width:100%;min-height:48px;display:flex;align-items:center;border:1px solid var(--rc-color-controls);border-radius:4px;background:var(--rc-color-surface);}
.rc-header-search-control svg {position:absolute;left:13px;width:19px;height:19px;pointer-events:none;color:var(--rc-color-ink-muted);}
.rc-header-search-control input[type=search] {width:100%;min-width:0;min-height:46px;border:0;background:transparent;color:var(--rc-color-ink);padding:0 10px 0 42px;font:500 13px/1.2 var(--rc-font-family);border-radius:4px;}
.rc-fidelity-cart {display:flex;align-items:center;justify-content:center;width:48px;min-height:48px;border:1px solid var(--rc-color-line);border-radius:4px;color:var(--rc-color-ink);background:var(--rc-color-surface);}
.rc-shell-cart {width:48px;}
.rc-shell-header .rc-shell-main .elementor-menu-toggle {margin:0;background:var(--rc-color-surface);min-width:44px;min-height:44px;}
.rc-shell-footer .rc-shell-footer-main {max-width:1328px;display:grid;grid-template-columns:1.5fr repeat(4,1fr);gap:40px;padding:64px 24px 48px;}
.rc-shell-footer .rc-footer-brand {gap:16px!important;}
.rc-shell-footer .rc-footer-column {gap:0!important;}
.rc-shell-footer .rc-footer-title .elementor-heading-title {color:var(--rc-color-surface);font:700 13px/1.6 var(--rc-font-family);text-transform:uppercase;margin:0 0 16px;}
.rc-shell-footer .rc-shell-link .elementor-button {color:var(--rc-color-line);font:400 14px/1.6 var(--rc-font-family);min-height:32px;padding:4px 0;}
.rc-shell-footer .rc-footer-tagline .elementor-heading-title {color:var(--rc-color-line);font:400 14px/1.6 var(--rc-font-family);}
.rc-shell-footer .rc-shell-footer-bottom {max-width:1280px;width:calc(100% - 48px);margin:auto;padding:0;min-height:80px;border-color:#ffffff2e;}
.rc-shell-footer .rc-footer-copyright .elementor-heading-title {font-size:12px;color:#bfc3cc;}
.rc-shell-footer .rc-footer-legal-links {width:auto;display:flex;flex-direction:row;gap:16px;}
.rc-shell-footer .rc-footer-legal-links .elementor-button {font-size:12px;}
@media(max-width:1180px) and (min-width:1025px){
 .rc-shell-header .rc-shell-main {grid-template-columns:190px minmax(0,1fr) 48px 48px;}
 .rc-shell-header .rc-shell-logo {width:190px;}
 .rc-shell-header .rc-shell-search {width:48px;}
 .rc-header-search-control input:not(:focus) {color:transparent;padding:0;}
 .rc-header-search-control input:not(:focus)::placeholder {color:transparent;}
 .rc-header-search-control input:focus {position:absolute;right:0;width:280px;background:var(--rc-color-surface);border:1px solid var(--rc-color-controls);z-index:4;}
}
@media(max-width:1024px){
 .rc-shell-header .rc-shell-utility {justify-content:center;}
 .rc-shell-header .rc-shell-utility-links {display:none;}
 .rc-shell-header .rc-shell-main {grid-template-columns:1fr minmax(48px,290px) 48px 44px;gap:8px;}
 .rc-shell-header .rc-shell-logo {grid-column:1;grid-row:1;width:190px;}
 .rc-shell-header .rc-shell-nav {grid-column:4;grid-row:1;position:static;}
 .rc-shell-header .rc-shell-search {grid-column:2;grid-row:1;width:100%;}
 .rc-shell-header .rc-shell-cart {grid-column:3;grid-row:1;}
 .rc-shell-header .rc-shell-nav .elementor-nav-menu--dropdown {position:absolute!important;top:100%!important;left:0!important;width:100%!important;margin:0!important;z-index:100;}
 .rc-shell-footer .rc-shell-footer-main {grid-template-columns:1.4fr 1fr 1fr;}
 .rc-shell-footer .rc-footer-column:last-child {grid-column:2;}
}
@media(max-width:767px){
 .rc-shell-header .rc-shell-utility {min-height:40px;padding:0 16px;}
 .rc-shell-header .rc-shell-caption {display:block;}
 .rc-shell-caption strong {display:none;}
 .rc-shell-caption a {display:inline-flex;align-items:center;min-height:40px;}
 .rc-shell-header .rc-shell-main {min-height:66px;padding:0 16px;grid-template-columns:1fr 44px 44px 44px;gap:5px;}
 .rc-shell-header .rc-shell-logo {width:176px;}
 .rc-shell-header .rc-shell-search {width:44px;}
 .rc-header-search-control {min-height:44px;}
 .rc-header-search-control input[type=search] {min-height:42px;padding:0;}
 .rc-header-search-control input:not(:focus),.rc-header-search-control input:not(:focus)::placeholder {color:transparent;}
 .rc-header-search-control input:focus {position:absolute;right:0;width:min(320px,80vw);background:var(--rc-color-surface);padding:0 12px;z-index:4;border:1px solid var(--rc-color-controls);}
 .rc-header-search-control svg {left:12px;}
 .rc-fidelity-cart,.rc-shell-cart {width:44px;min-height:44px;}
 .rc-shell-footer .rc-shell-footer-main {grid-template-columns:1fr 1fr;padding:48px 16px 40px;gap:36px 20px;}
 .rc-shell-footer .rc-footer-brand {grid-column:1/-1;}
 .rc-shell-footer .rc-footer-column:last-child {grid-column:auto;}
 .rc-shell-footer .rc-shell-footer-bottom {width:calc(100% - 32px);min-height:96px;align-items:flex-start;justify-content:center;flex-direction:column;gap:8px;}
}
@media(max-width:359px){.rc-shell-header .rc-shell-logo{width:142px;}.rc-shell-header .rc-shell-main{gap:4px;padding:0 16px;}}
.rc-mobile-taskbar {display:none;}
.rc-fidelity [id], #content {scroll-margin-top:var(--rc-anchor-offset,160px);}
.elementor .rc-fidelity-batch4 .applications-hero .rc-review-notice {color:#24252f!important;font-size:14px;line-height:1.6;}
header.elementor-location-header {position:sticky;top:-38px;z-index:80;}
body.admin-bar header.elementor-location-header {top:-6px;}
.rc-shell-nav .elementor-nav-menu--main .elementor-item-active {color:var(--rc-color-ink);background:transparent;box-shadow:0 2px 0 var(--rc-color-accent);border-radius:0 0 4px 4px;}
@media(max-width:782px){body.admin-bar header.elementor-location-header{top:8px;}}
@media(max-width:767px){
 header.elementor-location-header {top:-40px;}
 body.admin-bar header.elementor-location-header {top:6px;}
 body:has(.rc-mobile-taskbar) {padding-bottom:70px;}
 .elementor .rc-fidelity.rc-fidelity {padding-bottom:0;}
 .rc-mobile-taskbar {position:fixed;bottom:0;left:0;right:0;z-index:100;display:grid;grid-template-columns:repeat(4,1fr);min-height:68px;border-top:1px solid var(--rc-color-line);background:var(--rc-color-surface);padding-bottom:env(safe-area-inset-bottom);}
 .rc-mobile-taskbar a {display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:68px;color:var(--rc-color-ink);text-decoration:none;font:600 12px/1.2 var(--rc-font-family);}
 .rc-mobile-taskbar img {width:20px;height:20px;}
 .rc-mobile-taskbar a:focus-visible {outline:2px solid var(--rc-color-ink);outline-offset:-4px;}
}
@media(max-width:600px){body.admin-bar header.elementor-location-header {top:-40px;}}
/* Lorena-approved refinement: separate mailing details from the balanced navigation row. */
.rc-shell-footer .rc-footer-phone .elementor-button{font-weight:700;}
.rc-shell-footer .rc-footer-mailing-row{width:calc(100% - 48px);max-width:1200px;margin:0 auto;padding:20px 0!important;border-top:1px solid var(--rc-color-controls);}
.rc-footer-mailing-address{width:100%;}
.rc-footer-mailing-content{display:grid;grid-template-columns:minmax(240px,1fr) minmax(260px,2fr);gap:24px;align-items:center;color:var(--rc-color-line);font:400 14px/1.6 var(--rc-font-family);}
.rc-footer-mailing-content strong{font-weight:600;}
.rc-footer-mailing-content address{font-style:normal;}
.rc-footer-mailing-content p{font-size:12px;margin:0;max-width:600px;}
@media(max-width:767px){.rc-shell-footer .rc-footer-mailing-row{width:calc(100% - 32px);}.rc-footer-mailing-content{grid-template-columns:1fr;gap:12px;}}

/* Matched mockup control framing; native menu behavior is unchanged. */
@media(max-width:1024px){
 .rc-shell-header .rc-shell-main .elementor-menu-toggle {border:1px solid var(--rc-color-line);border-radius:4px;}
}
