/* ===== source: www/assets/legacy/wp-content/themes/reefseahomes/css/mobilenav.css ===== */
@media screen and (max-width: 900px) {
body.b1170 #upper-header>.container,
body.b1170 #main-header>.container,
body.b1170 #lower-header>.container,
body.b1170 #upper-footer>.container,
body.b1170 #main-footer>.container,
body.b1170 #lower-footer>.container,
body.b1170 #main-content>.container
{
	width:100%;
	padding-left:15px;
	padding-right:15px;
}

body.b960 #upper-header>.container,
body.b960 #main-header>.container,
body.b960 #lower-header>.container,
body.b960 #upper-footer>.container,
body.b960 #main-footer>.container,
body.b960 #lower-footer>.container,
body.b960 #main-content>.container{
	width:100%;
	padding-left:15px;
	padding-right:15px;
}

body.sidemenu-fixed{
	padding-left:0!important;
}

body.sidemenu-fixed .full-width{
	padding-left:0!important;
}

body
{
padding-top:0!important;
}

.lower-logo{
display:none;
}

.page-heading,
#slider{
margin-top:0!important;
}

.page-heading{
padding-top:10px!important;
}

.admin-bar #header {
margin-top: 0px!important;
}

#header
{
position:relative;
}

#header .align-right
{
text-align:center;
}

#main-header,#lower-header,#upper-header
{
height:auto!important;
padding:20px 0;
overflow:visible;
}

#lower-header{
padding:0;
}

.b1170 #main-header,
.b960 #main-header,
.b1170 #lower-header,
.b960 #lower-header,
.b1170 #upper-header,
.b960 #upper-header{
padding:0;
}

.b1170 #main-header>.container,
.b960 #main-header>.container,
.b1170 #lower-header>.container,
.b960 #lower-header>.container,
.b1170 #upper-header>.container,
.b960 #upper-header>.container{
height:auto!important;
padding:20px 15px;
}

#upper-header .row>div,
#lower-header .row>div,
#main-header .row>div{
	display:block;
	width:100%;
}

#upper-header .align-left
{
text-align:center;
}

#main-nav-button
{
width:50px;
height:50px;
padding:7px;
text-align:center;
cursor:pointer;
display:inline-block;
position:absolute;
top:0;
right:20px;
margin:10px 0 0!important;
}

#main-header #main-nav-button
{
margin:20px 0;
}

#main-nav-button span
{
width:35px;
height:3px;
line-height:0;
background:#fff;
display:block;
margin:7px 0;
}

#header.style5 #main-nav-button span,
#header.style6 #main-nav-button span,
#header.style7 #main-nav-button span,
#header.style8 #main-nav-button span,
#header.style1 #main-nav-button span
{
background:#999;
}

#header.style8 #main-header
{
-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);
filter:alpha(opacity=100);
-moz-opacity:1;
-khtml-opacity:1;
opacity:1;
padding-bottom:15px;
overflow:visible;
}

#search-box
{
float:none;
margin:0;
position: relative;
top: 0;
right: 0;
display:none;
}

#main-header #search-box{
margin-top: 0;
margin-left: 0;
}

#main-header{
box-shadow:none!important;
-webkit-box-shadow:none!important;
-moz-box-shadow:none!important;
}


#header.style3 #lower-header, #header.style4 #lower-header {
background: #141d22;
}

#lower-header #main-nav,#header.style4 #lower-header #main-nav,
#lower-header div.menu>ul,#header.style4 #lower-header div.menu>ul
{
display:none;
}

#main-nav,
#header div.menu>ul
{
text-align:left;
padding:0!important;
margin-top:0!important;
width: 100%;
}

#main-header #main-nav,
#main-header div.menu>ul
{
display:none;
}

#main-nav li,
#header div.menu>ul li
{
display:block!important;
margin:0!important;
position:relative;
}

#main-nav .dropdown-button,
#header div.menu>ul .dropdown-button{
position:absolute;
top:0;
right:0;
width:38px;
height:38px;
background:url('/assets/legacy/wp-content/themes/reefseahomes/img/mobile-menu-icons.png') no-repeat;
cursor:pointer;
}

#header.style1 #main-nav .dropdown-button,
#header.style5 #main-nav .dropdown-button,
#header.style6 #main-nav .dropdown-button,
#header.style7 #main-nav .dropdown-button,
#header.style8 #main-nav .dropdown-button,
#header.style1 div.menu>ul .dropdown-button,
#header.style5 div.menu>ul .dropdown-button,
#header.style6 div.menu>ul .dropdown-button,
#header.style7 div.menu>ul .dropdown-button,
#header.style8 div.menu>ul .dropdown-button{
background:url('/assets/legacy/wp-content/themes/reefseahomes/img/accordion-icons.png') no-repeat;
}

#main-nav li.dropdown-opened>.dropdown-button,
#header.style1 #main-nav li.dropdown-opened>.dropdown-button,
#header.style5 #main-nav li.dropdown-opened>.dropdown-button,
#header.style6 #main-nav li.dropdown-opened>.dropdown-button,
#header.style7 #main-nav li.dropdown-opened>.dropdown-button,
#header.style8 #main-nav li.dropdown-opened>.dropdown-button,
#header div.menu>ul li.dropdown-opened>.dropdown-button,
#header.style1 div.menu>ul li.dropdown-opened>.dropdown-button,
#header.style5 div.menu>ul li.dropdown-opened>.dropdown-button,
#header.style6 div.menu>ul li.dropdown-opened>.dropdown-button,
#header.style7 div.menu>ul li.dropdown-opened>.dropdown-button,
#header.style8 div.menu>ul li.dropdown-opened>.dropdown-button{
background-position: 0 -38px;
}

#main-nav li + li,
#header div.menu>ul li + li{
border-top:1px solid #999;
}

#header.style1 #main-nav li + li,
#header.style1 #main-nav li ul,
#header.style5 #main-nav li + li,
#header.style5 #main-nav li ul,
#header.style1 div.menu>ul li + li,
#header.style1 div.menu>ul li ul,
#header.style5 div.menu>ul li + li,
#header.style5 div.menu>ul li ul{
border-top-color:#82bfd9;
}

#main-nav li a,
#header div.menu>ul li a
{
font-size:16px;
text-transform:none;
padding:8px 0;
display:block;
}

#main-nav>li>a:after,
#header div.menu>ul>li>a:after
{
display:none!important;
}

#main-nav li .mega-menu{
display: none;
visibility:visible!important;
opacity:1!important;
margin-top:0!important;
}

#main-nav li .mega-menu>ul{
	background:none!important;
}

#main-nav li ul,
.csstransforms #main-nav li ul,
#header div.menu>ul li ul,
.csstransforms #header div.menu>ul li ul
{
display:none;
width:auto;
height:auto;
margin-top:0!important;
visibility:visible;
-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)!important;
filter:alpha(opacity=100)!important;
-moz-opacity:1!important;
-khtml-opacity:1!important;
opacity:1!important;
transform:none!important;
-webkit-transform:none!important;
-moz-transform:none!important;
animation:none!important;
-webkit-animation:none!important;
padding:0;
left:0!important;
margin-left:0!important;
position:relative;
border-top:1px solid #999;
}

#main-nav .mega-menu>ul>li + li:before,
#header div.menu>ul .mega-menu>ul>li + li:before{
display:none;
}

#main-nav li:hover>ul,
.csstransforms #main-nav li:hover>ul,
#header div.menu>ul li:hover>ul,
.csstransforms #header div.menu>ul li:hover>ul{
display:none;
}

#main-nav li ul>li,
#header div.menu>ul li ul>li{
padding-left:20px;
}

#main-nav li ul li a,
#header div.menu>ul li ul li a
{
color:#23323a;
background:none!important;
font-size:16px;
padding:8px 0;
display:block;
}

#main-nav li ul li a:after,
#header div.menu>ul li ul li a:after{
	display:none;
}

#main-nav li ul li:hover>a, 
#main-nav li ul li.current-menu-item>a, 
#main-nav li ul li.current-menu-ancestor>a,
#header div.menu>ul li ul li:hover>a, 
#header div.menu>ul li ul li.current-menu-item>a, 
#header div.menu>ul li ul li.current-menu-ancestor>a  {
color: #008fd5;
background: transparent;
}

#main-nav li ul li:hover>a,
#main-nav li:hover>a,
#header div.menu>ul li ul li:hover>a,
#header div.menu>ul li:hover>a
{
color:#008fd5!important;
background:none;
}







/**** SIDEMENU *****/

#sidemenu{
	position:relative;
	text-align:left;
}

#sidemenu .logo{
	width:100%;
	text-align:left;
	padding-right:90px;
}

#sidemenu-button{
	display:none!important;
}

#sidemenu-wrapper{
	position:initial;
	background:#fff!important;
	width:100%;
	padding:15px;
	text-align:center;
}

#sidemenu.dark #sidemenu-wrapper{
	background:#141d22!important;
}

#sidemenu .sidemenu-tweets,
#sidemenu .sidemenu-footer{
	display:none!important;
}

#side-nav-button
{
width:50px;
height:50px;
padding:7px;
text-align:center;
cursor:pointer;
display:inline-block;
position:absolute;
top:0;
right:20px;
margin:10px 0 0!important;
}

#side-header #main-nav-button
{
margin:20px 0;
}

#side-nav-button span
{
width:35px;
height:3px;
line-height:0;
background:#fff;
display:block;
margin:7px 0;
}

#side-nav{
	text-align:left;
	padding:0;
	border:none;
}

#side-nav>ul{
	display:none;
}

#side-nav li
{
display:block!important;
margin:0!important;
position:relative;
}

#side-nav .dropdown-button{
position:absolute;
top:0;
right:0;
width:38px;
height:38px;
background:url('/assets/legacy/wp-content/themes/reefseahomes/img/mobile-menu-icons.png') no-repeat;
cursor:pointer;
}

#side-nav li ul,
#side-nav>ul>li ul,
#side-nav>ul>li>ul
{
display:none;
width:auto;
height:auto;
visibility:visible!important;
-ms-filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100)!important;
filter:alpha(opacity=100)!important;
-moz-opacity:1!important;
-khtml-opacity:1!important;
opacity:1!important;
transform:none!important;
-webkit-transform:none!important;
-moz-transform:none!important;
animation:none!important;
-webkit-animation:none!important;
padding:0;
left:0!important;
margin-left:0!important;
position:relative;
border-top:1px solid #999;
}

#side-nav .mega-menu>ul>li + li:before{
display:none;
}

#side-nav li:hover>ul{
display:none;
}

#side-nav li ul>li{
padding-left:20px;
}

#side-nav li ul li a
{
color:#23323a;
background:none;
font-size:16px;
padding:8px 0;
display:block;
}

#side-nav li ul li a:after{
	display:none;
}

#side-nav a:before{
	display:none!important;
}

#side-nav li ul li:hover>a, 
#side-nav li ul li.current-menu-item>a, 
#side-nav li ul li.current-menu-ancestor>a {
color: #008fd5;
background: transparent;
}



#side-nav li ul a{
	text-transform:none;
}

#main-nav li:hover>.mega-menu,
#side-nav>ul li:hover>.mega-menu{
	display:none;
	animation:none;
	-webkit-animation:none;
}

#main-nav li.dropdown-opened>.mega-menu,
#side-nav>ul li.dropdown-opened>.mega-menu{
	display:block;
	left:0;
	background:none;
}

#side-nav>ul li.dropdown-opened>.mega-menu>ul{
	background:none;
}

#main-nav .mega-menu,
#side-nav>ul .mega-menu{
	position:relative;
	margin:0;
	padding:0;
	visibility:visible!important;
	opacity:1!important;
	display:none;
}

#main-nav .mega-menu .dropdown-button,
#main-nav .mega-menu-footer,
#side-nav>ul .mega-menu .dropdown-button,
#side-nav>ul .mega-menu .mega-menu-footer{
	display:none;
}

#main-nav .mega-menu li>a,
#main-nav .mega-menu li>span,
#side-nav>ul .mega-menu li>a,
#side-nav>ul .mega-menu li>span{
	padding-left:0!important;
	padding-right:0!important;
}

#main-nav .mega-menu>ul,
#side-nav>ul .mega-menu>ul{
	display:block;
	margin:0;
	width:100%!important;
	border-top:none!important;
}

#main-nav .mega-menu>ul>li,
#side-nav>ul .mega-menu>ul>li{
	display:block;
	width:100%;
	border-top:none!important;
}

#main-nav .mega-menu>ul>li li,
#side-nav>ul .mega-menu>ul>li li{
	padding-left:0!important;
}

#main-nav .mega-menu>ul>li ul,
#side-nav>ul .mega-menu>ul>li ul{
	display:block!important;
	width:100%!important;
}


#sidemenu.light #main-nav-button span
{
background:#999;
}

#sidemenu.light #side-nav>ul .dropdown-button{
background:url('/assets/legacy/wp-content/themes/reefseahomes/img/accordion-icons.png') no-repeat;
}
}

/* ===== source: www/assets/rebuild.css ===== */
/*
 * Native rebuild overrides.
 * The legacy Revolution Slider runtime is stripped at render time; these
 * styles preserve static hero and project-gallery fallbacks from archived media.
 */
#rev_slider_75_1_wrapper {
  background: #e9e9e9 !important;
  height: 500px !important;
  overflow: hidden !important;
}

#rev_slider_75_1 {
  background: url("/wp-content/uploads/2014/08/collage_bw22.jpg") center top / cover no-repeat !important;
  display: block !important;
  height: 500px !important;
  max-height: 500px !important;
  min-height: 500px !important;
  overflow: hidden !important;
  position: relative !important;
  visibility: visible !important;
}

#rev_slider_75_1::before,
#rev_slider_75_1::after {
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  z-index: 2;
}

#rev_slider_75_1::before {
  background: url("/wp-content/uploads/2014/08/top-gradient.png") center top / 100% 81px no-repeat;
  height: 81px;
  top: 0;
}

#rev_slider_75_1::after {
  background: url("/wp-content/uploads/2014/08/border_2.png") center top / cover no-repeat;
  bottom: 0;
  height: 500px;
}

#rev_slider_75_1 .tp-revslider-mainul,
#rev_slider_75_1 .tp-caption,
#rev_slider_75_1 .tp-bannertimer,
#rev_slider_75_1 .tp-loader,
#rev_slider_75_1 > div[style*="Error at loading"] {
  display: none !important;
}

.portGallery .rev_slider_wrapper {
  background: #e9e9e9 !important;
  height: auto !important;
  overflow: hidden !important;
}

.portGallery .rev_slider {
  display: block !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: hidden !important;
  visibility: visible !important;
}

.portGallery .rev_slider ul,
.portGallery .rev_slider li {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

.portGallery .rev_slider ul {
  height: auto !important;
  position: static !important;
  width: 100% !important;
}

.portGallery .rev_slider li {
  display: none !important;
  height: auto !important;
  position: static !important;
  visibility: visible !important;
  width: 100% !important;
}

.portGallery .rev_slider li:first-child {
  display: block !important;
}

.portGallery .rev_slider img.rev-slidebg {
  display: block !important;
  height: auto !important;
  max-width: 100% !important;
  position: static !important;
  visibility: visible !important;
  width: 100% !important;
}

.portGallery .rev_slider .tp-bannertimer,
.portGallery .rev_slider .tp-loader,
.portGallery .rev_slider .tp-caption {
  display: none !important;
}

.search-results .search-result {
  border-bottom: 1px solid #e1e5ea;
  margin-bottom: 22px;
  padding-bottom: 18px;
}

.search-results .search-result h2 {
  font-size: 22px;
  margin-bottom: 8px;
}

.rebuild-form {
  display: block !important;
  margin: 24px 0 28px;
}

.rebuild-form.gform_wrapper {
  display: block !important;
}

.rebuild-form .gform_heading {
  margin-bottom: 16px;
}

.rebuild-form .gform_title {
  font-size: 22px;
  line-height: 1.25;
  margin: 0 0 8px;
}

.rebuild-form .gform_description p {
  margin: 0 0 7px;
}

.rebuild-form .gform_body ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.rebuild-form .gfield {
  clear: both;
  margin: 0 0 15px;
  padding: 0;
}

.rebuild-form .gf_left_half,
.rebuild-form .gf_right_half {
  clear: none;
  display: inline-block;
  vertical-align: top;
  width: 48%;
}

.rebuild-form .gf_right_half {
  margin-left: 3.5%;
}

.rebuild-form .gfield_label {
  color: #4f5965;
  display: block;
  font-weight: 700;
  margin: 0 0 6px;
}

.rebuild-form .gfield_required {
  color: #d25c25;
  margin-left: 3px;
}

.rebuild-form input[type="text"],
.rebuild-form input[type="tel"],
.rebuild-form input[type="email"],
.rebuild-form textarea {
  background: #fff;
  border: 1px solid #d7dde3;
  box-sizing: border-box;
  color: #3e4651;
  font: inherit;
  max-width: 100%;
  padding: 9px 10px;
  width: 100%;
}

.rebuild-form textarea {
  min-height: 130px;
  resize: vertical;
}

.rebuild-form .gform_footer {
  clear: both;
  padding-top: 3px;
}

.rebuild-form .gform_button {
  /* Phase 2 (task 2.4): approved unification of the rescue-era #003399
     form blue to the brand sky-blue. */
  background: var(--color-brand); /* #008fd5 */
  border: 0;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-weight: 700;
  line-height: 1;
  padding: 11px 22px;
  text-transform: uppercase;
}

.rebuild-form .gform_button:hover,
.rebuild-form .gform_button:focus {
  background: var(--color-brand-hover); /* #107aae */
}

.reef-form-message {
  border: 1px solid;
  margin: 0 0 16px;
  padding: 10px 12px;
}

.reef-form-message--success {
  background: #f1f8ee;
  border-color: #9bc58a;
  color: #345a26;
}

.reef-form-message--error {
  background: #fff4f1;
  border-color: #df9c88;
  color: #7a2f1c;
}

.reef-honeypot {
  height: 0;
  left: -9999px;
  overflow: hidden;
  position: absolute;
}

#main-footer #widget_sp_image-4 .widget_sp_image-image-link,
#main-footer #widget_sp_image-4 img[src*="Follow-us-on-Facebook"] {
  display: block;
  float: none !important;
}

#main-footer #widget_sp_image-4 img[src*="Follow-us-on-Facebook"] {
  margin-right: 0;
}

.reefsea-footer-social {
  clear: both;
  display: block;
  float: none;
  padding-top: 12px;
}

.reefsea-instagram-link {
  background: #536fa8;
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-sizing: border-box;
  color: #fff !important;
  display: block;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  max-width: 100%;
  min-height: 36px;
  padding: 9px 12px;
  text-align: center;
  text-decoration: none;
  width: 246px;
}

.reefsea-instagram-link i {
  color: inherit;
  margin-right: 6px;
}

.reefsea-instagram-link:hover,
.reefsea-instagram-link:focus {
  background: #6f89bf;
  color: #fff !important;
  text-decoration: none;
}

.project .project-meta,
.project.style2 .project-hover .project-description {
  cursor: pointer;
}

.project .project-meta h2 a,
.project .project-meta h3 a,
.project .project-meta h4 a {
  color: inherit;
  display: block;
}

.project .project-meta h2 a:hover,
.project .project-meta h2 a:focus,
.project .project-meta h3 a:hover,
.project .project-meta h3 a:focus,
.project .project-meta h4 a:hover,
.project .project-meta h4 a:focus {
  color: inherit;
  text-decoration: none;
}

#lower-footer .copyright {
  color: #fff;
}

body.page-id-22 #main-content .team-member {
  margin-left: auto;
  margin-right: auto;
}

/*
 * Phase 1.3 markup-cleanup compensations.
 * Each rule preserves the exact rendered appearance of an element whose tag
 * changed for semantic-hierarchy reasons; visual output must be unchanged.
 */

/* Fix 6: homepage intro heading changed <h2> -> <h1>. Match the old h2. */
#main-content h1.reef-home-heading {
  font-size: 32px;
  font-weight: 300;
  line-height: 36px;
  margin: 20px 0;
  color: #23323a;
  text-transform: none;
  letter-spacing: normal;
}

/* Fix 7: footer "Contact Details" changed <h4> -> <h3>. Match the old h4. */
#main-footer #text-2 h3 {
  font-size: 22px;
  font-weight: 500;
  line-height: 28px;
  margin: 10px 0 30px;
  color: #fff;
  text-transform: none;
  letter-spacing: normal;
}

/* Fix 8: testimonial client locations changed <h5> -> <p>. Match the old h5. */
#main-content p.testimonial-location {
  font-size: 18px;
  font-weight: 500;
  line-height: 26px;
  margin: -20px 0 10px;
  color: #23323a;
}

/* Fix 9: css/style.css hides .mix cards until MixItUp's reveal animation
   completes, which intermittently never happens (2014-era plugin race) —
   category grids render empty. Cards must be visible without JS; !important
   also beats MixItUp's inline styles when its animation does win the race.
   These pages ship no filter UI, so unconditional visibility is safe.
   Remove together with MixItUp in the Phase 2.4 asset cleanup. */
.projects-container .mix {
  display: block !important;
  opacity: 1 !important;
}

@media (max-width: 767px) {
  /* Fix 7: footer h4 gained margin-top:40px below 767px; keep parity for h3. */
  #main-footer #text-2 h3 {
    margin-top: 40px;
  }
}

@media (max-width: 640px) {
  .rebuild-form .gf_left_half,
  .rebuild-form .gf_right_half {
    display: block;
    margin-left: 0;
    width: 100%;
  }
}

/* ==========================================================================
   Phase 2 — step 2b MODERNIZATION (first intentional visual change)
   --------------------------------------------------------------------------
   This file loads LAST in the head (after site.css and the inline
   #dynamic-styles block), so equal-specificity rules here win the cascade.
   Tokens come from tokens.css (loaded first). See
   docs/site-improvement-review-and-plan.md §4 tasks 2.1/2.2/2.5.
   ========================================================================== */

/* --- Task 2 + 3: 15px body copy + AA-passing text colour -----------------
   Base body copy rendered at 14px / #73848e (the inline block pins
   `body,p{font-size:14px}`; body colour is #73848e from site.css). #73848e
   on white is 3.87:1 and fails WCAG AA. Raise the base to 15px with a
   unitless 1.6 line-height, and recolour body copy to --color-text-body
   (#687781, 4.62:1). Body copy is overwhelmingly unclassed <p>/<li> that
   inherit `body`, so setting the base here reaches nearly all of it. Nav,
   headings, buttons and .project-meta titles carry their own font-size and
   colour and are unaffected. Large decorative gray (>= 24px) keeps #73848e
   via its own rules (AA Large only needs 3:1). */
body {
  font-size: var(--font-size-base);   /* 15px */
  line-height: var(--line-height-base); /* 1.6 unitless */
  color: var(--color-text-body);      /* #687781 — AA 4.62:1 */
}

p {
  font-size: var(--font-size-base);   /* beat inline body,p{14px} */
}
/* NB: no blanket `li{...}` rule. Body-content list items carry no local
   font-size and already inherit 15px from `body`. A global `li` override
   would leak into header/nav/footer component lists (ul.text-list 14px,
   ul.menu 11px, ul.iconic-list 12px) that deliberately set their own size
   and shift the header layout — so it is intentionally omitted. */

/* NB: the .testimonial wrapper (with its own #73848e on .testimonial p /
   .testimonial-desc p) exists ONLY in the dark-navy footer widget site-wide
   — never on a light background. Darkening that gray there would REDUCE
   contrast on the dark bg, so it is deliberately left untouched. The
   light-background testimonial quotes on /testimonials/ are unwrapped <p>
   and already pick up the AA gray via body inheritance above. */

/* Keep editable form fields at their current 14px. They use `font:inherit`,
   so the body bump would otherwise push them to 15px; Phase 3.3 takes them
   to 16px for iOS deliberately. Submit buttons (input[type=submit]) are NOT
   pinned — they stay as-is. Covers the contact/footer form and the header
   search input. */
input[type="text"],
input[type="tel"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="number"],
textarea,
select,
/* .rebuild-form's own inputs use `font:inherit` at higher specificity
   (.rebuild-form input[type=text]); match it so the 15px body bump does
   not leak into the contact/footer form fields. */
.rebuild-form input[type="text"],
.rebuild-form input[type="tel"],
.rebuild-form input[type="email"],
.rebuild-form input[type="password"],
.rebuild-form input[type="search"],
.rebuild-form textarea {
  font-size: 14px;
}

/* --- Task 2.5a: category-grid card titles no longer clipped ---------------
   .project has overflow:hidden and .project-meta a fixed height:70px
   (site.css ~5323). Two-line titles overflow the 70px box and get clipped
   by the parent's overflow at narrow card widths (col-md-4/col-sm-4, i.e.
   ~975px desktop and 768px tablet, and design-services' 4-across grid at
   any width). Switch to min-height:70px so 1-line cards look identical but
   2-line titles grow the box instead of clipping. MixItUp still runs until
   the Phase 2.4 JS cleanup, so the grid layout is left unchanged
   (equal-height cards are deferred). */
.project-meta {
  height: auto;
  min-height: 70px;
}
