/*
Theme Name: City Coast Services & Vacuum Excavation
Author: Definitive Design Creations
Description: Custom City Coast Services and Vacuum Excavation theme designed by Definitive Design Creations. Includes the approved fabrication, civil works and gallery layouts with optional starter-content setup.
Version: 1.3.0
Requires at least: 6.6
Requires PHP: 8.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: city-coast-services
*/

:root{--navy:#102442;--blue:#1a3a6b;--yellow:#f5c200;--paper:#edf0f5;--ink:#142744;--muted:#566375;--line:#d8dee7;--heading:'Barlow Condensed',Impact,sans-serif;--body:'Barlow',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;font:1rem/1.65 var(--body);color:var(--ink);background:white}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #df9d00;outline-offset:5px}img{max-width:100%;display:block}button{cursor:pointer}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{font-family:var(--heading);font-weight:700;text-transform:uppercase;line-height:1.04}h1{font-size:clamp(3.8rem,7.2vw,7.1rem);font-weight:900;letter-spacing:-.02em}h2{font-size:clamp(2.6rem,4.3vw,4.2rem);font-weight:700}h3{font-size:1.85rem}p+p{margin-top:18px}.wrap{width:min(1240px,calc(100% - 96px));margin:auto}.eyebrow{text-transform:uppercase;font-size:.875rem;font-weight:600;letter-spacing:.17em;display:flex;align-items:center;gap:12px;margin-bottom:22px}.eyebrow:before{content:'';width:28px;height:2px;background:var(--yellow);flex-shrink:0}.yellow{color:var(--yellow)}.muted{color:var(--muted)}.topbar{background:var(--navy);color:#dce3ee;font-size:.8125rem;letter-spacing:.04em;padding:8px 0}.topbar .wrap{display:flex;justify-content:space-between;gap:20px}.topbar a{color:white;font-weight:600}.site-header{background:white;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand img{width:53px;height:56px;object-fit:contain}.brand strong{font:700 2rem/1 var(--heading);letter-spacing:.035em;display:block;font-style:italic}.brand small{display:block;font:600 .7rem/1.5 var(--body);letter-spacing:.29em;text-transform:uppercase;margin-top:4px}.nav{display:flex;align-items:center;gap:27px;font-size:.9rem;font-weight:600}.nav a:not(.btn){padding:12px 0;position:relative}.nav a:not(.btn):after{content:'';position:absolute;bottom:5px;left:0;width:0;height:2px;background:var(--yellow);transition:width .2s}.nav a:hover:after,.nav a[aria-current=page]:after{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:52px;padding:15px 24px;background:var(--yellow);color:var(--navy);font:700 1rem/1.3 var(--heading);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--yellow);transition:background .2s,color .2s}.btn:hover{background:#ffdb4d;border-color:#ffdb4d}.btn .arrow{font-family:Arial;font-size:1.3rem;font-weight:400}.btn-outline{background:transparent;border-color:#8f9cad;color:white}.btn-outline:hover{background:white;color:var(--navy);border-color:white}.btn-navy{background:var(--navy);color:white;border-color:var(--navy)}.btn-navy:hover{background:var(--blue);color:white;border-color:var(--blue)}.menu-toggle{display:none;background:none;border:1px solid var(--line);padding:10px 14px;color:var(--navy);font-weight:600}.hero{position:relative;min-height:630px;background:var(--navy);color:white;isolation:isolate;overflow:hidden}.hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 58%;z-index:-3}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,24,46,.96) 0%,rgba(8,24,46,.86) 33%,rgba(8,24,46,.18) 75%),linear-gradient(0deg,rgba(8,24,46,.5),transparent 35%);z-index:-2}.hero-content{padding-top:73px;padding-bottom:80px}.hero .eyebrow{font-size:.8125rem;color:#e7edf6}.hero h1{max-width:700px}.hero p{max-width:475px;color:#dae1eb;margin:27px 0 30px;font-size:1.125rem;line-height:1.65}.actions{display:flex;gap:14px;flex-wrap:wrap}.hero-caption{position:absolute;right:48px;bottom:28px;font-size:.8125rem;letter-spacing:.08em;text-transform:uppercase;color:#fff;border-left:2px solid var(--yellow);padding-left:14px}.sector-bar{background:var(--paper);border-bottom:1px solid var(--line);padding:22px 0}.sector-bar .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;flex-wrap:wrap}.sector-bar span{font:600 .875rem var(--heading);text-transform:uppercase;letter-spacing:.14em}.sector-bar .label{color:#697386;font-size:.75rem}.sector-bar span:not(.label):before{content:'';display:inline-block;width:4px;height:4px;background:var(--yellow);vertical-align:middle;margin-right:13px}.section{padding:88px 0}.section-head{display:flex;justify-content:space-between;align-items:end;gap:36px;margin-bottom:38px}.section-head p{max-width:410px;color:var(--muted)}.split{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.split p{color:var(--muted);margin-top:24px}.intro-image{height:420px;width:100%;object-fit:cover}.intro .btn{margin-top:28px}.stat-strip{display:flex;background:var(--navy);color:white}.stat-strip>div{flex:1;padding:22px 25px;border-right:1px solid #465369}.stat-strip strong{display:block;font:700 2rem/1 var(--heading);color:var(--yellow)}.stat-strip span{font-size:.8125rem;color:#e5e9ef}.pale{background:var(--paper)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.card{border:1px solid var(--line);background:white;display:flex;flex-direction:column;transition:transform .2s,border-color .2s}.card:hover{transform:translateY(-4px);border-color:var(--blue)}.card img{width:100%;height:225px;object-fit:cover}.card-body{padding:27px;display:flex;flex:1;flex-direction:column}.card-number{font-size:.8125rem;color:var(--muted);letter-spacing:.1em;margin-bottom:12px}.card p{margin:16px 0 22px;color:var(--muted)}.text-link{font:700 1rem var(--heading);text-transform:uppercase;letter-spacing:.08em;display:flex;justify-content:space-between;gap:24px;margin-top:auto;padding-top:15px;border-top:1px solid var(--line)}.dark{background:var(--navy);color:white}.dark p{color:#ccd6e4}.dark .eyebrow{color:var(--yellow)}.feature-photo{width:100%;height:500px;object-fit:cover}.feature-list{display:grid;grid-template-columns:1fr 1fr;gap:13px 25px;margin:28px 0;font-size:.9375rem;padding:0;list-style:none}.feature-list li{border-top:1px solid #49566a;padding-top:12px}.feature-list li:before{content:'+';color:var(--yellow);margin-right:10px;font-weight:bold}.service-rows{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-top:30px}.service-row{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);padding:24px 0;gap:20px}.service-row h3{font-size:1.65rem}.service-row:hover{color:var(--blue)}.service-row small{display:block;font-size:.875rem;color:var(--muted);margin-top:6px}.service-row>span{font-size:1.7rem;color:var(--blue)}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:48px;margin-top:45px}.why-item{border-top:2px solid var(--yellow);padding-top:22px}.why-item .number{font:600 1.2rem var(--heading);color:#718198;margin-bottom:20px}.why-item p{color:var(--muted);margin-top:18px}.cta{background:var(--yellow);padding:58px 0}.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:30px}.cta h2{font-size:3.4rem}.cta p{margin-top:12px}.footer{background:#0b1b32;color:#c6d0dd;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr .8fr 1.2fr;gap:50px}.footer .brand{color:white}.footer .brand img{background:white;padding:3px}.footer p{font-size:.9375rem;margin-top:23px;max-width:300px}.footer h4{color:white;font-size:1.125rem;letter-spacing:.1em;margin-bottom:23px}.footer ul{list-style:none;margin:0;padding:0;font-size:.9375rem}.footer li{margin-bottom:9px}.footer a:hover{color:var(--yellow)}.footer-bottom{border-top:1px solid #354156;margin-top:50px;padding:23px 0;display:flex;justify-content:space-between;gap:24px;font-size:.8125rem}.skip{position:fixed;top:-100px;left:20px;background:var(--yellow);padding:12px;z-index:100}.skip:focus{top:10px}.page-banner{background:var(--navy);color:white;padding:65px 0 70px}.page-banner h1{font-size:clamp(3.5rem,6vw,5.6rem);max-width:850px}.page-banner p{max-width:670px;color:#d4dce8;font-size:1.15rem;margin-top:25px}.breadcrumb{font-size:.8125rem;color:#c4d0e1;margin-bottom:25px}.breadcrumb a{text-decoration:underline;text-underline-offset:4px}.detail-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(260px,1fr);gap:65px;align-items:start}.detail-copy p{color:var(--muted);margin-top:22px}.detail-copy h2{font-size:2.8rem}.detail-copy h3{margin-top:36px;font-size:1.7rem}.detail-copy ul{padding-left:22px;margin-top:20px;color:var(--muted)}.detail-copy li{margin:10px 0}.detail-copy img{width:100%;max-height:430px;object-fit:cover;margin-top:35px}.aside{background:var(--paper);padding:30px;border-top:4px solid var(--yellow)}.aside h3{margin-bottom:20px}.aside a:not(.btn){display:block;border-top:1px solid var(--line);padding:13px 0;font-size:.9375rem}.aside .btn{margin-top:20px;width:100%}.notice{padding:23px;background:var(--paper);border-left:3px solid var(--yellow);margin-top:30px;font-size:.9375rem}.notice p{margin:8px 0 0}.gallery{display:grid;grid-template-columns:repeat(2,1fr);gap:32px}.gallery figure{margin:0}.gallery img{width:100%;height:340px;object-fit:cover}.gallery figcaption{padding:15px 0;font-weight:600}.contact-layout{display:grid;grid-template-columns:1fr 1.3fr;gap:75px}.contact-details a{overflow-wrap:anywhere}.contact-block{border-bottom:1px solid var(--line);padding:22px 0}.contact-block small{display:block;letter-spacing:.12em;text-transform:uppercase;font-size:.8125rem;color:var(--muted);margin-bottom:6px}.contact-block a.phone{font:700 2rem var(--heading)}.form{background:var(--paper);padding:38px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:7px}.field.full{grid-column:1/-1}label{font-size:.9375rem;font-weight:600}input,select,textarea{width:100%;padding:12px 14px;border:1px solid #aeb9c7;border-radius:0;background:white;color:var(--ink);min-height:49px}textarea{resize:vertical;min-height:140px}.form .btn{margin-top:24px}.form-note{font-size:.875rem;color:var(--muted);margin-top:15px}.email-review{margin-top:24px;padding:22px;border:1px solid #98a8bb;background:white}.email-review[hidden]{display:none}.email-review pre{white-space:pre-wrap;font:inherit;overflow-wrap:anywhere}.form-status{margin-top:16px}.gallery-intro{max-width:650px;margin-bottom:36px}.error-page{min-height:55vh}.footer .brand small{font-size:.625rem}
.home-cards{grid-template-columns:repeat(2,1fr)}.home-cards .card img{height:290px}
.clients-section{background:var(--paper);border-top:1px solid var(--line)}.client-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;list-style:none;margin:36px 0 0;padding:1px;background:var(--line)}.client-grid li{display:flex;align-items:center;justify-content:center;background:white;padding:12px 24px}.client-grid img{width:100%;height:auto;max-height:180px;object-fit:contain}
@media(max-width:600px){.client-grid{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:28px}.client-grid li{padding:8px 14px}.client-grid img{max-height:130px}}
@media(min-width:1500px){.hero{min-height:710px}.hero-content{padding-top:90px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.nav{gap:17px}.nav a{font-size:.85rem}.header-inner{gap:18px}.brand strong{font-size:1.7rem}.brand img{width:45px}.nav .btn{padding:14px 17px}.split{gap:40px}.hero-caption{right:28px}.footer-grid{gap:30px}.card-body{padding:23px}}
@media(max-width:880px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 28px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #10244218}.nav.is-open{display:flex}.menu-toggle{display:block}.header-inner{min-height:84px}.nav a{font-size:1rem}.split,.contact-layout{grid-template-columns:1fr;gap:38px}.cards{grid-template-columns:repeat(2,1fr)}.why-grid{gap:26px}.section{padding:65px 0}.hero{min-height:600px}.hero h1{font-size:5.3rem}.hero:after{background:linear-gradient(90deg,rgba(8,24,46,.93),rgba(8,24,46,.65) 55%,rgba(8,24,46,.24))}.footer-grid{grid-template-columns:1fr 1fr;gap:38px}.section-head{align-items:start}.detail-grid{gap:30px;grid-template-columns:1.6fr 1fr}}
@media(max-width:600px){.wrap{width:calc(100% - 40px)}.topbar{font-size:.75rem}.topbar .location-short{display:none}.header-inner{min-height:80px}.brand strong{font-size:1.6rem}.brand small{font-size:.6rem}.brand img{width:43px;height:48px}.hero{min-height:610px}.hero-content{padding-top:53px;padding-bottom:72px}.hero h1{font-size:clamp(3.5rem,13vw,5rem)}.hero .eyebrow{font-size:.75rem;letter-spacing:.1em;max-width:290px}.hero p{font-size:1rem;max-width:330px;margin:23px 0 28px}.hero-photo{object-position:58% center}.hero:after{background:linear-gradient(90deg,rgba(8,24,46,.94),rgba(8,24,46,.55)),linear-gradient(0deg,rgba(8,24,46,.6),transparent)}.hero-caption{font-size:.7rem;left:20px;right:auto;bottom:22px}.btn{padding:14px 18px;min-height:50px;font-size:.9375rem;gap:17px}.sector-bar{padding:21px 0}.sector-bar .wrap{justify-content:flex-start;gap:12px 22px}.sector-bar .label{width:100%}.sector-bar span{font-size:.8125rem}.sector-bar span:not(.label):before{margin-right:8px}.section{padding:55px 0}.section-head{display:block}.section-head p{margin-top:22px}.eyebrow{font-size:.75rem;letter-spacing:.13em;margin-bottom:18px}.cards,.why-grid,.detail-grid,.contact-layout,.gallery,.service-rows{grid-template-columns:1fr}.why-grid{gap:30px}.card img{height:230px}.intro-image{height:300px}.feature-photo{height:330px}.feature-list{gap:12px 17px;font-size:.875rem}.cta .wrap{display:block}.cta h2{font-size:2.7rem}.cta .btn{margin-top:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:36px 20px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:10px}.page-banner{padding:45px 0 50px}.page-banner h1{font-size:3.6rem;overflow-wrap:break-word}.page-banner p{font-size:1rem}.form{padding:25px 20px}.form-grid{grid-template-columns:1fr}.form .field{grid-column:1/-1}.gallery img{height:270px}.stat-strip>div{padding:20px}.stat-strip span{font-size:.75rem}.stat-strip strong{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important;animation:none!important}}
@media(min-width:881px) and (max-width:980px){.nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:25px 28px;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line);box-shadow:0 15px 25px #10244218}.nav.is-open{display:flex}.nav a{font-size:1rem}.menu-toggle{display:block}}

/* Fabrication and civil project photography. */
.home-priority-cards{grid-template-columns:repeat(3,minmax(0,1fr))}
.feature-figure{margin:0}.feature-figure .feature-photo{width:100%;height:450px;object-fit:cover}.feature-figure figcaption{font-size:.85rem;color:var(--muted);margin-top:12px}
.capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:40px}.capability-grid article{border-top:3px solid var(--yellow);padding:26px 0 0}.capability-grid h3{margin:14px 0}.capability-grid p{margin-bottom:0}
.project-gallery{margin-top:32px}.project-gallery img{height:330px;object-fit:cover}.project-gallery figure{margin:0}.project-brief{border-left:3px solid var(--yellow);padding:12px 0 12px 32px}.inline-link{text-decoration:underline;text-underline-offset:4px}
@media(max-width:880px){.home-priority-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.capability-grid{gap:22px}.feature-figure .feature-photo{height:380px}}
@media(max-width:600px){.home-priority-cards,.capability-grid{grid-template-columns:1fr}.feature-figure .feature-photo{height:300px}.project-gallery img{height:270px}.project-brief{padding-left:22px}.hero h1{font-size:clamp(2.65rem,11.5vw,4.5rem)}.topbar .wrap{gap:8px}.topbar a{white-space:nowrap}}
@media(max-width:600px){.page-banner h1{font-size:clamp(2.5rem,11.5vw,3.2rem)}}

.gallery-categories{border-bottom:1px solid var(--line);background:#fff}.gallery-categories .wrap{display:flex;flex-wrap:wrap;gap:12px 28px;padding-top:24px;padding-bottom:24px}.gallery-categories a{font-weight:600;border-bottom:2px solid var(--yellow);padding:8px 0}.gallery-category{scroll-margin-top:110px}.gallery-category h2{font-size:clamp(2.2rem,4vw,3.5rem)}.home-fabrication-photos .gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.home-fabrication-photos img{height:270px}.home-fabrication-photos figcaption{font-size:.9rem}.section-head>div:last-child{max-width:560px}.section-head .actions{margin-top:24px;align-items:center}.section-head .actions .text-link{font-size:.95rem}
@media(max-width:600px){.home-fabrication-photos .gallery{grid-template-columns:1fr}.gallery-categories .wrap{gap:12px 20px}.gallery-categories a{font-size:.9rem}.gallery-category{scroll-margin-top:90px}}

/* Full business name, with natural wrapping on small screens. */
.brand small{letter-spacing:.14em;max-width:270px}.brand small span{display:inline-block;white-space:nowrap}.brand>span{min-width:0}.header-inner .brand{flex-shrink:1;min-width:0}
@media(max-width:600px){.brand small{max-width:150px;font-size:.6rem;letter-spacing:.1em}.header-inner{gap:12px}}

.ccs-menu{display:flex;align-items:center;gap:26px;list-style:none;padding:0;margin:0}.ccs-menu li{margin:0}.ccs-menu .current-menu-item>a{border-bottom:2px solid var(--yellow)}.custom-logo-link img{max-width:280px;max-height:70px;width:auto;height:auto}.ccs-editor-content{max-width:1000px}.ccs-editor-content p,.ccs-editor-content article{margin-bottom:24px}.ccs-editor-content img{max-width:100%;height:auto}.footer-bottom{flex-wrap:wrap}.designer-credit{color:#c6d0dd}.admin-bar .site-header{top:32px}.wp-block-gallery img{height:auto}.alignwide{max-width:1200px}.alignfull{max-width:none}
@media(max-width:1100px){.ccs-menu{gap:17px}}
@media(max-width:980px){.ccs-menu{flex-direction:column;align-items:stretch;gap:17px}.custom-logo-link img{max-width:210px}}
@media(max-width:782px){.admin-bar .site-header{top:46px}}
@media(max-width:600px){.admin-bar .site-header{top:0}}

/* Native blocks retain the approved layout. */
.wp-block-image{margin:0}.wp-block-group>*{min-width:0}.wp-block-group .wp-block-image img{display:block;width:100%;object-fit:cover}
.hero>.wp-block-image.hero-photo{position:absolute;inset:0;width:100%;height:100%;z-index:-3;margin:0}.hero>.wp-block-image.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 58%}
.wp-block-image.intro-image,.wp-block-image.feature-photo{height:auto}.wp-block-image.intro-image img{height:420px}.wp-block-image.feature-photo img{height:500px}
.wp-block-image figcaption{font-family:var(--body);color:inherit;font-size:.95rem}
.wp-block-gallery.gallery{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px!important;align-items:start;margin:32px 0 0}
.wp-block-gallery.gallery>.wp-block-image{width:100%!important;margin:0!important;display:block!important;flex:none!important}figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image) img{width:100%;height:330px!important;object-fit:cover}.wp-block-gallery.gallery .wp-block-image>a{display:block;flex:none}
figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image) figcaption{position:static!important;background:none!important;color:var(--ink)!important;max-height:none!important;padding:15px 0!important;text-align:left;font-weight:600;overflow:visible!important;backdrop-filter:none!important}
.home-fabrication-photos .wp-block-gallery.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.home-fabrication-photos .wp-block-gallery.gallery img{height:270px!important}
.client-grid>.wp-block-image{display:flex;align-items:center;justify-content:center;background:white;padding:12px 24px}.client-grid>.wp-block-image img{object-fit:contain;height:auto;max-height:180px}
.sector-bar p{font:600 .875rem var(--heading);text-transform:uppercase;letter-spacing:.14em;margin:0}.sector-bar p:not(.label):before{content:'';display:inline-block;width:4px;height:4px;background:var(--yellow);vertical-align:middle;margin-right:13px}
.stat-strip p{margin:0}.stat-strip p+p{font-size:.8125rem;color:#e5e9ef}.ccs-small{font-size:.875rem;color:var(--muted)}.contact-block>.ccs-small{letter-spacing:.12em;text-transform:uppercase;font-size:.8125rem;margin-bottom:6px}.contact-block p{margin:0}.contact-block p+p{margin-top:6px}
.actions .wp-block-buttons,.wp-block-buttons.ccs-button-row{margin:0;gap:14px}
.wp-block-button__link{display:inline-flex;align-items:center;justify-content:center;gap:25px;min-height:52px;padding:15px 24px;background:var(--yellow);color:var(--navy);font:700 1rem/1.3 var(--heading);text-transform:uppercase;letter-spacing:.1em;border:1px solid var(--yellow);border-radius:0;text-decoration:none}.wp-block-button__link:hover{background:#ffdb4d;color:var(--navy)}
.wp-block-button.btn-outline .wp-block-button__link{background:transparent;border-color:#8f9cad;color:white}.wp-block-button.btn-navy .wp-block-button__link{background:var(--navy);border-color:var(--navy);color:white}.wp-block-button.btn-navy,.wp-block-button.btn-outline{background:none;border:0}
.intro .ccs-button-row{margin-top:28px}.aside .ccs-button-row{margin-top:20px}.aside .wp-block-button,.aside .wp-block-button__link{width:100%}.aside .wp-block-button__link{padding:15px 24px!important;font-size:1rem!important;border-top:1px solid var(--yellow)!important}
.card .card-number{margin:0 0 12px}.card .text-link{margin-top:auto;margin-bottom:0;color:var(--ink)}.card .wp-block-image{flex-shrink:0}.card-body{flex:1}.ccs-link-line{margin:0!important}.wp-block-group .eyebrow{margin-top:0}
.hero p.eyebrow{margin:0 0 22px;font-size:.8125rem}.hero p.hero-caption{margin:0;max-width:none;font-size:.8125rem}.detail-copy .wp-block-image img{margin-top:0}.detail-copy .wp-block-image{margin-top:35px}
@media(max-width:880px){.wp-block-image.feature-photo img{height:380px}}
@media(max-width:600px){.wp-block-gallery.gallery,.home-fabrication-photos .wp-block-gallery.gallery{grid-template-columns:1fr}figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image) img{height:270px!important}.wp-block-image.intro-image img{height:300px}.wp-block-image.feature-photo img{height:330px}.hero>.wp-block-image.hero-photo img{object-position:58% center}.client-grid>.wp-block-image{padding:8px 14px}.hero p.hero-caption{font-size:.7rem}.hero p.eyebrow{font-size:.75rem}.sector-bar p.label{width:100%}}

/* Override core Gallery's stretched flex children while retaining editable Image blocks. */
figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image)>a{display:block!important;height:auto!important;flex:none!important}
figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image)>a>img,
figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image)>img{flex:none!important;min-height:0!important;height:330px!important;max-height:330px!important;object-fit:cover}
.home-fabrication-photos figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image) img{height:270px!important;max-height:270px!important}
@media(max-width:600px){figure.wp-block-gallery.gallery.project-gallery.has-nested-images figure.wp-block-image:not(#individual-image) img{height:270px!important;max-height:270px!important}}
