/* Memberships 2026 keeps the site's black, gold and warm-white visual language. */
.membership-home{
    --member-gold:var(--gold,#eaaa4f);
    --member-ink:#111;
    --member-cream:var(--swedish-cream,#f7f4ee);
    --member-muted:#626262;
    color:var(--member-ink);
    background:#fff;
    font-family:Inter,sans-serif;
    overflow:clip;
}
.membership-home *{min-width:0}
.membership-home p{line-height:1.8}
.membership-section{padding:clamp(5rem,8vw,8.5rem) 0;scroll-margin-top:85px}
.membership-section .container{max-width:1200px}
.membership-heading{position:relative;margin-bottom:clamp(2.5rem,5vw,4.25rem);padding-top:1.7rem}
.membership-heading::before{content:"";position:absolute;top:0;left:0;width:67px;height:3px;background:var(--member-gold)}
.membership-section h2{font-family:'Playfair Display',serif;font-size:clamp(2.45rem,4.8vw,5rem);font-weight:500;letter-spacing:-.035em;line-height:1.06;max-width:930px;margin:0 0 1.25rem}
.membership-subtitle{color:var(--member-muted);font-size:clamp(1.04rem,1.5vw,1.2rem);line-height:1.7;max-width:720px;margin:0}
.membership-description{max-width:850px;color:#373737;font-size:1.07rem;line-height:1.9;margin:0 0 2.75rem}
.membership-cover{background:#fff;padding-block:clamp(4.25rem,8vw,7rem)}
.membership-cover-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);align-items:center;gap:clamp(2.5rem,6vw,6rem)}
.membership-cover-grid>img{display:block;width:100%;height:auto;box-shadow:20px 20px 0 #111}
.membership-cover-grid>div{padding:2rem 0}
.membership-brand{display:block;color:var(--member-gold);font-size:.85rem;font-weight:800;letter-spacing:.36em;text-transform:uppercase;margin:0 0 1.5rem}
.membership-cover-grid h2{font-size:clamp(2.3rem,4vw,4.1rem);margin:0 0 1.4rem}
.membership-cover-grid>div>p:not(.membership-edition){font-size:1.05rem;font-weight:600;letter-spacing:.08em;margin:0}
.membership-edition{display:inline-block;background:#111;color:var(--member-gold);font-size:.78rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:2.4rem 0 0;padding:.9rem 1.25rem}
.membership-concept{background:var(--member-cream)}
.membership-concept-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(2rem,6vw,6rem);align-items:start}
.membership-concept-grid>p{font-family:'Playfair Display',serif;font-size:clamp(1.45rem,2.4vw,2.15rem);line-height:1.5;max-width:610px;margin:0}
.membership-concept-grid>div{background:#fff;border:1px solid rgba(0,0,0,.06);border-radius:8px;box-shadow:var(--shadow-soft,0 24px 80px rgba(0,0,0,.08));padding:clamp(1.75rem,3vw,2.7rem)}
.membership-concept-grid h3{color:var(--member-gold);font-size:.76rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;margin:0 0 1rem}
.membership-concept-grid ul{list-style:none;margin:0;padding:0}
.membership-concept-grid li{position:relative;padding:.9rem 0 .9rem 1.6rem;border-bottom:1px solid #e9e5dd;font-size:.94rem;font-weight:600}
.membership-concept-grid li:last-child{border:0;padding-bottom:0}
.membership-concept-grid li::before{content:"";position:absolute;top:1.46rem;left:0;width:7px;height:7px;border-radius:50%;background:var(--member-gold)}
.membership-photo{margin:0 auto;max-width:1600px;background:transparent}
.membership-photo img{display:block;width:100%;height:auto;max-height:780px;object-fit:cover}
.membership-grid{display:grid;grid-template-columns:repeat(var(--member-columns,2),minmax(0,1fr));gap:1.25rem}
.membership-card{height:100%;padding:clamp(1.7rem,3vw,2.5rem);background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:8px;box-shadow:0 18px 58px rgba(0,0,0,.045);transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease}
.membership-card::before{content:"";display:block;width:43px;height:3px;background:var(--member-gold);margin-bottom:1.6rem}
.membership-card:hover{transform:translateY(-4px);border-color:rgba(234,170,79,.75);box-shadow:0 22px 55px rgba(0,0,0,.09)}
.membership-card h3{font-family:Inter,sans-serif;font-size:.94rem;font-weight:800;line-height:1.5;letter-spacing:.06em;text-transform:uppercase;margin:0 0 1rem}
.membership-card p{font-size:.93rem;color:#4a4a4a;margin:0}
.membership-note{max-width:950px;border-left:3px solid var(--member-gold);padding:.25rem 0 .25rem 1.4rem;margin:3rem 0 0;color:#484848;font-size:.9rem}
.membership-equestrian,.membership-privileges{background:var(--member-cream)}
.membership-golf{background:#111;color:#fff}
.membership-golf .membership-heading::before{background:var(--member-gold)}
.membership-golf .membership-subtitle,.membership-golf .membership-description{color:#d3d3d3}
.membership-golf .membership-card{background:#1d1d1d;border-color:rgba(255,255,255,.14);box-shadow:none}
.membership-golf .membership-card:hover{border-color:var(--member-gold)}
.membership-golf .membership-card p{color:#d0d0d0}
.membership-lifestyle{background:#fff}
.membership-membership{background:#111;color:#fff}
.membership-membership .membership-subtitle,.membership-membership .membership-note{color:#dedede}
.membership-membership .membership-grid{gap:1.25rem}
.membership-membership .membership-card{background:#222;border-color:rgba(255,255,255,.14);box-shadow:none}
.membership-membership .membership-card:hover{border-color:var(--member-gold)}
.membership-membership .membership-card p{color:#e0e0e0}
.membership-prices .membership-card p.membership-price{font-family:'Playfair Display',serif;font-size:clamp(2.7rem,4vw,4.25rem);font-weight:600;line-height:1.1;letter-spacing:-.035em;color:var(--member-gold);white-space:nowrap;margin:.5rem 0 1.05rem}
.membership-prices .membership-card h3{margin-bottom:1.65rem}
.membership-experience{background:#fff}
.membership-founding{background:linear-gradient(135deg,#f7f4ee 0%,#f0dfc0 100%)}
.membership-founding .membership-heading::before{background:#111}
.membership-founding .membership-card{background:#111;border-color:#111;color:#fff;box-shadow:0 18px 45px rgba(0,0,0,.14)}
.membership-founding .membership-card p{color:#e1e1e1}
.membership-founding .membership-card:hover{border-color:var(--member-gold)}
.membership-founding .membership-note{font-size:1rem;color:#333}
.membership-contact{display:flex;justify-content:space-between;align-items:center;gap:2rem;flex-wrap:wrap;margin-top:3.5rem;padding:2rem clamp(1.5rem,3vw,2.5rem);background:#fff;border-radius:8px;box-shadow:var(--shadow-soft,0 24px 80px rgba(0,0,0,.08))}
.membership-contact span{display:block;color:#696969;font-size:.72rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.45rem}
.membership-contact a:not(.membership-contact-button),.membership-contact strong{color:#111;text-decoration:none;font-family:'Playfair Display',serif;font-size:clamp(1.45rem,2.5vw,2.2rem);font-weight:600}
.membership-contact .membership-contact-button{display:inline-flex;align-items:center;justify-content:center;gap:.9rem;background:var(--member-gold);color:#111;font-family:Inter,sans-serif;font-size:.78rem;font-weight:900;letter-spacing:.09em;text-decoration:none;text-transform:uppercase;border-radius:999px;padding:1.1rem 1.7rem;transition:background .25s ease,color .25s ease,transform .25s ease}
.membership-contact .membership-contact-button:hover{background:#111;color:#fff;transform:translateY(-2px)}
.membership-home a:focus-visible{outline:3px solid var(--member-gold);outline-offset:4px}
@media(max-width:991px){
    .membership-cover-grid,.membership-concept-grid{grid-template-columns:1fr;gap:2.5rem}
    .membership-cover-grid>img{max-height:550px;object-fit:contain;box-shadow:14px 14px 0 #111}
    .membership-cover-grid>div{padding:0}
    .membership-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
    .membership-concept-grid>p{max-width:800px}
}
@media(max-width:575px){
    .membership-section{padding:4.5rem 0}
    .membership-section .container{padding-inline:24px}
    .membership-section h2{font-size:clamp(2.15rem,10vw,3.1rem)}
    .membership-heading{margin-bottom:2.5rem}
    .membership-grid{grid-template-columns:1fr;gap:1rem}
    .membership-card{padding:1.65rem}
    .membership-cover-grid>img{box-shadow:10px 10px 0 #111}
    .membership-concept-grid>p{font-size:1.4rem}
    .membership-contact{align-items:stretch;margin-top:2.5rem}
    .membership-contact .membership-contact-button{width:100%}
}
@media(prefers-reduced-motion:reduce){.membership-card,.membership-contact .membership-contact-button{transition:none}}
