/* =========================================================
   GolfShop packages page
   Card styling intentionally reuses the homepage pricing
   component classes from style.css so both locations match.
   ========================================================= */

.packages-hero-section{
    padding:90px 0;
    background:
        radial-gradient(circle at 88% 14%,rgba(150,181,27,.14),transparent 27%),
        linear-gradient(135deg,#f7f9f2 0%,#fff 56%,#f4f8e9 100%);
    border-bottom:1px solid #e9ede2;
}

.packages-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
    gap:70px;
    align-items:center;
}

.packages-kicker,
.packages-section-kicker{
    display:inline-block;
    color:#709719;
    font-size:12px;
    line-height:1;
    font-weight:800;
    letter-spacing:.13em;
    text-transform:uppercase;
}

.packages-hero-section h1{
    max-width:760px;
    margin:13px 0 16px;
    color:#171717;
    font-size:clamp(36px,4vw,58px);
    line-height:1.08;
    font-weight:800;
    letter-spacing:-.035em;
}

.packages-hero-section p{
    max-width:700px;
    margin:0;
    color:#62685f;
    font-size:16px;
    line-height:1.75;
}

.packages-hero-benefits{
    display:flex;
    flex-wrap:wrap;
    gap:12px 24px;
    margin-top:27px;
}

.packages-hero-benefits span{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:#353a33;
    font-size:13px;
    font-weight:600;
}

.packages-hero-benefits b{
    width:22px;
    height:22px;
    border-radius:50%;
    display:grid;
    place-items:center;
    background:#96b51b;
    color:#fff;
    font-size:11px;
}

.current-plan-summary{
    position:relative;
    overflow:hidden;
    min-height:245px;
    padding:30px;
    border:1px solid #d5e2b5;
    border-radius:18px;
    background:linear-gradient(145deg,#fff 0%,#f6faeb 100%);
    box-shadow:0 18px 46px rgba(64,87,32,.09);
}

.current-plan-summary:before{
    content:"";
    position:absolute;
    right:-42px;
    top:-42px;
    width:130px;
    height:130px;
    border-radius:50%;
    background:rgba(150,181,27,.12);
}

.current-plan-label{
    display:block;
    color:#71806a;
    font-size:11px;
    font-weight:800;
    letter-spacing:.08em;
    text-transform:uppercase;
}

.current-plan-name{
    margin:8px 0 25px;
    font-family:'Poppins',sans-serif;
    color:#171717;
    font-size:28px;
    font-weight:800;
}

.current-plan-meta{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    margin:0 0 23px;
    padding:18px 0;
    border-top:1px solid #e3ead4;
    border-bottom:1px solid #e3ead4;
}

.current-plan-meta div{
    padding:0 12px;
    border-right:1px solid #e3ead4;
}
.current-plan-meta div:first-child{padding-left:0}
.current-plan-meta div:last-child{border-right:0}
.current-plan-meta strong{display:block;color:#171717;font-size:17px}
.current-plan-meta span{display:block;margin-top:4px;color:#7a8174;font-size:10px;text-transform:uppercase;letter-spacing:.05em}

.current-plan-summary>a{
    color:#5b8314;
    text-decoration:none;
    font-size:13px;
    font-weight:700;
}
.current-plan-summary>a span{margin-left:6px;transition:transform .2s ease;display:inline-block}
.current-plan-summary>a:hover span{transform:translateX(4px)}

.current-plan-summary.no-plan p{font-size:13px;line-height:1.65;margin-top:-8px}

.packages-card-section{
    padding:90px 0;
    background:#fafbf8;
}

.packages-heading{margin-bottom:46px}
.packages-heading .packages-section-kicker{margin-bottom:11px}
.packages-heading>span:not(.packages-section-kicker){margin-top:10px}

/* Exact homepage pricing cards are used here. These rules only support form states. */
.package-select-form{margin:0;margin-top:auto}
.package-select-form .home-price-button{border:0;cursor:pointer}
.package-select-form .home-price-button:not(.solid){border:1px solid #6f9f2c}

.package-card-description{
    min-height:44px;
    margin:-8px 0 18px;
    color:#70766d;
    font-size:12px;
    line-height:1.55;
}

.package-card-status{
    position:absolute;
    right:18px;
    top:18px;
    padding:7px 11px;
    border-radius:999px;
    font-size:10px;
    font-weight:800;
    letter-spacing:.05em;
    text-transform:uppercase;
    z-index:2;
}
.package-card-status.active{background:#e9f4cf;color:#52760e}
.package-card-status.pending{background:#fff4d6;color:#936700}

.package-disabled-btn,
.package-disabled-btn:hover{
    cursor:not-allowed;
    opacity:1;
    background:#eef3e4!important;
    border-color:#d8e2c5!important;
    color:#718067!important;
    transform:none!important;
}
.package-disabled-btn.pending,
.package-disabled-btn.pending:hover{background:#fff8e8!important;border-color:#f1dfad!important;color:#8b6a16!important}

.packages-info-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    margin-top:38px;
}

.packages-info-grid article{
    display:flex;
    gap:13px;
    padding:19px 20px;
    border:1px solid #e4e9dd;
    border-radius:12px;
    background:#fff;
}

.packages-info-icon{
    width:36px;
    height:36px;
    flex:0 0 36px;
    display:grid;
    place-items:center;
    border-radius:10px;
    background:#eff5dd;
    color:#649018;
    font-size:16px;
    font-weight:800;
}
.packages-info-grid strong{display:block;color:#242724;font-size:13px}
.packages-info-grid p{margin:4px 0 0;color:#7a8076;font-size:11px;line-height:1.55}

.packages-payment-note{
    display:flex;
    align-items:flex-start;
    gap:15px;
    margin-top:22px;
    padding:20px 22px;
    border:1px solid #dce6c4;
    border-radius:12px;
    background:linear-gradient(90deg,#fbfdf7,#f6faeb);
}
.packages-payment-note-icon{
    width:34px;
    height:34px;
    flex:0 0 34px;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#96b51b;
    color:#fff;
    font-family:'Poppins',sans-serif;
    font-size:15px;
    font-weight:800;
}
.packages-payment-note strong{display:block;color:#262a25;font-size:13px;margin-bottom:4px}
.packages-payment-note p{margin:0;color:#697066;font-size:12px;line-height:1.65}

@media(max-width:991.98px){
    .packages-hero-grid{grid-template-columns:1fr;gap:36px}
    .current-plan-summary{max-width:560px}
    .packages-info-grid{grid-template-columns:1fr}
}

@media(max-width:575.98px){
    .packages-hero-section,
    .packages-card-section{padding:70px 0}
    .packages-hero-section h1{font-size:34px}
    .packages-hero-section p{font-size:14px}
    .packages-hero-benefits{display:grid;gap:10px}
    .current-plan-summary{padding:24px 20px}
    .current-plan-meta div{padding:0 8px}
    .packages-payment-note{padding:17px}
}

/* Featured-credit page refinements */
.featured-plans-hero .packages-hero-grid{align-items:center}
.featured-plans-hero .current-plan-summary{min-height:230px}
.packages-card-section .featured-plan-grid{margin-top:0}
.packages-info-icon{font-size:14px}
