/* Shared public website spacing */
:root{
    --ic-content:1440px;
    --ic-side:clamp(20px,4vw,64px);
    --ic-edge:max(var(--ic-side),calc((100% - var(--ic-content))/2));
    --ic-section:clamp(56px,6vw,96px);
    --ic-gap:clamp(16px,2vw,24px);
    --ic-card:clamp(20px,2vw,24px);
}
body.ic-home,body.ic-standard,body.ic-gallery,body.ic-equipment{
    margin:0;
}
body.ic-home{
    --gutter:var(--ic-edge);
}
body.ic-home main > :is(#services,#equipment,#work,#training,#quote){
    box-sizing:border-box!important;
    padding-block:var(--ic-section)!important;
    padding-inline:var(--ic-edge)!important;
    scroll-margin-top:110px;
}
body.ic-home :is(.section-heading,.equipment-head,.work-gallery-head,.quote-top){
    margin-bottom:clamp(28px,4vw,48px)!important;
}
body.ic-home #work > :is(.work-gallery-head,.work-gallery,.work-gallery-footer){
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
    padding-inline:0!important;
}
body.ic-home #work .work-gallery.iconic-project-preview{
    margin-top:0!important;
    margin-bottom:0!important;
}
body.ic-home #work .work-gallery-footer{
    margin-top:32px!important;
    padding-top:24px!important;
}
body.ic-home .iconic-footer-final{
    box-sizing:border-box!important;
    padding-inline:var(--ic-edge)!important;
    padding-block:clamp(40px,5vw,72px) 24px!important;
}
body.ic-home .iconic-footer-final .iff-wrap{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
    padding-inline:0!important;
}

/* Pages rendered through index.php or the shared header */
body.ic-standard .section{
    box-sizing:border-box!important;
    padding:var(--ic-section) var(--ic-edge)!important;
}
body.ic-standard .section .wrap{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:var(--ic-content)!important;
    margin-inline:auto!important;
}
body.ic-standard .hero .inner{
    box-sizing:border-box!important;
    width:calc(100% - var(--ic-side) - var(--ic-side))!important;
    max-width:var(--ic-content)!important;
    margin-inline:auto!important;
}
body.ic-standard :is(.cards,.features,.split){
    gap:var(--ic-gap)!important;
}
body.ic-standard .card .pad{
    padding:var(--ic-card)!important;
}
body.ic-standard .footer{
    box-sizing:border-box!important;
    padding:56px var(--ic-edge) 24px!important;
}
body.ic-standard .footergrid{
    width:100%!important;
    max-width:var(--ic-content)!important;
    margin-inline:auto!important;
    gap:32px!important;
}

/* Full gallery and equipment catalogue */
body.ic-gallery > :is(header,main,footer),
body.ic-equipment > :is(header,main,footer){
    box-sizing:border-box!important;
    width:calc(100% - var(--ic-side) - var(--ic-side))!important;
    max-width:var(--ic-content)!important;
    margin-inline:auto!important;
    padding-inline:0!important;
}
body.ic-gallery main > .hero,
body.ic-equipment main > .catalogue-hero{
    box-sizing:border-box!important;
    padding-block:clamp(64px,7vw,100px) 40px!important;
    padding-inline:0!important;
}
body.ic-gallery main > .portfolio-catalogue,
body.ic-equipment main > .catalogue-grid{
    box-sizing:border-box!important;
    width:100%!important;
    max-width:none!important;
    margin-inline:0!important;
    padding:24px 0 var(--ic-section)!important;
    gap:var(--ic-gap)!important;
}
body.ic-gallery .portfolio-card-bottom{
    padding:var(--ic-card)!important;
    gap:16px!important;
}
body.ic-gallery .iconic-event-videos{
    gap:var(--ic-gap)!important;
}
body.ic-gallery > footer,
body.ic-equipment > footer{
    padding-block:28px!important;
    gap:20px!important;
    flex-wrap:wrap;
}
@media(max-width:640px){
    body.ic-home :is(.section-heading,.equipment-head,.work-gallery-head){
        gap:20px!important;
    }
    body.ic-home #work .work-gallery-footer{
        display:flex!important;
        flex-wrap:wrap;
        gap:20px!important;
    }
    body.ic-standard .footer{
        padding-top:40px!important;
    }
}