:root{
    --card-bg:rgba(255,250,240,.78);
    --border:rgba(15,28,47,.12);
}

.resource-page{
    padding:70px 0 90px;
}

.resource-layout{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:64px;
    align-items:center;
}

.resource-eyebrow{
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:.22em;
    font-size:.75rem;
    font-weight:700;
    margin-bottom:18px;
}

.resource-copy h1{
    font-family:var(--serif);
    color:var(--navy);
    font-size:clamp(2.9rem,6vw,5rem);
    line-height:.95;
    font-weight:400;
    margin-bottom:22px;
}

.resource-description{
    font-size:1.05rem;
    color:#555047;
    max-width:640px;
    margin-bottom:34px;
    line-height:1.8;
}

.resource-benefits{
    background:rgba(255,255,255,.45);
    border:1px solid rgba(15,28,47,.08);
    border-radius:24px;
    padding:28px;
}

.resource-benefits h3{
    font-family:var(--serif);
    color:var(--green);
    font-size:1.4rem;
    margin-bottom:18px;
    font-weight:400;
}

.resource-benefits ul{
    list-style:none;
}

.resource-benefits li{
    margin-bottom:14px;
    color:#575148;
}

.resource-card{
    background:var(--card-bg);
    backdrop-filter:blur(18px);
    border:1px solid var(--border);
    border-radius:30px;
    padding:42px;
    box-shadow:var(--soft-shadow);
}

.card-badge{
    display:inline-block;
    padding:8px 16px;
    border-radius:999px;
    background:rgba(185,154,95,.14);
    color:var(--gold);
    text-transform:uppercase;
    letter-spacing:.16em;
    font-size:.68rem;
    font-weight:700;
    margin-bottom:18px;
}

.resource-card h2{
    font-family:var(--serif);
    color:var(--navy);
    font-size:2rem;
    font-weight:400;
    margin-bottom:12px;
}

.resource-card p{
    color:#5d564d;
    line-height:1.7;
}

form{
    margin-top:28px;
}

form label{
    display:block;
    margin-bottom:8px;
    color:var(--navy);
    font-weight:600;
}

#email{
    width:100%;
    padding:18px;
    border-radius:16px;
    border:1px solid rgba(15,28,47,.14);
    background:white;
    font-size:1rem;
    margin-bottom:24px;
}

#email:focus{
    outline:none;
    border-color:var(--gold);
    box-shadow:0 0 0 4px rgba(185,154,95,.15);
}

.newsletter{
    display:flex;
    gap:14px;
    align-items:flex-start;
    margin-bottom:28px;
}

.newsletter input{
    margin-top:4px;
    transform:scale(1.2);
}

.newsletter strong{
    display:block;
    color:var(--navy);
    margin-bottom:4px;
}

.newsletter small{
    color:var(--muted);
    line-height:1.6;
}

#submitButton{
    width:100%;
    border:none;
    border-radius:18px;
    padding:18px;
    cursor:pointer;
    background:linear-gradient(135deg,var(--green),var(--navy));
    color:white;
    font-size:1rem;
    font-weight:600;
    transition:.25s;
}

#submitButton:hover{
    transform:translateY(-2px);
    box-shadow:0 18px 35px rgba(15,28,47,.18);
}

.privacy-note{
    margin-top:18px;
    font-size:.82rem;
    color:var(--muted);
}

.form-message{
    margin-top:18px;
    font-weight:600;
}

@media(max-width:900px){

    .resource-layout{
        grid-template-columns:1fr;
    }

    .resource-card{
        padding:30px;
    }

} .resource-intro {
      max-width: 760px;
      margin: 0 auto 42px;
      text-align: center;
  }

.resource-intro h1 {
    font-family: var(--serif);
    color: var(--navy);
    font-size: clamp(2.8rem, 7vw, 5rem);
    line-height: .98;
    font-weight: 400;
    margin-bottom: 20px;
}

.resource-intro p,
.resource-library-card p {
    color: #5d564d;
    line-height: 1.75;
}

.resource-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px;
}

.resource-library-card {
    min-height: 320px;
    padding: 34px;
    display: flex;
    flex-direction: column;
    background: var(--card-bg);
    border: 1px solid var(--border);
    border-radius: 28px;
    box-shadow: var(--soft-shadow);
}

.resource-library-label {
    color: var(--gold);
    text-transform: uppercase;
    letter-spacing: .2em;
    font-size: .72rem;
    font-weight: 700;
    margin-bottom: 14px;
}

.resource-library-card h2,
.selected-resource-copy h2 {
    font-family: var(--serif);
    color: var(--navy);
    font-weight: 400;
}

.resource-library-card h2 {
    font-size: clamp(1.8rem, 4vw, 2.7rem);
    line-height: 1.05;
    margin-bottom: 16px;
}

.resource-library-card p {
    margin-bottom: 28px;
}

.resource-select-button {
    width: 100%;
    margin-top: auto;
    border: none;
    border-radius: 18px;
    padding: 17px 20px;
    cursor: pointer;
    background: linear-gradient(
            135deg,
            var(--green),
            var(--navy)
    );
    color: white;
    font-size: .98rem;
    font-weight: 600;
}

.delivery-panel {
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 60px;
    align-items: start;
}

.delivery-panel[hidden],
.resource-grid[hidden] {
    display: none;
}

.back-to-resources {
    margin-bottom: 28px;
    padding: 0;
    border: none;
    background: transparent;
    color: var(--green);
    cursor: pointer;
    font: inherit;
    font-weight: 600;
}

.selected-resource-copy h2 {
    font-size: clamp(2.8rem, 6vw, 4.8rem);
    line-height: .98;
    margin-bottom: 22px;
}

@media (max-width: 900px) {

    .resource-grid,
    .delivery-panel {
        grid-template-columns: 1fr;
    }

}