.company-page{
    --green:#00a85a;
    --green-dark:#087641;
    --green-soft:#eaf7f0;
    --paper:#f7faf8;
    --cream:#f5f2eb;
    --ink:#17324a;
    --text:#52685c;
    --line:#dfe8e3;
    background:#fff;
    color:var(--ink)
}

.company-page .home-container{
    max-width:1240px
}

.company-hero{
    position:relative;
    overflow:hidden;
    background:
        linear-gradient(180deg,#f7faf8 0%,#fff 100%);
    color:var(--ink)
}

.company-grid-overlay{
    position:absolute;
    inset:0;
    opacity:.55;
    background-image:
        linear-gradient(rgba(0,168,90,.045) 1px,transparent 1px),
        linear-gradient(90deg,rgba(0,168,90,.045) 1px,transparent 1px);
    background-size:52px 52px;
    mask-image:linear-gradient(to bottom,#000 0%,transparent 82%)
}

.company-hero-inner{
    position:relative;
    z-index:1;
    padding-top:2rem;
    padding-bottom:3.5rem
}

.company-breadcrumb{
    display:flex;
    align-items:center;
    gap:.5rem;
    color:#7b8e83;
    font-size:.86rem
}

.company-breadcrumb a{
    color:#3e5c4d;
    text-decoration:none;
    font-weight:800
}

.company-hero-layout{
    display:grid;
    grid-template-columns:minmax(0,1.1fr) minmax(390px,.9fr);
    gap:4.5rem;
    align-items:center;
    min-height:620px;
    padding:3rem 0 2.5rem
}

.company-overline,
.company-section-head>span,
.company-assets-copy>span,
.company-readiness-side>span,
.company-labeling-copy>span,
.company-cases-head>span,
.company-admin-layout span,
.company-tools-head>span,
.company-final-copy>span,
.company-faq-head>span{
    display:block;
    color:var(--green);
    font-size:.76rem;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.14em
}

.company-hero-copy h1{
    max-width:790px;
    margin:.75rem 0 1.2rem;
    font-size:clamp(3.4rem,6.1vw,6.7rem);
    line-height:.9;
    font-weight:950;
    letter-spacing:-.065em;
    color:#132b22
}

.company-hero-copy>p{
    max-width:700px;
    margin:0;
    color:#61756b;
    font-size:1.13rem;
    line-height:1.72
}

.company-hero-actions{
    display:flex;
    align-items:center;
    gap:1.1rem;
    margin-top:2rem
}

.company-hero-text-link{
    display:inline-flex;
    align-items:center;
    gap:.45rem;
    color:#335a45;
    text-decoration:none;
    font-weight:850
}

.company-hero-visual{
    position:relative;
    height:490px;
    overflow:hidden;
    border-radius:1.35rem;
    box-shadow:0 28px 70px rgba(18,55,37,.13)
}

.company-hero-visual:after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(180deg,transparent 56%,rgba(12,40,26,.62))
}

.company-hero-visual img{
    width:100%;
    height:100%;
    object-fit:cover
}

.company-visual-index{
    position:absolute;
    z-index:2;
    left:1.1rem;
    right:1.1rem;
    bottom:1rem;
    display:flex;
    align-items:end;
    justify-content:space-between;
    border-top:1px solid rgba(255,255,255,.55);
    padding-top:.8rem;
    color:#fff
}

.company-visual-index span{
    font-size:.75rem;
    color:#88edb3
}

.company-visual-index strong{
    font-size:1.05rem
}

.company-quick-quote{
    display:grid;
    grid-template-columns:1.1fr .75fr 1fr 1fr 1fr auto;
    gap:.8rem;
    align-items:end;
    padding:1.1rem;
    border:1px solid #dfe8e3;
    border-radius:1.1rem;
    background:#fff;
    box-shadow:0 22px 54px rgba(24,55,39,.09)
}

.company-quote-title{
    align-self:center
}

.company-quote-title span,
.company-quote-title strong{
    display:block
}

.company-quote-title span{
    color:var(--green);
    font-size:.69rem;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.1em
}

.company-quote-title strong{
    margin-top:.2rem;
    color:#17324a;
    line-height:1.2
}

.company-field label{
    display:block;
    margin-bottom:.34rem;
    color:#74877c;
    font-size:.71rem;
    font-weight:850
}

.company-field .form-control{
    min-height:46px;
    border-color:#d9e5de;
    background:#fff;
    color:#17324a
}

.company-field .form-control::placeholder{
    color:#9aaba1
}

.company-number{
    display:grid;
    grid-template-columns:2.4rem 1fr 2.4rem;
    height:46px;
    overflow:hidden;
    border:1px solid #d9e5de;
    border-radius:.375rem;
    background:#fff
}

.company-number button{
    border:0;
    background:#eef7f2;
    color:var(--green-dark);
    font-weight:950
}

.company-number input{
    min-width:0;
    border:0;
    outline:0;
    background:#fff;
    color:#17324a;
    text-align:center;
    font-weight:900
}

.company-quote-submit{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:.55rem;
    min-height:46px;
    padding:0 1rem;
    border:0;
    border-radius:.6rem;
    background:var(--green);
    color:#fff;
    font-weight:950
}

.company-statement{
    padding:8rem 0;
    background:#fff
}

.company-statement-layout{
    display:grid;
    grid-template-columns:1fr 4fr;
    gap:3rem
}

.company-statement-number{
    font-size:clamp(4rem,9vw,10rem);
    line-height:.8;
    font-weight:950;
    color:#e4eee8
}

.company-statement-copy{
    max-width:900px
}

.company-statement-copy>span{
    color:var(--green-dark);
    font-size:.76rem;
    font-weight:950;
    text-transform:uppercase;
    letter-spacing:.12em
}

.company-statement-copy h2{
    margin:.7rem 0 1rem;
    font-size:clamp(2.8rem,5vw,5.4rem);
    line-height:.94;
    font-weight:950;
    letter-spacing:-.06em;
    color:#142b22
}

.company-statement-copy p{
    max-width:740px;
    margin:0;
    color:#687b70;
    font-size:1.08rem;
    line-height:1.72
}

.company-office-scene{
    padding:0 0 8rem;
    background:#fff
}

.company-office-frame{
    position:relative;
    height:640px;
    overflow:hidden;
    border-radius:1.35rem;
    box-shadow:0 24px 60px rgba(25,57,41,.1)
}

.company-office-frame img{
    width:100%;
    height:100%;
    object-fit:cover
}

.company-office-caption{
    position:absolute;
    left:1.3rem;
    bottom:1.3rem;
    max-width:500px;
    padding:1rem 1.1rem;
    border-radius:.9rem;
    background:rgba(255,255,255,.92);
    color:#17324a;
    box-shadow:0 12px 32px rgba(0,0,0,.12);
    backdrop-filter:blur(10px)
}

.company-office-caption span,
.company-office-caption strong{
    display:block
}

.company-office-caption span{
    color:var(--green);
    font-size:.7rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.1em
}

.company-office-caption strong{
    margin-top:.25rem;
    line-height:1.45
}

.company-method{
    padding:8rem 0;
    background:#f7faf8
}

.company-section-head{
    max-width:880px
}

.company-section-head h2,
.company-assets-copy h2,
.company-readiness-side h2,
.company-labeling-copy h2,
.company-cases-head h2,
.company-admin-layout h2,
.company-tools-head h2,
.company-final-copy h2,
.company-faq-head h2{
    margin:.65rem 0 0;
    font-size:clamp(2.6rem,4.5vw,4.9rem);
    line-height:.97;
    font-weight:950;
    letter-spacing:-.055em;
    color:#142b22
}

.company-section-head p{
    max-width:700px;
    margin:1rem 0 0;
    color:#6f8177;
    line-height:1.7
}

.company-method-track{
    margin-top:3.5rem;
    border-top:1px solid #d3dfd8
}

.company-method-row{
    display:grid;
    grid-template-columns:4rem 4rem 1fr;
    gap:1.2rem;
    align-items:center;
    padding:1.45rem .4rem;
    border-bottom:1px solid #d3dfd8
}

.company-method-index{
    color:#93a39a;
    font-size:.75rem;
    font-weight:950
}

.company-method-icon{
    display:grid;
    place-items:center;
    width:3.6rem;
    height:3.6rem;
    border-radius:50%;
    background:#e7f5ed;
    color:var(--green-dark);
    font-size:1.25rem
}

.company-method-row h3{
    margin:0;
    color:#17324a;
    font-size:1.35rem;
    font-weight:950
}

.company-method-row p{
    margin:.28rem 0 0;
    color:#6d7f75;
    line-height:1.62
}

.company-assets{
    padding:8rem 0;
    background:#fff
}

.company-assets-layout{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:6rem
}

.company-assets-copy{
    position:sticky;
    top:120px;
    align-self:start
}

.company-assets-copy p{
    max-width:520px;
    margin:1rem 0 0;
    color:#718278;
    line-height:1.72
}

.company-assets-list{
    border-top:1px solid #d7e2dc
}

.company-asset-line{
    display:grid;
    grid-template-columns:3rem 3.2rem 1fr;
    gap:.9rem;
    align-items:center;
    padding:1.4rem 0;
    border-bottom:1px solid #d7e2dc
}

.company-asset-line>span{
    color:#9aaba1;
    font-size:.73rem;
    font-weight:900
}

.company-asset-line>i{
    display:grid;
    place-items:center;
    width:3.2rem;
    height:3.2rem;
    border-radius:.9rem;
    background:#edf7f1;
    color:var(--green-dark);
    font-size:1.25rem
}

.company-asset-line strong,
.company-asset-line small{
    display:block
}

.company-asset-line strong{
    color:#17324a;
    font-size:1.05rem
}

.company-asset-line small{
    margin-top:.18rem;
    color:#77887f;
    line-height:1.5
}

.company-readiness{
    padding:8rem 0;
    background:#f0f7f3;
    color:#17324a
}

.company-readiness-layout{
    display:grid;
    grid-template-columns:.8fr 1.2fr;
    gap:5rem
}

.company-readiness-side{
    align-self:start;
    position:sticky;
    top:120px
}

.company-readiness-side p{
    max-width:500px;
    margin:1rem 0 0;
    color:#708279;
    line-height:1.7
}

.company-score{
    display:flex;
    align-items:end;
    gap:.7rem;
    margin-top:2.2rem
}

.company-score strong{
    font-size:4.4rem;
    line-height:.8;
    color:var(--green)
}

.company-score span{
    padding-bottom:.25rem;
    color:#72847a
}

.company-score-track{
    height:7px;
    margin-top:1rem;
    overflow:hidden;
    border-radius:999px;
    background:#dbe9e1
}

.company-score-track span{
    display:block;
    width:0;
    height:100%;
    background:var(--green);
    transition:width .3s ease
}

.company-checklist{
    display:grid;
    gap:.65rem
}

.company-checklist label{
    position:relative;
    cursor:pointer
}

.company-checklist input{
    position:absolute;
    opacity:0
}

.company-checklist label>span{
    display:grid;
    grid-template-columns:3.2rem 1fr;
    column-gap:.8rem;
    padding:1rem;
    border:1px solid #d8e5de;
    border-radius:.85rem;
    background:#fff;
    box-shadow:0 8px 22px rgba(18,55,37,.035);
    transition:.18s ease
}

.company-checklist label>span>i{
    grid-row:1/3;
    display:grid;
    place-items:center;
    width:3rem;
    height:3rem;
    border-radius:.75rem;
    background:#edf7f1;
    color:var(--green-dark)
}

.company-checklist b,
.company-checklist small{
    display:block
}

.company-checklist b{
    padding-top:.1rem;
    color:#17324a
}

.company-checklist small{
    margin-top:.18rem;
    color:#7b8b83;
    line-height:1.5
}

.company-checklist input:checked+span{
    border-color:#92c9aa;
    background:#effaf3
}

.company-checklist input:checked+span b{
    color:#087641
}

.company-labeling{
    padding:8rem 0;
    background:#fff
}

.company-labeling-layout{
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:5rem;
    align-items:center
}

.company-labeling-image{
    height:610px;
    overflow:hidden;
    border-radius:1.2rem;
    box-shadow:0 22px 58px rgba(25,57,41,.1)
}

.company-labeling-image img{
    width:100%;
    height:100%;
    object-fit:cover
}

.company-labeling-copy>p{
    max-width:560px;
    margin:1rem 0 0;
    color:#667970;
    line-height:1.7
}

.company-label-example{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:.55rem;
    margin-top:2rem;
    padding:1rem;
    border:2px solid #17324a;
    border-radius:.8rem;
    background:#fff
}

.company-label-example>div{
    padding:.8rem;
    border:1px solid #dce5df;
    border-radius:.55rem
}

.company-label-example span,
.company-label-example strong{
    display:block
}

.company-label-example span{
    color:#84958b;
    font-size:.65rem;
    font-weight:950;
    letter-spacing:.08em
}

.company-label-example strong{
    margin-top:.15rem;
    color:#17324a
}

.company-label-wide{
    grid-column:1/-1
}

.company-inline-link,
.company-external-link{
    display:inline-flex;
    align-items:center;
    gap:.5rem;
    margin-top:1.4rem;
    color:var(--green-dark);
    text-decoration:none;
    font-weight:950
}

.company-cases{
    padding:8rem 0;
    background:#f7faf8
}

.company-cases-head{
    max-width:830px
}

.company-cases-head>p{
    margin:1rem 0 0;
    color:#708178
}

.company-case-lines{
    margin-top:3rem;
    border-top:1px solid #d3ddd7
}

.company-case-line{
    display:grid;
    grid-template-columns:.7fr .55fr 1.6fr auto;
    gap:1rem;
    align-items:center;
    padding:1.5rem .3rem;
    border-bottom:1px solid #d3ddd7
}

.company-case-line>span{
    color:var(--green-dark);
    font-size:.8rem;
    font-weight:950
}

.company-case-line p{
    margin:0;
    color:#6f8177;
    line-height:1.6
}

.company-case-line>i{
    color:#90a097
}

.company-admin{
    padding:6.5rem 0;
    background:#eef7f2;
    color:#17324a
}

.company-admin-layout{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:5rem;
    align-items:start
}

.company-admin-layout p{
    margin:0;
    color:#65786e;
    line-height:1.75
}

.company-external-link{
    color:var(--green-dark)
}

.company-tools{
    padding:7rem 0;
    background:#fff
}

.company-tools-head{
    max-width:800px
}

.company-tool-nav{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:1rem;
    margin-top:3rem
}

.company-tool-nav a{
    position:relative;
    min-height:210px;
    display:flex;
    flex-direction:column;
    padding:1.3rem;
    border:1px solid #dce4df;
    border-radius:.9rem;
    background:#fff;
    color:#16211d;
    text-decoration:none;
    transition:.2s ease
}

.company-tool-nav a>span{
    color:#8a9991;
    font-size:.7rem;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.09em
}

.company-tool-nav a>strong{
    max-width:250px;
    margin-top:auto;
    font-size:1.3rem;
    line-height:1.2
}

.company-tool-nav a>i{
    position:absolute;
    right:1.2rem;
    bottom:1.2rem;
    color:var(--green-dark)
}

.company-tool-nav a:hover{
    transform:translateY(-4px);
    border-color:#9fcbb1;
    box-shadow:0 18px 45px rgba(20,33,27,.08)
}

.company-final{
    padding:8rem 0;
    background:
        linear-gradient(135deg,#edf8f2 0%,#f8fbf9 55%,#fff 100%);
    color:#17324a
}

.company-final-layout{
    display:grid;
    grid-template-columns:1fr 4fr;
    gap:3rem
}

.company-final-number{
    font-size:clamp(4rem,9vw,10rem);
    line-height:.8;
    font-weight:950;
    color:#d9e9e0
}

.company-final-copy{
    max-width:900px
}

.company-final-copy p{
    max-width:650px;
    margin:1rem 0 1.6rem;
    color:#6f8177;
    line-height:1.7
}

.company-final .btn-outline-light{
    border-color:#9ab4a5;
    color:#355c47
}

.company-final .btn-outline-light:hover{
    background:#17324a;
    border-color:#17324a;
    color:#fff
}

.company-faq{
    padding:8rem 0;
    background:#fff
}

.company-faq-head{
    max-width:800px;
    margin:0 auto 3rem;
    text-align:center
}

.company-faq-head>span{
    color:var(--green-dark)
}

.company-faq-list{
    max-width:920px
}

.company-faq-list .accordion-button{
    font-weight:850;
    color:#16211d
}

.company-faq-list .accordion-button:not(.collapsed){
    color:#087641;
    background:#f0faf4;
    box-shadow:none
}

.company-faq-list .accordion-button:focus{
    box-shadow:none
}

[data-reveal]{
    opacity:0;
    transform:translateY(24px);
    transition:opacity .65s ease,transform .65s ease
}

[data-reveal].is-visible{
    opacity:1;
    transform:none
}

@media(prefers-reduced-motion:reduce){
    [data-reveal]{
        opacity:1;
        transform:none;
        transition:none
    }
}

@media(max-width:1199.98px){
    .company-hero-layout{
        grid-template-columns:1fr 420px;
        gap:2.5rem
    }

    .company-quick-quote{
        grid-template-columns:1fr 1fr 1fr
    }

    .company-quote-title{
        grid-column:1/-1
    }

    .company-quote-submit{
        min-height:46px
    }

    .company-assets-layout,
    .company-readiness-layout,
    .company-labeling-layout{
        gap:3rem
    }
}

@media(max-width:991.98px){
    .company-hero-layout{
        grid-template-columns:1fr
    }

    .company-hero-copy{
        max-width:900px
    }

    .company-hero-visual{
        height:440px
    }

    .company-statement-layout,
    .company-final-layout{
        grid-template-columns:1fr
    }

    .company-statement-number,
    .company-final-number{
        font-size:5rem
    }

    .company-assets-layout,
    .company-readiness-layout,
    .company-labeling-layout,
    .company-admin-layout{
        grid-template-columns:1fr
    }

    .company-assets-copy,
    .company-readiness-side{
        position:static
    }

    .company-office-frame{
        height:500px
    }

    .company-labeling-image{
        height:480px
    }

    .company-tool-nav{
        grid-template-columns:1fr
    }

    .company-case-line{
        grid-template-columns:1fr 1fr
    }

    .company-case-line p{
        grid-column:1/-1
    }

    .company-case-line>i{
        display:none
    }
}

@media(max-width:767.98px){
    .company-hero-inner{
        padding-top:1.4rem
    }

    .company-hero-layout{
        min-height:0;
        padding-top:4rem
    }

    .company-hero-copy h1{
        font-size:3.5rem
    }

    .company-hero-actions{
        align-items:flex-start;
        flex-direction:column
    }

    .company-quick-quote{
        grid-template-columns:1fr
    }

    .company-statement,
    .company-method,
    .company-assets,
    .company-readiness,
    .company-labeling,
    .company-cases,
    .company-tools,
    .company-final,
    .company-faq{
        padding:5.5rem 0
    }

    .company-office-scene{
        padding-bottom:5.5rem
    }

    .company-office-frame{
        height:420px
    }

    .company-method-row{
        grid-template-columns:2.5rem 3.2rem 1fr;
        gap:.7rem
    }

    .company-method-icon{
        width:3.2rem;
        height:3.2rem
    }

    .company-labeling-image{
        height:390px
    }
}

@media(max-width:575.98px){
    .company-hero-copy h1{
        font-size:2.8rem
    }

    .company-hero-visual{
        height:360px
    }

    .company-office-frame{
        height:340px
    }

    .company-office-caption{
        left:.75rem;
        right:.75rem;
        bottom:.75rem
    }

    .company-assets-layout,
    .company-readiness-layout,
    .company-labeling-layout{
        gap:2rem
    }

    .company-asset-line{
        grid-template-columns:2.3rem 3rem 1fr
    }

    .company-case-line{
        grid-template-columns:1fr
    }

    .company-label-example{
        grid-template-columns:1fr
    }

    .company-label-wide{
        grid-column:auto
    }
}
