
:root{--navy:#031426;--navy2:#071d36;--blue:#1872d6;--blue2:#5aaaff;--ink:#091a2d;--muted:#607083}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);line-height:1.55}a{text-decoration:none;color:inherit}.shell{width:min(calc(100% - 64px),1440px);margin:auto}
.site-header{position:absolute;z-index:50;top:0;left:0;right:0;color:#fff;background:linear-gradient(#031426eb,transparent)}.header-inner{height:104px;display:flex;align-items:center;gap:26px}.brand img{width:135px;max-height:88px;object-fit:contain;display:block}.primary-nav{margin-left:auto}.primary-nav ul{display:flex;gap:25px;align-items:center;list-style:none;padding:0;margin:0}.primary-nav a{font-size:12px;letter-spacing:.09em;text-transform:uppercase;font-weight:700}.header-quote{background:#1974d7;color:#fff;padding:14px 20px;font-size:12px;font-weight:800;text-transform:uppercase}.menu-toggle{display:none}
.hero{position:relative;min-height:640px;padding-top:145px;color:#fff;overflow:hidden}.hero-bg{position:absolute;inset:0;background:url('../images/cleveland-hero.jpg') center/cover}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#031426f7 0%,#031426dc 32%,#03142655 61%,#03142610),linear-gradient(180deg,#03142620,#03142666)}.hero-content{position:relative;z-index:2;padding-top:34px}.eyebrow{font-size:13px;letter-spacing:.16em;font-weight:800;color:var(--blue2)}.hero h1{font-size:58px;line-height:1.04;letter-spacing:-.025em;margin:15px 0 18px;max-width:820px}.hero h1 span{color:#2f86e6}.hero p{font-size:17px;max-width:600px;color:#e2eaf3}.hero-actions{display:flex;gap:14px;margin-top:26px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 24px;text-transform:uppercase;font-size:12px;font-weight:800;border:1px solid transparent}.btn-primary{background:#1f78d7;color:white}.btn-outline{border-color:#fff;color:white;background:transparent}
.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-grid>div{display:grid;grid-template-columns:55px 1fr;gap:16px;padding:28px 30px;border-right:1px solid #d9e0e8}.trust-grid>div:last-child{border-right:0}.trust-grid b{display:block;font-size:13px;line-height:1.25}.trust-grid span{display:block;margin-top:7px;font-size:12px;color:#586779}
.solutions{padding:68px 0;background:#06182d;color:#fff}.section-head span{font-size:12px;color:#5aaaff;letter-spacing:.14em;font-weight:800}.section-head h2{font-size:32px;margin:4px 0 28px}.solution-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}.solution-card{border:1px solid #29425e;border-radius:10px;overflow:hidden;background:#071a31}.solution-card img{width:100%;height:205px;object-fit:cover}.solution-card>div{padding:18px}.solution-card h3{text-transform:uppercase;font-size:14px;margin:0 0 7px}.solution-card p{font-size:12px;color:#cdd8e4;min-height:52px}.solution-card b{font-size:11px;color:#57a9ff;text-transform:uppercase}
.completion{display:grid;grid-template-columns:1.1fr .9fr .75fr;min-height:390px;background:#f6f7f9}.completion-image{background:url('../images/console.jpg') center/cover}.completion-copy{padding:56px 45px}.completion-copy>span{font-size:12px;color:#176cc8;letter-spacing:.13em;font-weight:800}.completion-copy h2{font-size:35px;margin:8px 0 12px}.completion-copy p{color:#536273}.completion-points{padding:56px 45px;border-left:1px solid #dce3ea;display:flex;flex-direction:column;justify-content:center;gap:25px}.completion-points b{display:block;text-transform:uppercase;font-size:13px}.completion-points span{display:block;font-size:12px;color:#5b6978;margin-top:4px}
.cta-bar{background:#071b31;color:white;padding:26px 0}.cta-grid{display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:center}.cta-grid span{display:block;color:#5aaaff;font-size:12px}.cta-grid strong{display:block;font-size:28px}.cta-grid p{margin:2px 0 0;font-size:12px;color:#c8d3df}
.site-footer{background:#03111f;color:#9aabba;padding:44px 0 18px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:60px}.footer-logo{width:110px}.footer-grid p,.footer-grid a{font-size:12px}.footer-grid a{display:block;margin:6px 0}.footer-grid h4{color:white}.footer-bottom{border-top:1px solid #1b324a;margin-top:28px;padding-top:15px;font-size:11px}
.blog-hero{padding:170px 0 65px;background:linear-gradient(135deg,#041426,#103b69);color:white}.blog-hero span{font-size:12px;color:#5aaaff;letter-spacing:.12em}.blog-hero h1{font-size:42px;margin:7px 0 0}.blog-list{padding:60px 0}.post-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.post-card{border:1px solid #dce3ea;background:white}.post-card img{width:100%;height:220px;object-fit:cover}.post-copy{padding:22px}.post-copy>span{font-size:11px;color:#728091}.post-copy h2{font-size:22px;line-height:1.2}.post-copy p{font-size:14px;color:#5d6977}.read-more{font-size:12px;color:#176cc8;font-weight:800}
.post-card-image{display:block;height:220px;overflow:hidden;background:#071d36}.post-card-placeholder{display:block;width:100%;height:100%;background:linear-gradient(135deg,#0d4f8f,#041426)}.post-copy h2 a{color:inherit}.tag-post-list{background:#f6f8fa}.nav-links{display:flex;justify-content:center;gap:8px;margin-top:38px}.nav-links .page-numbers{display:flex;align-items:center;justify-content:center;min-width:40px;height:40px;padding:0 12px;border:1px solid #d4dde6;background:#fff;color:#0a3762;font-weight:700}.nav-links .current{background:#0a3762;border-color:#0a3762;color:#fff}
/* Keep the white header logo legible when the header fades toward a light page. */
.site-header .brand img{filter:drop-shadow(0 0 1px #000) drop-shadow(0 1px 1px rgba(0,0,0,.8))}
.article-wrap,.page-shell{padding:155px 0 70px}.article-shell{max-width:950px}.article-head span{font-size:12px;color:#738091}.article-head h1,.page-shell h1{font-size:44px;line-height:1.12}.article-image img{width:100%;height:auto}.article-content,.page-content{font-size:17px;line-height:1.75}
@media(max-width:1050px){.solution-grid{grid-template-columns:repeat(3,1fr)}.completion{grid-template-columns:1fr 1fr}.completion-points{grid-column:1/-1;border-left:0;border-top:1px solid #dce3ea}.post-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:780px){.shell{width:calc(100% - 32px)}.site-header{background:#031426f8}.header-inner{height:82px}.brand img{width:95px;max-height:70px}.menu-toggle{display:block;margin-left:auto;background:none;border:0;color:white;font-size:28px}.header-quote{display:none}.primary-nav{display:none;position:absolute;top:76px;left:14px;right:14px;background:#06182d;border:1px solid #23486e;padding:10px}.primary-nav.open{display:block}.primary-nav ul{flex-direction:column;align-items:stretch;gap:7px}.primary-nav a{display:block;padding:12px}.hero{min-height:650px;padding-top:82px}.hero-bg{background-position:62% center}.hero-overlay{background:linear-gradient(180deg,rgba(3,20,38,.15) 0%,rgba(3,20,38,.55) 34%,#031426 72%)}.hero-content{padding-top:280px}.hero h1{font-size:37px}.hero p{font-size:14px}.hero-actions{display:grid;grid-template-columns:1fr;gap:10px}.trust-grid{grid-template-columns:1fr 1fr}.trust-grid>div{border-bottom:1px solid #d9e0e8}.solution-grid{grid-template-columns:1fr}.solution-card{display:grid;grid-template-columns:105px 1fr}.solution-card img{height:100px}.solution-card p{min-height:0}.completion{grid-template-columns:1fr}.completion-image{min-height:240px}.completion-points{grid-column:auto}.cta-grid{grid-template-columns:1fr;gap:20px}.footer-grid{grid-template-columns:1fr}.post-grid{grid-template-columns:1fr}.blog-hero{padding-top:130px}.article-wrap,.page-shell{padding-top:120px}.article-head h1,.page-shell h1{font-size:34px}}


/* v1.1.0 visual fidelity fixes based on approved mockup */

/* larger, more prominent exact Cleveland Sound Design logo */
.brand img{
    width:180px;
    max-height:98px;
    object-fit:contain;
}

/* v1.7.2 — Event Rentals & Production */
.rentals-hero{position:relative;min-height:650px;display:flex;align-items:flex-end;padding:180px 0 88px;color:#fff;background-image:linear-gradient(90deg,rgba(2,13,25,.97) 0%,rgba(3,20,38,.85) 42%,rgba(3,20,38,.25) 76%,rgba(3,20,38,.10) 100%),linear-gradient(180deg,rgba(2,12,23,.45) 0%,rgba(2,12,23,.08) 55%,rgba(2,12,23,.60) 100%),url('../images/event-rentals.jpg');background-size:cover;background-position:center}
.rentals-hero-content{position:relative;z-index:1}.rentals-hero h1{max-width:880px;margin:12px 0 20px;font-size:58px;line-height:1.04;letter-spacing:-1.5px}.rentals-hero h1 span{color:#48a9ff}.rentals-hero p{max-width:720px;margin:0 0 30px;color:#dce8f2;font-size:19px;line-height:1.65}
.rentals-intro{padding:82px 0;background:#fff}.rentals-intro-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start}.rentals-intro h2,.rental-capabilities h2,.rental-support h2,.rental-request h2{margin:10px 0 0;color:#102f4f;font-size:40px;line-height:1.12}.rentals-intro p{margin:0 0 18px;color:#506274;font-size:17px;line-height:1.75}
.rental-events{padding:78px 0 82px;background:#f3f6f9}.rental-event-grid,.rental-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.rental-event-grid article,.rental-capability-grid article{padding:30px 28px;background:#fff;border:1px solid #d8e2eb;border-top:4px solid #1974d7;box-shadow:0 8px 24px rgba(8,34,61,.06)}.rental-event-grid h3,.rental-capability-grid h3{margin:0 0 11px;color:#102f4f;font-size:21px}.rental-event-grid p,.rental-capability-grid p{margin:0;color:#5b6c7d;font-size:15px;line-height:1.65}
.rental-capabilities{padding:84px 0;background:#071d36;color:#fff}.rental-capabilities-copy{max-width:870px;margin-bottom:38px}.rental-capabilities .eyebrow{color:#55adff}.rental-capabilities h2{color:#fff}.rental-capabilities-copy>p{color:#cad8e6;font-size:17px;line-height:1.75}.rental-capability-grid article{background:#102f4f;border-color:#274764;border-top-color:#48a9ff;box-shadow:none}.rental-capability-grid h3{color:#fff}.rental-capability-grid p{color:#cedae5}
.rental-support{padding:82px 0;background:#fff}.rental-support-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:75px;align-items:center}.rental-support p{color:#506274;font-size:17px;line-height:1.75}.rental-support ul{display:grid;gap:13px;margin:0;padding:30px;background:#f3f6f9;border-left:4px solid #1974d7;list-style:none}.rental-support li{position:relative;padding-left:29px;color:#2c4255;font-weight:700}.rental-support li:before{content:'✓';position:absolute;left:0;color:#1974d7;font-weight:900}
.rental-request{padding:82px 0;background:#eaf0f5}.rental-form-card{padding:34px;background:#fff;box-shadow:0 12px 34px rgba(8,34,61,.10)}.rental-form-card .csd-form{margin:0}
.rentals-home{display:grid;grid-template-columns:1fr 1fr;min-height:500px;background:#071d36;color:#fff}.rentals-home-image{background:url('../images/event-rentals.jpg') center/cover no-repeat}.rentals-home-copy{display:flex;flex-direction:column;justify-content:center;padding:70px clamp(34px,6vw,95px)}.rentals-home-copy>span{color:#55adff;font-size:13px;font-weight:800;letter-spacing:1.5px}.rentals-home-copy h2{margin:11px 0 18px;font-size:40px;line-height:1.12}.rentals-home-copy p{margin:0 0 27px;color:#c9d8e5;font-size:16px;line-height:1.72}.rentals-home-actions{display:flex;align-items:center;gap:24px;flex-wrap:wrap}.rentals-text-link{color:#fff;font-weight:800;text-decoration:none}.rentals-text-link:hover{color:#55adff}
@media(max-width:980px){.rentals-hero h1{font-size:48px}.rentals-intro-grid,.rental-support-grid{gap:42px}.rental-event-grid,.rental-capability-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:780px){.rentals-hero{min-height:570px;padding:145px 0 62px;background-position:42% center}.rentals-hero h1{font-size:39px;letter-spacing:-.7px}.rentals-hero p{font-size:16px}.rentals-intro,.rental-events,.rental-capabilities,.rental-support,.rental-request{padding:52px 0}.rentals-intro-grid,.rental-support-grid{grid-template-columns:1fr;gap:25px}.rentals-intro h2,.rental-capabilities h2,.rental-support h2,.rental-request h2{font-size:30px}.rental-event-grid,.rental-capability-grid{grid-template-columns:1fr;gap:14px}.rental-event-grid article,.rental-capability-grid article{padding:25px 22px}.rental-form-card{padding:23px}.rentals-home{grid-template-columns:1fr;min-height:0}.rentals-home-image{min-height:290px}.rentals-home-copy{padding:46px 24px 52px}.rentals-home-copy h2{font-size:30px}}
.footer-logo{width:135px;}

/* hero uses the approved mockup's Cleveland skyline/bridge artwork */
.hero-bg{
    background-image:url('../images/cleveland-hero.jpg');
    background-position:center right;
    background-size:cover;
}

/* approved-style trust-band SVG icons */
.trust-item{
    display:grid !important;
    grid-template-columns:66px 1fr !important;
    gap:18px !important;
    align-items:center;
    padding:28px 30px !important;
}
.trust-svg{
    width:54px;
    height:54px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.trust-svg svg{
    width:54px;
    height:54px;
    fill:none;
    stroke:#176ed0;
    stroke-width:2.7;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.trust-item b{
    display:block;
    font-size:13px;
    line-height:1.25;
}
.trust-item span{
    display:block;
    margin-top:7px;
    font-size:12px;
    line-height:1.45;
    color:#586779;
}

/* Every Environment: clean cards, no embedded text, more breathing room */
.solutions{
    padding:72px 0 78px;
}
.solution-grid{
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:20px;
    align-items:stretch;
}
.solution-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    border:1px solid #29425e;
    border-radius:11px;
    overflow:hidden;
    background:#071a31;
}
.solution-card img{
    width:100%;
    height:190px;
    object-fit:cover;
    display:block;
}
.solution-card>div{
    padding:20px 18px 22px;
    display:flex;
    flex-direction:column;
    flex:1;
}
.solution-card h3{
    text-transform:uppercase;
    font-size:14px;
    line-height:1.25;
    margin:0 0 9px;
    min-height:36px;
}
.solution-card p{
    font-size:12px;
    line-height:1.5;
    color:#cdd8e4;
    min-height:54px;
    margin:0 0 14px;
}
.solution-card b{
    margin-top:auto;
    font-size:11px;
    color:#57a9ff;
    text-transform:uppercase;
}

/* tighter tablet breakpoint prevents the five-card row from becoming squished */
@media(max-width:1200px){
    .solution-grid{grid-template-columns:repeat(3,1fr);}
}
@media(max-width:780px){
    .brand img{width:118px;max-height:72px;}
    .trust-grid{grid-template-columns:1fr 1fr;}
    .trust-item{grid-template-columns:52px 1fr !important;padding:20px 14px !important;}
    .trust-svg,.trust-svg svg{width:44px;height:44px;}
    .solution-grid{grid-template-columns:1fr;}
    .solution-card{display:grid;grid-template-columns:118px 1fr;}
    .solution-card img{width:118px;height:118px;}
    .solution-card>div{padding:14px 16px;}
    .solution-card h3{min-height:0;font-size:13px;}
    .solution-card p{min-height:0;font-size:11px;margin-bottom:6px;}
}

/* v1.4.6 — complete solution icons and page-specific service heroes */
.solution-card .solution-photo{
    position:relative;
    height:155px;
    padding:0 !important;
    flex:none;
    overflow:visible;
}
.solution-card .solution-photo img{
    width:100% !important;
    height:155px !important;
    object-fit:cover !important;
    object-position:center 22% !important;
    display:block;
}
.solution-card .solution-icon{
    position:absolute;
    z-index:3;
    left:50%;
    bottom:-31px;
    transform:translateX(-50%);
    width:68px;
    height:68px;
    border-radius:50%;
    background:#176ed0;
    border:4px solid #071a31;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 5px 14px rgba(0,0,0,.24);
}
.solution-card .solution-icon svg{
    width:40px;
    height:40px;
    fill:none;
    stroke:currentColor;
    stroke-width:3;
    stroke-linecap:round;
    stroke-linejoin:round;
}
.solution-card .solution-copy{
    padding:48px 16px 19px !important;
    display:flex;
    flex-direction:column;
    flex:1;
}
.service-hero{
    position:relative;
    isolation:isolate;
    min-height:440px;
    display:flex;
    align-items:flex-end;
    padding:170px 0 78px;
    background-image:
        linear-gradient(90deg,rgba(3,20,38,.98) 0%,rgba(3,20,38,.82) 38%,rgba(3,20,38,.30) 72%,rgba(3,20,38,.12) 100%),
        linear-gradient(180deg,rgba(3,20,38,.68) 0%,rgba(3,20,38,.05) 55%,rgba(3,20,38,.55) 100%),
        var(--service-hero-image);
    background-position:center;
    background-size:cover;
}
.service-hero .shell{position:relative;z-index:2}

@media(max-width:780px){
    .solution-card .solution-photo{
        height:120px !important;
        width:120px;
    }
    .solution-card .solution-photo img{
        width:120px !important;
        height:120px !important;
        object-position:center 18% !important;
    }
    .solution-card .solution-icon{
        left:auto;
        right:-27px;
        bottom:50%;
        transform:translateY(50%);
        width:58px;
        height:58px;
        border-width:3px;
    }
    .solution-card .solution-icon svg{width:34px;height:34px}
    .solution-card .solution-copy{padding:14px 14px 14px 42px !important}
    .service-hero{
        min-height:430px;
        padding:150px 0 58px;
        background-position:center;
        background-image:
            linear-gradient(180deg,rgba(3,20,38,.88) 0%,rgba(3,20,38,.30) 42%,rgba(3,20,38,.86) 100%),
            var(--service-hero-image);
    }
}


/* v1.2.0 fidelity fixes */

/* Make the real CSD logo substantially more prominent. */
.site-header .brand{
    flex:0 0 auto;
}
.site-header .brand img{
    width:245px !important;
    max-width:245px !important;
    max-height:122px !important;
    height:auto !important;
}
.header-inner{
    min-height:132px !important;
    height:132px !important;
    align-items:center !important;
}

/* Trust band now uses artwork pulled directly from the approved mockup. */
.trust-grid{
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
}
.trust-item{
    display:grid !important;
    grid-template-columns:78px 1fr !important;
    gap:18px !important;
    align-items:center !important;
    padding:25px 28px !important;
}
.trust-art{
    width:68px;
    height:68px;
    display:flex;
    align-items:center;
    justify-content:center;
}
.trust-art img{
    display:block;
    width:68px;
    height:68px;
    object-fit:contain;
}
.trust-item b{
    font-size:13px !important;
    line-height:1.22 !important;
}
.trust-item span{
    font-size:12px !important;
    line-height:1.4 !important;
}

/* Keep the Every Environment cards at the same scale as the approved mockup.
   This prevents low-resolution source artwork from being stretched across huge cards. */
.solutions{
    padding:66px 0 76px !important;
}
.solution-grid{
    grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    gap:16px !important;
}
.solution-card{
    min-width:0 !important;
    border-radius:10px !important;
}
.solution-card img{
    height:155px !important;
    width:100% !important;
    object-fit:cover !important;
}
.solution-card>div{
    padding:17px 16px 19px !important;
}
.solution-card h3{
    font-size:13px !important;
    line-height:1.2 !important;
    min-height:32px !important;
    margin-bottom:7px !important;
}
.solution-card p{
    font-size:11px !important;
    line-height:1.45 !important;
    min-height:48px !important;
    margin-bottom:12px !important;
}
.solution-card b{
    font-size:10px !important;
}

/* Do not collapse into oversized three-column cards until a much narrower viewport. */
@media(max-width:980px){
    .solution-grid{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    }
    .solution-card img{
        height:180px !important;
    }
}
@media(max-width:780px){
    .site-header .brand img{
        width:150px !important;
        max-width:150px !important;
        max-height:78px !important;
    }
    .header-inner{
        min-height:88px !important;
        height:88px !important;
    }
    .trust-grid{
        grid-template-columns:1fr 1fr !important;
    }
    .trust-item{
        grid-template-columns:56px 1fr !important;
        padding:18px 12px !important;
    }
    .trust-art,.trust-art img{
        width:50px !important;
        height:50px !important;
    }
    .solution-grid{
        grid-template-columns:1fr !important;
    }
    .solution-card{
        display:grid !important;
        grid-template-columns:120px 1fr !important;
    }
    .solution-card img{
        width:120px !important;
        height:120px !important;
    }
    .solution-card h3,.solution-card p{
        min-height:0 !important;
    }
}

/* v1.3.0 — approved logo positioning */
.site-header{overflow:visible !important;}
.site-header .header-inner{overflow:visible !important;position:relative !important;}
.site-header .brand{
    position:relative !important;
    width:200px !important;
    height:100px !important;
    flex:0 0 200px !important;
    overflow:visible !important;
    z-index:10 !important;
}
.site-header .brand img{
    position:absolute !important;
    width:250px !important;
    max-width:none !important;
    max-height:none !important;
    height:auto !important;
    left:0 !important;
    top:50% !important;
    transform:translateY(-38%) !important;
}
.solution-card img{image-rendering:auto;filter:none !important;}
.completion-image{
    background-image:url('../images/console.jpg') !important;
    background-size:cover !important;
    background-position:center !important;
}
@media(max-width:780px){
    .site-header .brand{
        width:130px !important;
        height:72px !important;
        flex:0 0 130px !important;
    }
    .site-header .brand img{
        width:150px !important;
        transform:translateY(-36%) !important;
    }
}


/* v1.3.1 — final approved desktop logo size */
.site-header .brand img{
    width:200px !important;
}

/* Concept-to-Completion feature icons */
.completion-points{
    gap:26px !important;
}
.completion-point{
    display:grid;
    grid-template-columns:52px minmax(0,1fr);
    gap:16px;
    align-items:start;
}
.completion-icon{
    width:48px;
    height:48px;
    color:#176cc8;
    display:flex;
    align-items:center;
    justify-content:center;
}
.completion-icon svg{
    width:48px;
    height:48px;
    display:block;
}
.completion-point b{
    margin-top:2px;
}
@media(max-width:780px){
    .site-header .brand img{
        width:150px !important;
    }
    .completion-point{
        grid-template-columns:46px minmax(0,1fr);
        gap:14px;
    }
    .completion-icon,
    .completion-icon svg{
        width:42px;
        height:42px;
    }
}

/* v1.3.3 — mobile hero framing and header scale */
@media(max-width:780px){
    .site-header .brand{
        width:110px !important;
        height:68px !important;
        flex:0 0 110px !important;
    }
    .site-header .brand img{
        width:120px !important;
        transform:translateY(-36%) !important;
    }
    .hero-bg{
        background-position:30% center !important;
    }
}

/* v1.4.0 — dedicated mobile artwork and smaller mobile brand */
@media(max-width:780px){
    .site-header .brand{width:92px !important;height:64px !important;flex:0 0 92px !important}
    .site-header .brand img{width:100px !important;transform:translateY(-34%) !important}
    .hero-bg{background-image:url('../images/cleveland-hero-mobile.png') !important;background-position:center top !important;background-size:cover !important}
}

/* Connected interior pages */
.inner-hero{padding:170px 0 82px;background:linear-gradient(100deg,#031426f5,#071d36d9),url('../images/cleveland-hero.jpg') center 46%/cover;color:#fff}
.inner-hero h1{font-size:52px;line-height:1.05;margin:10px 0 0;max-width:850px}.inner-hero p{font-size:17px;max-width:680px;color:#dce7f2;margin:18px 0 0}
.interior-section{padding:72px 0}.interior-section.alt{background:#f3f6f9}.interior-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:start}.interior-copy h2{font-size:36px;line-height:1.15;margin:0 0 18px}.interior-copy h3{font-size:21px;margin:28px 0 8px}.interior-copy p,.interior-copy li{color:#526274}.interior-copy ul{padding-left:20px}.interior-card{background:#071d36;color:#fff;padding:34px;border-left:5px solid #2582e6}.interior-card h3{font-size:23px;margin:0 0 12px}.interior-card p{color:#cad8e6}
.service-feature{display:grid;grid-template-columns:1fr 1fr;min-height:430px}.service-feature-image{background-position:center;background-size:cover}.service-feature-copy{padding:70px;background:#f3f6f9}.service-feature-copy h2{font-size:36px;line-height:1.15;margin:8px 0 18px}.service-list{display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;padding:0;list-style:none}.service-list li{position:relative;padding-left:22px;color:#46586a}.service-list li:before{content:'✓';position:absolute;left:0;color:#1872d6;font-weight:900}
.contact-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:60px}.contact-panel{background:#071d36;color:#fff;padding:38px}.contact-panel h2{margin-top:0}.contact-panel a{display:block;margin:14px 0;color:#d9e8f7}.contact-panel strong{display:block;color:#5aaaff;font-size:12px;letter-spacing:.12em;text-transform:uppercase}.csd-form{display:grid;grid-template-columns:1fr 1fr;gap:18px}.csd-form .field-full{grid-column:1/-1}.csd-form label{display:block;font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px}.csd-form input,.csd-form select,.csd-form textarea{width:100%;border:1px solid #cbd5df;background:#fff;padding:13px 14px;font:inherit;color:#14283d}.csd-form textarea{min-height:150px;resize:vertical}.csd-form .honeypot{position:absolute;left:-9999px}.form-status{padding:14px 16px;margin-bottom:20px;background:#e8f5ec;color:#17612e}.form-status.error{background:#fff0f0;color:#8b2020}
.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.work-card{min-height:250px;padding:30px;display:flex;flex-direction:column;justify-content:flex-end;color:#fff;background:linear-gradient(180deg,transparent,#031426f2),var(--work-image) center/cover}.work-card span{color:#6ab3ff;font-size:11px;font-weight:800;letter-spacing:.12em}.work-card h3{font-size:23px;line-height:1.15;margin:7px 0 0}
@media(max-width:780px){.inner-hero{padding:125px 0 55px;background-position:33% center}.inner-hero h1{font-size:36px}.inner-hero p{font-size:15px}.interior-section{padding:48px 0}.interior-grid,.contact-layout,.service-feature{grid-template-columns:1fr;gap:28px}.service-feature-image{min-height:260px}.service-feature-copy{padding:42px 22px}.interior-copy h2,.service-feature-copy h2{font-size:29px}.service-list{grid-template-columns:1fr}.csd-form{grid-template-columns:1fr}.csd-form .field-full{grid-column:auto}.work-grid{grid-template-columns:1fr}}

/* v1.4.1 — brighter mobile skyline, seamless dark header fade, tighter hero spacing */
@media(max-width:780px){
    .site-header .brand{
        width:110px !important;
        height:68px !important;
        flex:0 0 110px !important;
    }
    .site-header .brand img{
        width:120px !important;
        transform:translateY(-35%) !important;
    }
    .hero-bg{
        inset:-2px !important;
        filter:brightness(1.18) saturate(1.06);
    }
    .hero-overlay{
        background:
            linear-gradient(180deg,
                #031426 0%,
                rgba(3,20,38,.94) 5%,
                rgba(3,20,38,.64) 13%,
                rgba(3,20,38,.18) 24%,
                rgba(3,20,38,.10) 42%,
                rgba(3,20,38,.54) 70%,
                #031426 100%),
            linear-gradient(90deg,
                rgba(3,20,38,.42) 0%,
                rgba(3,20,38,.18) 64%,
                rgba(3,20,38,.06) 100%);
    }
    .hero-content{
        padding-top:195px;
    }
}

/* v1.4.2 — remove the mobile header seam and feather the hero into black */
@media(max-width:780px){
    .site-header{
        background:transparent !important;
    }
    .hero-overlay{
        background:
            linear-gradient(180deg,
                #02070c 0%,
                rgba(2,7,12,.98) 7%,
                rgba(2,9,16,.90) 15%,
                rgba(3,14,25,.72) 23%,
                rgba(3,20,38,.44) 32%,
                rgba(3,20,38,.17) 43%,
                rgba(3,20,38,.10) 53%,
                rgba(3,20,38,.54) 72%,
                #031426 100%),
            linear-gradient(90deg,
                rgba(3,20,38,.42) 0%,
                rgba(3,20,38,.18) 64%,
                rgba(3,20,38,.06) 100%);
    }
}

/* Keep service-specific hero artwork after the shared interior-page rules. */
.inner-hero.service-hero{
    position:relative;
    isolation:isolate;
    min-height:440px;
    display:flex;
    align-items:flex-end;
    padding:170px 0 78px;
    background-image:
        linear-gradient(90deg,rgba(3,20,38,.98) 0%,rgba(3,20,38,.82) 38%,rgba(3,20,38,.30) 72%,rgba(3,20,38,.12) 100%),
        linear-gradient(180deg,rgba(3,20,38,.68) 0%,rgba(3,20,38,.05) 55%,rgba(3,20,38,.55) 100%),
        var(--service-hero-image);
    background-position:center;
    background-size:cover;
}
@media(max-width:780px){
    .inner-hero.service-hero{
        min-height:430px;
        padding:150px 0 58px;
        background-position:center;
        background-image:
            linear-gradient(180deg,rgba(3,20,38,.88) 0%,rgba(3,20,38,.30) 42%,rgba(3,20,38,.86) 100%),
            var(--service-hero-image);
    }
}

/* v1.4.7 — remove low-resolution repeated card artwork from service pages. */
.service-feature.service-feature-text{
    display:block;
    min-height:0;
    padding:74px 0 78px;
    background:#f3f6f9;
}
.service-feature-text .service-feature-copy{
    padding:0 !important;
    background:transparent;
}
.service-feature-text .service-feature-intro{
    max-width:900px;
}
.service-feature-text .service-feature-intro h2{
    max-width:760px;
}
.service-feature-text .service-list{
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:15px 34px;
    margin:34px 0 0;
    padding-top:30px;
    border-top:1px solid #d3dde7;
}
@media(max-width:980px){
    .service-feature-text .service-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
    .service-feature.service-feature-text{padding:48px 0 52px}
    .service-feature-text .service-list{grid-template-columns:1fr;gap:12px;margin-top:26px;padding-top:24px}
}

/* v1.4.8 — clean mobile trust-grid dividers. */
@media(max-width:780px){
    .trust-strip{
        padding-top:20px;
        background:#fff;
    }
    .trust-grid > .trust-item{
        border-right:0 !important;
        border-bottom:0 !important;
    }
    .trust-grid > .trust-item:nth-child(odd){
        border-right:1px solid #d9e0e8 !important;
    }
    .trust-grid > .trust-item:nth-child(-n+2){
        border-bottom:1px solid #d9e0e8 !important;
    }
}

/* v1.4.9 — leave a deliberate dark gap below the mobile quote button. */
@media(max-width:780px){
    .hero{
        padding-bottom:52px;
    }
}

/* v1.6.0 — Brands page */
.brands-intro{
    max-width:880px;
    margin:0 auto 44px;
    text-align:center;
}
.brands-intro h2{
    margin:0 0 16px;
    font-size:38px;
    line-height:1.15;
    color:#102f4f;
}
.brands-intro p{
    margin:0;
    color:#526274;
    font-size:17px;
    line-height:1.75;
}
.brands-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}
.brand-card{
    position:relative;
    padding:29px 28px 27px;
    min-height:285px;
    background:#fff;
    border:1px solid #d9e2eb;
    border-top:4px solid #1974d7;
    box-shadow:0 8px 24px rgba(8,34,61,.07);
}
.brand-logo-wrap{
    height:104px;
    margin:0 0 24px;
    padding:10px 12px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#fff;
    border-bottom:1px solid #e3e9ef;
}
.brand-logo{
    display:block;
    width:auto;
    height:auto;
    max-width:210px;
    max-height:82px;
    object-fit:contain;
}
.brand-card h3{
    margin:0 0 10px;
    color:#102f4f;
    font-size:21px;
    line-height:1.15;
}
.brand-card p{
    margin:0;
    color:#5b6c7d;
    font-size:14px;
    line-height:1.6;
}
.brands-note{
    margin:34px auto 0;
    max-width:760px;
    text-align:center;
    color:#657587;
    font-size:14px;
}
.brands-cta{
    padding:64px 0;
    background:#071d36;
    color:#fff;
    text-align:center;
}
.brands-cta h2{margin:0 0 12px;font-size:34px}
.brands-cta p{max-width:680px;margin:0 auto 24px;color:#cad8e6}
@media(max-width:980px){
    .brands-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:780px){
    .brands-intro{margin-bottom:30px;text-align:left}
    .brands-intro h2{font-size:29px}
    .brands-intro p{font-size:15px}
    .brands-grid{grid-template-columns:1fr;gap:14px}
    .brand-card{min-height:0;padding:24px 22px}
    .brand-logo-wrap{height:94px;margin-bottom:20px}
    .brand-logo{max-width:190px;max-height:74px}
    .brands-cta{padding:48px 0}
    .brands-cta h2{font-size:28px}
}

/* v1.7.3 — alternate the homepage Rentals section and reduce the image width. */
.rentals-home{grid-template-columns:1.1fr .9fr}
.rentals-home-copy{order:1}
.rentals-home-image{order:2}
@media(max-width:780px){.rentals-home{grid-template-columns:1fr}}
