.product-page h1 {
    font:600 clamp(46px,4.8vw,64px)/1.08 var(--display);
    letter-spacing:-3.4px;
    margin:22px 0;
}
.product-page h1 em,.product-capabilities h2 em,.product-process h2 em {
    font:italic 500 1.02em/1.08 var(--serif);
    color:#27866d;
    letter-spacing:-2px;
}
.product-hero {
    padding:73px 0 66px;
    background:#f0f5ef;
}
.product-hero-grid {
    display:grid;
    grid-template-columns:.94fr 1.06fr;
    gap:55px;
    align-items:center;
}
.product-hero-grid>div:first-child>p {
    font-size:14px;
    line-height:1.9;
    color:#667770;
    max-width:510px;
}
.product-proof {
    display:flex;
    align-items:center;
    gap:12px;
    font-size:8px;
    letter-spacing:1px;
    color:#7d8b83;
    margin-top:37px;
}
.product-proof span:first-child {
    color:#32856a;
    font-weight:700;
}
.product-proof i {
    width:27px;
    height:1px;
    background:#bfd0c3;
}
.product-screenshot {
    background:#fff;
    padding:11px;
    border:1px solid #dae5dc;
    box-shadow:0 20px 50px #244c3520;
    position:relative;
}
.screenshot-title {
    display:flex;
    justify-content:space-between;
    padding:3px 2px 10px;
    font-size:7px;
    letter-spacing:.8px;
    color:#75847b;
}
.screenshot-title span:first-child {
    font-weight:700;
    color:#33594a;
}
.product-screenshot img {
    width:100%;
    display:block;
    border:1px solid #e4e8e5;
}
.screenshot-caption {
    position:absolute;
    right:22px;
    bottom:-13px;
    background:#173f39;
    color:#fff;
    padding:9px 13px;
    font-size:8px;
    box-shadow:0 7px 16px #183a3220;
}
.product-context {
    background:#fff;
}
.product-context-grid {
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:95px;
    align-items:start;
}
.product-context h2 {
    font:600 clamp(31px,3.3vw,45px)/1.15 var(--display);
    letter-spacing:-2px;
    margin:17px 0;
}
.product-context-grid>div:nth-child(2) {
    padding-top:25px;
}
.product-context p {
    font-size:13px;
    line-height:1.9;
    color:#6a7972;
    margin:0 0 12px;
}
.product-capabilities {
    background:#eef3ed;
}
.product-capabilities h2,.product-process h2 {
    font:600 clamp(40px,4vw,54px)/1.1 var(--display);
    letter-spacing:-2.7px;
    margin:18px 0 36px;
}
.capability-grid {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid #d5e0d6;
    border-left:1px solid #d5e0d6;
}
.capability-grid article {
    padding:24px 24px 28px;
    border-right:1px solid #d5e0d6;
    border-bottom:1px solid #d5e0d6;
    min-height:170px;
    background:#f5f7f3;
}
.capability-grid article>span {
    font-size:8px;
    letter-spacing:1.2px;
    color:#38876d;
    font-weight:700;
}
.capability-grid h3 {
    font:700 17px var(--display);
    letter-spacing:-.4px;
    margin:19px 0 7px;
}
.capability-grid p {
    font-size:11px;
    line-height:1.75;
    color:#75817b;
    margin:0;
}
.product-screen {
    background:#fff;
}
.product-screen-grid {
    display:grid;
    grid-template-columns:.75fr 1.25fr;
    align-items:center;
    gap:70px;
}
.screen-copy h2 {
    font:600 39px/1.12 var(--display);
    letter-spacing:-2px;
    margin:18px 0;
}
.screen-copy p {
    font-size:13px;
    line-height:1.85;
    color:#6d7d75;
}
.screen-copy ul {
    list-style:none;
    margin:20px 0 0;
    padding:0;
}
.screen-copy li {
    font-size:11px;
    color:#52665b;
    border-top:1px solid #e4eae4;
    padding:9px 0;
}
.screen-copy li:before {
    content:'✓';
    color:#27866d;
    margin-right:9px;
}
.product-screenshot.large {
    padding:10px;
}
.product-process {
    background:#153e39;
    color:#e2ede5;
}
.product-process h2 {
    color:#fff;
    margin-bottom:42px;
}
.product-process h2 em {
    color:#9ce0bf;
}
.process-line {
    display:grid;
    grid-template-columns:repeat(7,1fr);
    border-top:1px solid #527267;
    position:relative;
}
.process-line span {
    padding:18px 5px 0;
    text-align:center;
    font-size:9px;
    color:#c5d7cb;
    position:relative;
}
.process-line span:before {
    content:'';
    position:absolute;
    left:50%;
    top:-4px;
    width:7px;
    height:7px;
    background:#9ce0bf;
    border:2px solid #153e39;
    border-radius:50%;
    transform:translateX(-50%);
}
.product-cta {
    background:#f5f7f2;
}
.product-cta-inner {
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:50px 0;
}
.product-cta h2 {
    font:600 30px/1.2 var(--display);
    letter-spacing:-1px;
    margin:11px 0 0;
}
.product-demo {
    background:#e7efe8;
    padding:18px;
    border:1px solid #d6e2d8;
    box-shadow:0 20px 45px #244c3517;
}
.demo-top {
    display:flex;
    justify-content:space-between;
    font-size:7px;
    letter-spacing:.8px;
    color:#60766b;
    padding:0 0 12px;
}
.demo-score {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
    margin-bottom:11px;
}
.demo-score>div {
    background:#fff;
    padding:10px;
}
.demo-score small,.inventory-summary small {
    display:block;
    font-size:6px;
    letter-spacing:.7px;
    color:#839087;
}
.demo-score b {
    font:700 21px var(--display);
    color:#245744;
}
.demo-pipeline {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:8px;
}
.demo-column {
    background:#f4f7f3;
    padding:9px 7px;
    min-height:198px;
}
.demo-column label {
    font-size:6px;
    letter-spacing:.35px;
    color:#77867e;
    display:flex;
    justify-content:space-between;
    margin-bottom:8px;
}
.demo-column label b {
    font-size:7px;
    color:#3e7159;
}
.demo-column article {
    background:#fff;
    padding:9px 8px;
    margin-bottom:7px;
    box-shadow:0 2px 5px #3457420b;
}
.demo-column article strong,.demo-column article small,.demo-column article span {
    display:block;
}
.demo-column article strong {
    font-size:7px;
    color:#29473b;
}
.demo-column article small {
    font-size:6px;
    color:#8b9890;
    margin-top:3px;
}
.demo-column article span {
    font-size:6px;
    color:#438568;
    background:#edf6ef;
    padding:4px;
    margin-top:7px;
}
.inventory-demo {
    background:#fff;
    border:1px solid #e1e7dc;
    padding:19px;
    box-shadow:0 20px 45px #244c3517;
}
.inventory-demo-head {
    display:flex;
    justify-content:space-between;
    align-items:center;
    border-bottom:1px solid #e7ece6;
    padding-bottom:12px;
}
.inventory-demo-head small,.inventory-demo-head b {
    display:block;
}
.inventory-demo-head small {
    font-size:6px;
    letter-spacing:1px;
    color:#859187;
}
.inventory-demo-head b {
    font:700 16px var(--display);
    color:#25483a;
}
.inventory-demo-head>span {
    font-size:7px;
    color:#819188;
}
.inventory-summary {
    display:grid;
    grid-template-columns:repeat(3,1fr);
    padding:13px 0;
    gap:10px;
}
.inventory-summary>div {
    background:#f4f7f3;
    padding:9px;
}
.inventory-summary b {
    font:700 21px var(--display);
    color:#275443;
    display:block;
    margin-top:3px;
}
.inventory-summary .amber {
    color:#bf8937;
}
.inventory-summary i {
    font-size:6px;
    color:#89958e;
    font-style:normal;
}
.inventory-table {
    border-top:1px solid #e7ece6;
}
.inventory-row {
    display:grid;
    grid-template-columns:1.5fr 1fr .5fr .65fr;
    gap:5px;
    align-items:center;
    border-bottom:1px solid #edf0ec;
    padding:10px 2px;
    font-size:7px;
    color:#64736a;
}
.inventory-row b {
    font-size:8px;
    color:#344d40;
}
.inventory-row em {
    font-size:6px;
    font-style:normal;
}
.table-header {
    font-size:5px;
    letter-spacing:.7px;
    color:#939e96;
    padding:7px 2px;
}
.table-dot {
    display:inline-block;
    width:7px;
    height:7px;
    border-radius:2px;
    margin-right:6px;
}
.status-good {
    color:#438966;
}
.status-low {
    color:#bd8737;
}
.inventory-alert {
    padding:9px;
    background:#fbf5e8;
    color:#a77b35;
    font-size:7px;
    margin-top:10px;
}
.contact-hero {
    background:#eff5ef;
    padding:76px 0 86px;
}
.contact-grid {
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:90px;
    align-items:center;
}
.contact-grid h1 {
    font:600 clamp(48px,5vw,68px)/1.06 var(--display);
    letter-spacing:-3px;
    margin:23px 0;
}
.contact-grid h1 em {
    font:italic 500 1.02em var(--serif);
    color:#26876e;
}
.contact-grid>div:first-child p {
    font-size:14px;
    line-height:1.9;
    color:#697970;
    max-width:430px;
}
.contact-card {
    padding:30px;
    background:#fff;
    border:1px solid #e0e9e0;
    box-shadow:0 18px 42px #254c3614;
}
.contact-card>span {
    font-size:9px;
    letter-spacing:1.3px;
    color:#45866b;
    font-weight:700;
}
.contact-card h2 {
    font:600 27px var(--display);
    letter-spacing:-1px;
    margin:14px 0;
}
.contact-card p {
    font-size:12px;
    line-height:1.8;
    color:#718078;
}
.contact-card>a {
    display:inline-flex;
    margin-top:12px;
    background:#173e38;
    color:white;
    padding:13px 16px;
    font-size:11px;
    font-weight:700;
}
.contact-card>a span {
    margin-left:18px;
    color:#9ce0bf;
}
.contact-footnote {
    font-size:9px;
    color:#87948d;
    margin-top:15px;
}
@media(max-width:950px) {
    .product-hero-grid,.product-context-grid,.product-screen-grid,.contact-grid {
        gap:35px;
    }
    .product-hero-grid {
        grid-template-columns:1fr 1fr;
    }
    .product-page h1 {
        font-size:48px;
    }
    .capability-grid {
        grid-template-columns:repeat(2,1fr);
    }
    .demo-column {
        padding:7px 5px;
    }
    .inventory-demo {
        padding:13px;
    }
    .inventory-row {
        font-size:6px;
    }
}
@media(max-width:680px) {
    .product-hero {
        padding:44px 0;
    }
    .product-hero-grid,.product-context-grid,.product-screen-grid,.contact-grid {
        grid-template-columns:1fr;
        gap:30px;
    }
    .product-page h1 {
        font-size:47px;
        letter-spacing:-2.8px;
    }
    .product-proof {
        flex-wrap:wrap;
    }
    .product-context-grid>div:nth-child(2) {
        padding:0;
    }
    .product-capabilities h2,.product-process h2 {
        font-size:41px;
    }
    .capability-grid {
        grid-template-columns:1fr;
    }
    .capability-grid article {
        min-height:unset;
        padding:20px;
    }
    .screen-copy h2 {
        font-size:34px;
    }
    .process-line {
        grid-template-columns:repeat(4,1fr);
        row-gap:17px;
        border-top:0;
    }
    .process-line span {
        border-top:1px solid #527267;
    }
    .process-line span:before {
        top:-4px;
    }
    .product-cta-inner {
        display:block;
        padding:39px 0;
    }
    .product-cta h2 {
        font-size:26px;
        margin-bottom:22px;
    }
    .demo-pipeline {
        gap:4px;
    }
    .demo-column article {
        padding:7px 5px;
    }
    .inventory-row {
        grid-template-columns:1.35fr .8fr .5fr .65fr;
        gap:3px;
    }
    .contact-hero {
        padding:47px 0;
    }
    .contact-grid h1 {
        font-size:52px;
    }
}
