.portfolio-plans-hero {
    min-height: auto;
    padding-bottom: clamp(42px, 5vw, 72px);
}

.portfolio-plan-grid {
    width: min(1180px, calc(100% - 40px));
    margin: 0 auto clamp(72px, 9vw, 128px);
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(18px, 3vw, 36px);
}

.portfolio-plan-card {
    min-height: 560px;
    padding: clamp(28px, 4vw, 52px);
    display: flex;
    flex-direction: column;
    border: 1px solid var(--line);
    background: var(--paper-bright);
}

.portfolio-plan-card-plus {
    border-color: var(--gold);
    background: #f7f1e5;
}

.portfolio-plan-card header {
    padding-bottom: 26px;
    border-bottom: 1px solid var(--line);
}

.plan-name {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(2.4rem, 5vw, 4rem);
    letter-spacing: -.045em;
    line-height: 1;
}

.plan-price {
    margin: 22px 0 0;
    display: flex;
    align-items: baseline;
    gap: 8px;
}

.plan-price strong { font-size: clamp(1.7rem, 3vw, 2.4rem); }
.plan-price span { color: #645e55; }
.plan-summary { min-height: 3.5em; margin: 28px 0 12px; color: #4d4941; }
.plan-includes { margin: 0 0 4px; font-weight: 750; }

.portfolio-plan-card ul {
    margin: 18px 0 34px;
    padding: 0;
    display: grid;
    gap: 14px;
    list-style: none;
}

.portfolio-plan-card li {
    position: relative;
    padding-left: 28px;
}

.portfolio-plan-card li::before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--gold-text);
    font-weight: 900;
}

.portfolio-plan-card .button { margin-top: auto; align-self: flex-start; }

.portfolio-plan-note {
    padding: clamp(42px, 7vw, 84px) clamp(20px, 8vw, 120px);
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: clamp(28px, 6vw, 88px);
    align-items: start;
    background: var(--ink);
    color: var(--paper-bright);
}

.portfolio-plan-note h2 {
    margin: 0;
    font-family: var(--serif);
    font-size: clamp(2rem, 4vw, 3.4rem);
    font-weight: 400;
    letter-spacing: -.04em;
    line-height: 1.05;
}

.portfolio-plan-note > p { max-width: 62ch; margin: 4px 0 0; color: #dfd9ce; }

@media (max-width: 760px) {
    .portfolio-plan-grid,
    .portfolio-plan-note { grid-template-columns: 1fr; }
    .portfolio-plan-card { min-height: 0; }
    .plan-summary { min-height: 0; }
    .portfolio-plan-card .button { align-self: stretch; }
}
