
.pfr-tools-v3{
    --pfr-max:1440px;
    --pfr-text:#1F2224;
    --pfr-body:#687078;
    --pfr-copper:#C96F36;
    --pfr-copper-dark:#B95E28;
    --pfr-blue:#355874;
    --pfr-tan:#A84F08;
    --pfr-green:#3D4A43;
    --pfr-line:#EAE7E1;
    background:#fff;
    color:var(--pfr-text);
    font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
}

.pfr-tools-v3 *,
.pfr-tools-v3 *::before,
.pfr-tools-v3 *::after{box-sizing:border-box}

/* Hide the Foundation theme's duplicate WordPress page title only on the Tools page. */
body:has(.pfr-tools-v3) .pfr-page-header,
body:has(.pfr-tools-v3) > .pfr-main .pfr-page > .pfr-wrap > .pfr-page-title{
    display:none;
}

body:has(.pfr-tools-v3) .pfr-page{
    padding:0;
}

body:has(.pfr-tools-v3) .pfr-page > .pfr-wrap{
    width:100%;
    max-width:none;
    margin:0;
}

body:has(.pfr-tools-v3) .pfr-page .pfr-content{
    max-width:none;
}

.pfr-tools-wrap{
    width:min(calc(100% - 80px),var(--pfr-max));
    margin-inline:auto;
}

.pfr-tools-hero{
    padding:54px 0 40px;
    border-bottom:1px solid var(--pfr-line);
    background:
      radial-gradient(circle at 82% 18%, rgba(239,214,176,.20), transparent 30%),
      #fff;
}

.pfr-tools-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,.94fr) minmax(520px,1.06fr);
    gap:64px;
    align-items:center;
}

.pfr-tools-eyebrow,
.pfr-tools-kicker,
.pfr-tool-label{
    color:var(--pfr-copper);
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.20em;
    text-transform:uppercase;
}

.pfr-homepage-hero h1{
    margin:18px 0 20px;
    font-size:clamp(58px,6.2vw,92px);
    line-height:1.00;
    letter-spacing:-.065em;
    font-weight:850;
}

.pfr-tools-hero-copy > p{
    max-width:660px;
    margin:0;
    color:var(--pfr-body);
    font-size:20px;
    line-height:1.5;
}

.pfr-tools-primary-cta{
    display:inline-flex;
    align-items:center;
    gap:16px;
    margin-top:26px;
    padding:15px 24px;
    border-radius:999px;
    background:var(--pfr-copper);
    color:#fff;
    text-decoration:none;
    font-size:17px;
    font-weight:750;
    box-shadow:0 10px 24px rgba(201,111,54,.18);
    transition:transform .18s ease,background-color .18s ease;
}

.pfr-tools-primary-cta:hover{
    transform:translateY(-1px);
    background:var(--pfr-copper-dark);
}

.pfr-tools-cta-note{
    margin-top:10px;
    color:#7A8085;
    font-size:13px;
}

.pfr-tools-hero-visual{
    position:relative;
    min-height:350px;
    padding:34px 40px 22px;
    overflow:hidden;
    border:1px solid rgba(35,37,38,.08);
    border-radius:24px;
    background:rgba(255,255,255,.96);
    box-shadow:0 24px 56px rgba(38,40,41,.09);
    transform:rotate(-1deg);
}

.pfr-chart-heading{
    color:#8A8F92;
    font-size:12px;
    line-height:1.35;
    font-weight:800;
    letter-spacing:.17em;
    text-transform:uppercase;
}

.pfr-hero-chart{
    width:100%;
    height:auto;
    margin-top:6px;
    overflow:visible;
}

.pfr-grid-lines line{
    stroke:#E7E5E1;
    stroke-width:1;
    stroke-dasharray:2 4;
}

.pfr-line{
    fill:none;
    stroke-width:3;
    stroke-linecap:round;
}

.pfr-line-blue{stroke:#7AAFD5}
.pfr-line-orange{stroke:#D38248}
.pfr-line-green{stroke:#82B5A8}

.pfr-dot{
    stroke:#fff;
    stroke-width:3;
}

.pfr-dot-blue{fill:#7AAFD5}
.pfr-dot-orange{fill:#D38248}
.pfr-dot-green{fill:#82B5A8}

.pfr-axis{
    fill:#91979B;
    font-size:11px;
    font-weight:600;
}

.pfr-chart-value{
    position:absolute;
    right:18px;
    padding:8px 14px;
    border-radius:14px;
    font-size:16px;
    font-weight:850;
    box-shadow:0 8px 22px rgba(35,37,38,.05);
}

.pfr-value-blue{top:74px;background:#DDECF6;color:#234965}
.pfr-value-orange{top:132px;background:#F7E4D1;color:#9D542C}
.pfr-value-green{top:190px;background:#E2F0EC;color:#35685B}

.pfr-chart-note{
    position:absolute;
    top:30px;
    right:86px;
    color:#6B7378;
    font-family:"Segoe Print","Bradley Hand",cursive;
    font-size:16px;
    line-height:1.25;
    transform:rotate(-5deg);
}

.pfr-tools-main{
    padding:30px 0 58px;
}

.pfr-tools-section-heading{
    margin-bottom:18px;
}

.pfr-tools-section-heading h2{
    max-width:980px;
    margin:12px 0 0;
    font-size:clamp(34px,4vw,52px);
    line-height:1.02;
    letter-spacing:-.05em;
}

.pfr-tools-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.pfr-tool-card{
    min-height:360px;
    display:grid;
    grid-template-columns:minmax(0,1fr) 42%;
    gap:18px;
    padding:20px;
    border-radius:18px;
    color:inherit;
    text-decoration:none;
    border:1px solid rgba(35,37,38,.04);
    transition:transform .18s ease,box-shadow .18s ease;
}

.pfr-tool-card:hover{
    transform:translateY(-3px);
    box-shadow:0 16px 34px rgba(35,37,38,.09);
}

.pfr-tool-blue{background:var(--pfr-blue)}
.pfr-tool-tan{background:var(--pfr-tan)}
.pfr-tool-green{background:var(--pfr-green)}

.pfr-tool-copy{
    min-width:0;
    display:flex;
    flex-direction:column;
}

.pfr-tool-meta{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:14px;
}

.pfr-tool-icon{
    width:46px;
    height:46px;
    display:grid;
    place-items:center;
    flex:0 0 46px;
    border-radius:12px;
    background:rgba(255,255,255,.55);
}

.pfr-tool-icon svg{
    width:23px;
    height:23px;
}

.pfr-tool-card h3{
    margin:0 0 10px;
    font-size:28px;
    line-height:1.04;
    letter-spacing:-.045em;
}

.pfr-tool-card p{
    margin:0 0 22px;
    color:#5D666D;
    font-size:16px;
    line-height:1.48;
}

.pfr-tool-link{
    margin-top:auto;
    font-size:15px;
    font-weight:800;
}

.pfr-tool-preview{
    align-self:stretch;
    min-width:0;
    padding:18px 16px;
    border-radius:14px;
    background:rgba(255,255,255,.84);
    box-shadow:0 8px 18px rgba(35,37,38,.05);
}

.pfr-preview-title{
    color:#4F585F;
    font-size:12px;
    line-height:1.35;
    font-weight:750;
}

.pfr-growth-preview{
    display:flex;
    flex-direction:column;
    justify-content:center;
    color:#4E92C7;
}

.pfr-growth-preview svg{
    width:100%;
    margin:8px 0 4px;
}

.pfr-growth-preview svg line{
    stroke:#D7DADC;
    stroke-width:1;
}

.pfr-growth-preview strong{
    color:#26313A;
    font-size:24px;
    letter-spacing:-.04em;
}

.pfr-growth-preview small{
    color:#6E767C;
    font-size:12px;
}

.pfr-preview-big{
    display:block;
    margin-top:8px;
    font-size:23px;
    letter-spacing:-.04em;
}

.pfr-bars{
    height:170px;
    margin-top:8px;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    gap:18px;
}

.pfr-bar-wrap{
    width:48%;
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:5px;
    color:#4D5357;
    text-align:center;
}

.pfr-bar{
    width:46px;
    border-radius:6px 6px 0 0;
}

.pfr-bar-one{
    height:68px;
    background:#C9B49A;
}

.pfr-bar-two{
    height:118px;
    background:#C8753E;
}

.pfr-bar-wrap small{
    font-size:10px;
}

.pfr-bar-wrap strong{
    font-size:12px;
}

.pfr-match-preview{
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.pfr-match-blocks{
    display:grid;
    grid-template-columns:62px 1fr;
    gap:12px;
    align-items:center;
    margin-top:14px;
}

.pfr-match-stack{
    height:112px;
    display:flex;
    flex-direction:column-reverse;
    border-radius:8px;
    overflow:hidden;
}

.pfr-match-stack span{
    display:block;
}

.pfr-match-employee{
    height:68%;
    background:#6EAF9C;
}

.pfr-match-employer{
    height:32%;
    background:#A5CFC3;
}

.pfr-match-blocks div:last-child{
    display:grid;
    gap:2px;
}

.pfr-match-blocks small{
    color:#737B80;
    font-size:10px;
}

.pfr-match-blocks strong{
    margin-bottom:7px;
    font-size:12px;
}

.pfr-preview-total{
    padding-top:12px;
    margin-top:10px;
    border-top:1px solid #E3E5E5;
}

.pfr-preview-total small{
    display:block;
    color:#737B80;
    font-size:10px;
}

.pfr-preview-total strong{
    font-size:19px;
}

.pfr-tools-note{
    margin-top:38px;
    padding:30px 8px 8px;
    display:grid;
    grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);
    gap:56px;
    border-top:1px solid var(--pfr-line);
    background:#fff;
}

.pfr-tools-note h2{
    margin:10px 0 0;
    font-size:clamp(38px,4vw,54px);
    line-height:.98;
    letter-spacing:-.05em;
}

.pfr-tools-note-copy{
    padding-top:4px;
}

.pfr-tools-note-copy > p{
    max-width:700px;
    margin:0 0 22px;
    padding-left:24px;
    border-left:2px solid var(--pfr-copper);
    color:#687078;
    font-size:16px;
    line-height:1.55;
}

.pfr-tools-note-points{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
}

.pfr-tools-note-points > div{
    min-width:0;
    display:grid;
    grid-template-columns:34px 1fr;
    column-gap:10px;
    align-items:start;
}

.pfr-note-icon{
    width:34px;
    height:34px;
    display:grid;
    place-items:center;
    grid-row:1 / span 2;
    border-radius:50%;
    background:#FAF2EA;
    color:var(--pfr-copper);
    font-weight:800;
}

.pfr-tools-note-points strong{
    font-size:13px;
    line-height:1.25;
}

.pfr-tools-note-points small{
    margin-top:4px;
    color:#7A8186;
    font-size:11px;
    line-height:1.35;
}

@media(max-width:1180px){
    .pfr-tools-hero-grid{
        grid-template-columns:1fr;
        gap:34px;
    }

    .pfr-tools-hero-visual{
        max-width:860px;
    }

    .pfr-tools-grid{
        grid-template-columns:1fr;
    }

    .pfr-tool-card{
        grid-template-columns:1fr 250px;
        min-height:280px;
    }
}

@media(max-width:760px){
    .pfr-tools-wrap{
        width:min(calc(100% - 32px),var(--pfr-max));
    }

    .pfr-tools-hero{
        padding:34px 0 28px;
    }

    .pfr-homepage-hero h1{
        font-size:clamp(48px,15vw,68px);
    }

    .pfr-tools-hero-copy > p{
        font-size:18px;
    }

    .pfr-tools-primary-cta{
        width:100%;
        justify-content:center;
    }

    .pfr-tools-hero-visual{
        min-height:auto;
        padding:26px 18px 16px;
        transform:none;
    }

    .pfr-chart-note{
        display:none;
    }

    .pfr-chart-value{
        right:8px;
        font-size:13px;
        padding:6px 10px;
    }

    .pfr-value-blue{top:60px}
    .pfr-value-orange{top:112px}
    .pfr-value-green{top:164px}

    .pfr-tools-main{
        padding-top:24px;
    }

    .pfr-tools-section-heading h2{
        font-size:38px;
    }

    .pfr-tool-card{
        grid-template-columns:1fr;
        min-height:0;
    }

    .pfr-tool-preview{
        min-height:210px;
    }

    .pfr-tool-card h3{
        font-size:28px;
    }

    .pfr-tool-card p{
        font-size:17px;
    }

    .pfr-tools-note{
        grid-template-columns:1fr;
        gap:24px;
        padding-top:28px;
    }

    .pfr-tools-note-points{
        grid-template-columns:1fr;
    }
}

@media(prefers-reduced-motion:reduce){
    .pfr-tool-card,
    .pfr-tools-primary-cta{
        transition:none;
    }
}

/* Integration: the fourth tool follows the existing card design. */
.pfr-tools-v3 .pfr-tool-copper{background:#62664D}
.pfr-tools-v3 .pfr-snapshot-preview{display:flex;flex-direction:column;justify-content:center;gap:16px}
.pfr-tools-v3 .pfr-snapshot-step{display:flex;align-items:center;gap:10px}
.pfr-tools-v3 .pfr-snapshot-step span{display:grid;place-items:center;flex:0 0 28px;height:28px;border-radius:50%;background:#494D39;color:#FFFFFF;font-size:11px;font-weight:800}
.pfr-tools-v3 .pfr-snapshot-step strong{font-size:14px;line-height:1.3}
.pfr-tools-v3 .pfr-snapshot-preview>small{font-size:12px;color:var(--pfr-body)}
.pfr-tools-v3 .pfr-home-tools-directory{margin:24px 0 0}
.pfr-tools-v3 .pfr-home-tools-directory a{color:#232526;font-size:16px;font-weight:800;text-decoration:none}
.pfr-tools-v3 .pfr-home-tools-directory a:hover{text-decoration:underline}


/* V3.0.2 — valid homepage card contrast rules.
   Scope: homepage calculator cards only. */
.pfr-tools-v3 .pfr-tool-card,
.pfr-tools-v3 .pfr-tool-card h3,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-link {
    color:#FFFFFF;
}

.pfr-tools-v3 .pfr-tool-card p {
    color:rgba(255,255,255,.78);
}

.pfr-tools-v3 .pfr-tool-card .pfr-tool-label {
    color:rgba(255,255,255,.88);
}

.pfr-tools-v3 .pfr-tool-card .pfr-tool-icon {
    color:#232526;
    background:rgba(255,255,255,.55);
}

/* Light preview panels always use dark readable text. */
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-preview-title,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-preview-big,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-bar-wrap,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-bar-wrap strong,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-match-blocks strong,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-preview-total strong,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-snapshot-step strong {
    color:#232526;
}

.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview small,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview .pfr-snapshot-preview > small {
    color:#5F6872;
}


/* PFR complementary palette system — Homepage 3.0.3 */
.pfr-tools-v3{
  --pfr-growth-main:#355874;--pfr-growth-light:#E7EEF3;--pfr-growth-accent:#4F96C8;--pfr-growth-deep:#27465E;
  --pfr-contribution-main:#A84F08;--pfr-contribution-light:#F3E3D8;--pfr-contribution-accent:#D17A3F;--pfr-contribution-deep:#7A3908;
  --pfr-match-main:#3D4A43;--pfr-match-light:#E4EAE7;--pfr-match-accent:#70B19D;--pfr-match-deep:#2E3933;
  --pfr-household-main:#62664D;--pfr-household-light:#ECECE3;--pfr-household-accent:#B88A63;--pfr-household-deep:#494D39;
}
.pfr-tools-v3 .pfr-tool-blue{background:var(--pfr-growth-main)}
.pfr-tools-v3 .pfr-tool-tan{background:var(--pfr-contribution-main)}
.pfr-tools-v3 .pfr-tool-green{background:var(--pfr-match-main)}
.pfr-tools-v3 .pfr-tool-copper{background:var(--pfr-household-main)}
.pfr-tools-v3 .pfr-tool-card :is(h3,p,.pfr-tool-meta,.pfr-tool-meta span,.pfr-tool-link){color:#FFFFFF}
.pfr-tools-v3 .pfr-tool-card p{color:rgba(255,255,255,.78)}
.pfr-tools-v3 .pfr-tool-card .pfr-tool-meta{color:rgba(255,255,255,.88)}
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview,
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview :is(strong,.pfr-preview-title,.pfr-preview-big){color:#232526}
.pfr-tools-v3 .pfr-tool-card .pfr-tool-preview small{color:#5F6872}
.pfr-tools-v3 .pfr-tool-copper .pfr-snapshot-step span{background:var(--pfr-household-deep);color:#FFFFFF}
