
/* =========================================================
   KENMA-UK HOMEPAGE HERO
   Restored after stylesheet separation
   ========================================================= */

.hero{
    position:relative;
    min-height:calc(100vh - var(--nav-height));
    height:calc(100vh - var(--nav-height));
    overflow:hidden;
    isolation:isolate;
    background:radial-gradient(circle at 80% 30%,#164d3c 0,#0b332a 45%,#061f1a 100%);
    color:#fff;
}

.hero-media,
.hero-video{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
}

.hero-media{
    z-index:-5;
    overflow:hidden;
    background:linear-gradient(135deg,#0a2b24 0%,#123e32 45%,#071d19 100%);
}

.hero-video{
    display:block;
    object-fit:cover;
    object-position:center center;
    opacity:.98;
    transform:scale(1.015);
    filter:saturate(.9) contrast(1.04);
}

.hero-green-wash{
    position:absolute;
    z-index:-3;
    inset:0;
    background:linear-gradient(
        90deg,
        rgba(5,63,44,.84) 0%,
        rgba(5,63,44,.78) 19%,
        rgba(5,63,44,.66) 34%,
        rgba(5,63,44,.48) 49%,
        rgba(5,63,44,.27) 64%,
        rgba(5,63,44,.16) 78%,
        rgba(5,63,44,.12) 100%
    );
}

.hero-vignette{
    position:absolute;
    z-index:-2;
    inset:0;
    background:
        radial-gradient(
            ellipse at 20% 50%,
            rgba(3,30,22,.23) 0%,
            rgba(3,30,22,.10) 34%,
            transparent 64%
        ),
        linear-gradient(
            90deg,
            rgba(0,20,15,.17),
            transparent 58%,
            rgba(0,0,0,.10)
        );
}

.hero-pattern{
    position:absolute;
    z-index:-1;
    inset:-18% -8%;
    opacity:.23;
    pointer-events:none;
    background:
        linear-gradient(
            132deg,
            transparent 0 12%,
            rgba(180,239,134,.22) 12.1% 13.5%,
            transparent 13.6% 25%,
            rgba(255,255,255,.10) 25.1% 26%,
            transparent 26.1% 40%,
            rgba(180,239,134,.15) 40.1% 41.2%,
            transparent 41.3% 57%,
            rgba(255,255,255,.08) 57.1% 58%,
            transparent 58.1% 74%,
            rgba(180,239,134,.13) 74.1% 75.2%,
            transparent 75.3% 100%
        );
    background-size:520px 520px;
    mix-blend-mode:screen;
    transform:rotate(-2deg) scale(1.05);
    animation:heroPatternDrift 18s linear infinite;
}

.hero-pattern::before,
.hero-pattern::after{
    content:"";
    position:absolute;
    border-radius:999px;
    pointer-events:none;
}

.hero-pattern::before{
    width:260px;
    height:260px;
    top:9%;
    right:13%;
    border:1px solid rgba(207,246,174,.25);
    box-shadow:
        0 0 0 35px rgba(207,246,174,.035),
        0 0 0 72px rgba(207,246,174,.02);
}

.hero-pattern::after{
    width:7px;
    height:7px;
    top:23%;
    right:25%;
    background:rgba(229,251,213,.72);
    box-shadow:
        -420px 220px 0 rgba(229,251,213,.48),
        -240px 390px 0 rgba(229,251,213,.30),
        160px 330px 0 rgba(229,251,213,.34);
}

.hero-content{
    position:relative;
    z-index:2;
    width:min(var(--container),calc(100% - 44px));
    height:100%;
    margin:0 auto;
    display:flex;
    align-items:center;
    padding:42px 0 68px;
}

.hero-logo-wrap{
    position:absolute;
    left:0;
    top:50%;
    width:clamp(230px,25vw,355px);
    aspect-ratio:1;
    transform:translateY(-50%);
    display:grid;
    place-items:center;
}

.hero-logo-glow{
    position:absolute;
    inset:7%;
    border-radius:50%;
    background:radial-gradient(
        circle,
        rgba(186,239,143,.19) 0%,
        rgba(186,239,143,.07) 42%,
        transparent 72%
    );
    filter:blur(8px);
    animation:logoGlow 5s ease-in-out infinite alternate;
}

.hero-logo{
    position:relative;
    z-index:1;
    width:100%;
    height:auto;
    object-fit:contain;
    filter:
        drop-shadow(0 25px 35px rgba(0,0,0,.28))
        drop-shadow(0 0 24px rgba(187,239,134,.12));
    animation:logoFloat 6s ease-in-out infinite;
}

.hero-copy{
    width:min(590px,48vw);
    margin-left:clamp(380px,39vw,510px);
    transform:translateY(-1%);
}

.hero-kicker{
    display:inline-block;
    color:#d4f2c0;
    font-size:10px;
    font-weight:800;
    letter-spacing:.19em;
    line-height:1.4;
    text-transform:uppercase;
}

.hero-copy h1{
    margin:16px 0 19px;
    color:#fff;
    font-family:"Manrope",sans-serif;
    font-size:clamp(42px,5.1vw,76px);
    font-weight:600;
    line-height:.99;
    letter-spacing:-.055em;
}

.hero-copy h1 em{
    color:var(--kenma-lime);
    font-style:normal;
    font-weight:700;
}

.hero-copy p{
    max-width:530px;
    margin:0;
    color:rgba(255,255,255,.88);
    font-size:clamp(14px,1.35vw,18px);
    line-height:1.55;
}

.hero-actions{
    display:flex;
    align-items:center;
    gap:26px;
    margin-top:30px;
}

.hero-btn{
    min-height:51px;
    padding:0 8px 0 21px;
    display:inline-flex;
    align-items:center;
    gap:20px;
    border-radius:999px;
    font-size:12px;
    font-weight:800;
    transition:transform .25s var(--ease),box-shadow .25s var(--ease);
}

.hero-btn-primary{
    color:#0b251d;
    background:var(--kenma-lime);
    box-shadow:0 13px 32px rgba(0,0,0,.18);
}

.hero-btn-primary span{
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:50%;
    color:#fff;
    background:var(--kenma-red);
    font-size:19px;
    font-weight:400;
    transition:transform .25s ease;
}

.hero-btn:hover{
    transform:translateY(-3px);
    box-shadow:0 18px 35px rgba(0,0,0,.22);
}

.hero-btn:hover span{transform:translateX(2px)}

.hero-link{
    display:inline-flex;
    align-items:center;
    gap:10px;
    color:#fff;
    font-size:12px;
    font-weight:700;
    border-bottom:1px solid rgba(255,255,255,.38);
    padding-bottom:4px;
    transition:color .2s ease,border-color .2s ease;
}

.hero-link span{transition:transform .2s ease}

.hero-link:hover{
    color:var(--kenma-lime);
    border-color:var(--kenma-lime);
}

.hero-link:hover span{transform:translateY(3px)}

.hero-bottom{
    position:absolute;
    z-index:3;
    left:max(22px,calc((100% - var(--container))/2));
    right:max(22px,calc((100% - var(--container))/2));
    bottom:22px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:rgba(255,255,255,.64);
    font-size:9px;
    font-weight:700;
    letter-spacing:.12em;
    text-transform:uppercase;
}

.hero-bottom b{
    color:var(--kenma-lime);
    margin:0 5px;
}

.hero-scroll-indicator{
    display:inline-flex;
    align-items:center;
    gap:9px;
}

.hero-scroll-indicator i{
    display:inline-block;
    width:28px;
    height:1px;
    background:rgba(255,255,255,.48);
}

@keyframes logoFloat{
    0%,100%{transform:translateY(0) rotate(-.3deg)}
    50%{transform:translateY(-8px) rotate(.3deg)}
}

@keyframes logoGlow{
    from{transform:scale(.94);opacity:.65}
    to{transform:scale(1.06);opacity:1}
}

@keyframes heroPatternDrift{
    from{transform:rotate(-2deg) scale(1.05) translate3d(0,0,0)}
    to{transform:rotate(-2deg) scale(1.05) translate3d(70px,-35px,0)}
}

@media(max-width:1100px){
    .hero-logo-wrap{width:290px}
    .hero-copy{
        margin-left:330px;
        width:min(550px,54vw);
    }
}

@media(max-width:900px){
    .hero{
        min-height:calc(100svh - var(--nav-height));
        height:calc(100svh - var(--nav-height));
    }

    .hero-green-wash{
        background:linear-gradient(
            90deg,
            rgba(5,63,44,.86) 0%,
            rgba(5,63,44,.73) 43%,
            rgba(5,63,44,.40) 72%,
            rgba(5,63,44,.15) 100%
        );
    }

    .hero-content{
        display:flex;
        flex-direction:column;
        align-items:flex-start;
        justify-content:center;
        padding-top:20px;
    }

    .hero-logo-wrap{
        position:relative;
        left:auto;
        top:auto;
        width:min(210px,43vw);
        transform:none;
        margin:0 0 22px;
    }

    .hero-copy{
        width:min(650px,100%);
        margin-left:0;
    }

    .hero-copy h1{font-size:clamp(39px,8vw,64px)}
}

@media(max-width:600px){
    .hero{
        min-height:calc(100svh - var(--nav-height));
        height:calc(100svh - var(--nav-height));
    }

    .hero-green-wash{
        background:linear-gradient(
            90deg,
            rgba(5,63,44,.89) 0%,
            rgba(5,63,44,.76) 52%,
            rgba(5,63,44,.28) 100%
        );
    }

    .hero-pattern{opacity:.17}

    .hero-content{
        width:calc(100% - 30px);
        padding-bottom:70px;
    }

    .hero-logo-wrap{
        width:min(185px,48vw);
        margin-bottom:18px;
    }

    .hero-copy h1{
        margin-top:12px;
        font-size:clamp(36px,11vw,52px);
    }

    .hero-copy p{font-size:14px}

    .hero-actions{
        align-items:flex-start;
        flex-direction:column;
        gap:17px;
        margin-top:24px;
    }

    .hero-bottom{
        left:15px;
        right:15px;
        bottom:15px;
    }

    .hero-bottom>span:first-child{display:none}
}


/* =========================================================
   KENMA-UK HOMEPAGE — ORGANISATION INFORMATION
   ========================================================= */

.about-section{
    position:relative;
    padding:120px 0 110px;
    overflow:hidden;
    background:radial-gradient(circle at 10% 15%,rgba(11,90,67,.055),transparent 30%),#fff;
}
.about-shell,.objectives-shell{
    width:min(var(--container),calc(100% - 44px));
    margin:0 auto;
}
.section-heading{max-width:780px}
.section-eyebrow{
    display:inline-flex;
    align-items:center;
    gap:9px;
    color:var(--kenma-green);
    font-size:10px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}
.section-eyebrow::before{
    content:"";
    width:24px;
    height:2px;
    background:var(--kenma-lime);
}
.section-heading h2{
    margin:14px 0 15px;
    color:var(--ink);
    font-family:"Manrope",sans-serif;
    font-size:clamp(36px,4.6vw,65px);
    font-weight:650;
    line-height:1.02;
    letter-spacing:-.055em;
}
.section-heading p{
    max-width:680px;
    margin:0;
    color:var(--muted);
    font-size:15px;
    line-height:1.75;
}
.about-intro-grid{
    display:grid;
    grid-template-columns:.86fr 1.14fr;
    align-items:center;
    gap:clamp(45px,7vw,110px);
    margin-top:76px;
}
.about-number{
    display:block;
    margin-bottom:12px;
    color:var(--kenma-green);
    font-family:"Manrope",sans-serif;
    font-size:11px;
    font-weight:800;
    letter-spacing:.16em;
}
.about-copy h3{
    margin:0 0 18px;
    font-family:"Manrope",sans-serif;
    font-size:clamp(25px,2.5vw,36px);
    line-height:1.08;
    letter-spacing:-.04em;
}
.about-copy p{
    max-width:550px;
    margin:0 0 15px;
    color:#5d6964;
    font-size:14px;
    line-height:1.78;
}
.text-link{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin-top:10px;
    padding-bottom:5px;
    color:var(--kenma-green);
    border-bottom:1px solid rgba(11,90,67,.35);
    font-size:12px;
    font-weight:800;
    transition:gap .25s var(--ease),color .2s ease;
}
.text-link:hover{gap:17px;color:var(--kenma-green-dark)}

.about-feature-image{
    position:relative;
    min-height:420px;
    overflow:hidden;
    border-radius:24px;
    background:#e9efeb;
}
.about-feature-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(130deg,rgba(5,53,39,.04),transparent 50%),linear-gradient(0deg,rgba(5,35,27,.20),transparent 35%);
    pointer-events:none;
}
.about-feature-image img{
    width:100%;
    height:100%;
    min-height:420px;
    display:block;
    object-fit:cover;
    object-position:center;
    transition:transform .8s var(--ease);
}
.about-feature-image:hover img{transform:scale(1.035)}
.image-tag{
    position:absolute;
    z-index:2;
    left:18px;
    bottom:18px;
    padding:10px 13px;
    border:1px solid rgba(255,255,255,.2);
    border-radius:999px;
    color:#fff;
    background:rgba(8,48,38,.72);
    backdrop-filter:blur(12px);
    font-size:9px;
    font-weight:800;
    letter-spacing:.11em;
    text-transform:uppercase;
}

.mission-vision-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
    margin-top:82px;
}
.mission-card,.vision-card{
    overflow:hidden;
    border-radius:22px;
    background:#101d19;
    color:#fff;
    box-shadow:0 18px 55px rgba(7,34,25,.10);
}
.vision-card{background:#092f26}
.card-image{
    position:relative;
    height:245px;
    overflow:hidden;
}
.card-image::after{
    content:"";
    position:absolute;
    inset:0;
    background:linear-gradient(0deg,rgba(3,25,19,.60),transparent 55%);
}
.card-image img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
    transition:transform .7s var(--ease);
}
.mission-card:hover .card-image img,
.vision-card:hover .card-image img{transform:scale(1.045)}
.card-index{
    position:absolute;
    z-index:2;
    left:20px;
    bottom:17px;
    color:rgba(255,255,255,.74);
    font-size:9px;
    font-weight:800;
    letter-spacing:.16em;
}
.card-body{padding:28px 30px 31px}
.card-label{
    display:block;
    margin-bottom:9px;
    color:var(--kenma-lime);
    font-size:9px;
    font-weight:800;
    letter-spacing:.17em;
    text-transform:uppercase;
}
.card-body h3{
    margin:0 0 15px;
    font-family:"Manrope",sans-serif;
    font-size:clamp(23px,2.3vw,32px);
    line-height:1.08;
    letter-spacing:-.04em;
}
.card-body p{
    margin:0 0 11px;
    color:rgba(255,255,255,.68);
    font-size:12px;
    line-height:1.75;
}

/* =========================================================
   OBJECTIVES
   ========================================================= */

.objectives-section{
    position:relative;
    padding:115px 0 125px;
    overflow:hidden;
    background:
        linear-gradient(rgba(247,249,247,.92),rgba(247,249,247,.92)),
        radial-gradient(circle at 80% 20%,rgba(11,90,67,.13),transparent 32%);
}
.objectives-section::before{
    content:"KENMA";
    position:absolute;
    right:-45px;
    top:40px;
    color:rgba(11,90,67,.035);
    font-family:"Manrope",sans-serif;
    font-size:180px;
    font-weight:800;
    letter-spacing:-.09em;
    pointer-events:none;
}
.objectives-heading{
    margin:0 auto;
    text-align:center;
}
.objectives-heading .section-eyebrow{justify-content:center}
.objectives-heading p{margin:0 auto}
.objectives-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:58px;
}
.objective-card{
    position:relative;
    min-height:245px;
    padding:27px 25px 25px;
    border:1px solid #dfe6e1;
    border-radius:17px;
    background:rgba(255,255,255,.82);
    box-shadow:0 7px 25px rgba(9,46,34,.045);
    transition:transform .3s var(--ease),box-shadow .3s var(--ease),border-color .3s ease;
}
.objective-card:hover{
    transform:translateY(-6px);
    border-color:rgba(11,90,67,.24);
    box-shadow:0 20px 42px rgba(9,46,34,.10);
}
.objective-icon{
    width:47px;
    height:47px;
    display:grid;
    place-items:center;
    margin-bottom:28px;
    border-radius:13px;
    color:var(--kenma-green);
    background:#e8f4e6;
    font-family:"Manrope",sans-serif;
    font-size:22px;
    font-weight:700;
}
.objective-card>span{
    position:absolute;
    top:30px;
    right:24px;
    color:#a2afa9;
    font-size:9px;
    font-weight:800;
    letter-spacing:.12em;
}
.objective-card h3{
    max-width:260px;
    margin:0 0 10px;
    color:var(--ink);
    font-family:"Manrope",sans-serif;
    font-size:18px;
    line-height:1.18;
    letter-spacing:-.025em;
}
.objective-card p{
    max-width:320px;
    margin:0;
    color:#6b7772;
    font-size:11px;
    line-height:1.7;
}

/* Scroll reveal */
.reveal{
    opacity:0;
    transform:translateY(22px);
    transition:opacity .7s var(--ease),transform .7s var(--ease);
}
.reveal.is-visible{
    opacity:1;
    transform:translateY(0);
}
.objectives-grid .reveal:nth-child(2){transition-delay:.07s}
.objectives-grid .reveal:nth-child(3){transition-delay:.12s}
.objectives-grid .reveal:nth-child(4){transition-delay:.04s}
.objectives-grid .reveal:nth-child(5){transition-delay:.10s}
.objectives-grid .reveal:nth-child(6){transition-delay:.16s}

@media(max-width:900px){
    .about-section,.objectives-section{padding:85px 0}
    .about-intro-grid{
        grid-template-columns:1fr;
        gap:38px;
        margin-top:55px;
    }
    .about-feature-image,.about-feature-image img{min-height:390px}
    .mission-vision-grid{
        grid-template-columns:1fr;
        margin-top:55px;
    }
    .objectives-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
    .about-shell,.objectives-shell{width:calc(100% - 30px)}
    .about-section,.objectives-section{padding:70px 0}
    .section-heading h2{font-size:39px}
    .about-feature-image,.about-feature-image img{min-height:300px}
    .mission-vision-grid{gap:14px}
    .card-image{height:210px}
    .card-body{padding:23px 21px 25px}
    .objectives-grid{
        grid-template-columns:1fr;
        margin-top:42px;
    }
    .objective-card{min-height:auto}
    .objectives-section::before{font-size:100px}
}


/* Premium emphasis for the sole membership option */
.membership-card-featured {
    position: relative;
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(183, 239, 132, 0.13),
            transparent 38%
        ),
        linear-gradient(
            115deg,
            rgba(174, 235, 128, 0.12),
            rgba(255, 255, 255, 0.045)
        );
    border-color: rgba(183, 239, 132, 0.32);
    box-shadow:
        0 20px 50px rgba(0, 0, 0, 0.12),
        inset 0 1px 0 rgba(255, 255, 255, 0.07);
}

.membership-card-featured:hover {
    border-color: rgba(190, 239, 143, 0.5);
    box-shadow: 0 26px 60px rgba(0, 0, 0, 0.2);
}


/* =========================================================
   BLOG / LATEST INSIGHTS
   ========================================================= */
.blog-section{
    position:relative;
    padding:110px 0 118px;
    overflow:hidden;
    background:#f5f8f6;
    color:var(--ink);
}
.blog-section::after{
    content:"";
    position:absolute;
    width:520px;
    height:520px;
    right:-260px;
    top:90px;
    border-radius:50%;
    background:radial-gradient(circle,rgba(36,111,73,.08),transparent 67%);
    pointer-events:none;
}
.blog-shell{position:relative;z-index:1;width:min(var(--container),calc(100% - 44px));margin:0 auto}
.blog-heading{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:40px;
    margin-bottom:48px;
}
.blog-heading h2{
    max-width:700px;
    margin:13px 0 0;
    font-family:"Manrope",sans-serif;
    font-size:clamp(38px,4.6vw,62px);
    line-height:1.02;
    letter-spacing:-.055em;
    color:#102d25;
}
.blog-heading .section-eyebrow{color:#287447}
.blog-heading .section-eyebrow::before{background:#287447}
.blog-view-all{
    flex:0 0 auto;
    display:inline-flex;
    align-items:center;
    gap:10px;
    padding-bottom:8px;
    border-bottom:1px solid rgba(16,45,37,.25);
    color:#174f36;
    font-size:11px;
    font-weight:800;
}
.blog-view-all span{font-size:17px;transition:transform .2s ease}
.blog-view-all:hover span{transform:translateX(4px)}
.blog-grid{
    display:grid;
    grid-template-columns:1.15fr 1fr 1fr;
    gap:15px;
}
.blog-card{
    position:relative;
    min-height:385px;
    display:flex;
    flex-direction:column;
    padding:27px 26px 24px;
    border:1px solid #dce6e0;
    border-radius:20px;
    background:#fff;
    box-shadow:0 12px 35px rgba(15,54,39,.045);
    overflow:hidden;
    transition:transform .3s var(--ease),box-shadow .3s ease,border-color .3s ease;
}
.blog-card::before{
    content:"";
    position:absolute;
    left:0;
    top:0;
    width:100%;
    height:4px;
    background:#a9df77;
    transform:scaleX(0);
    transform-origin:left;
    transition:transform .35s ease;
}
.blog-card:hover{transform:translateY(-7px);border-color:#c9dbd0;box-shadow:0 22px 50px rgba(15,54,39,.10)}
.blog-card:hover::before{transform:scaleX(1)}
.blog-card-featured{background:#0b3328;color:#fff;border-color:#0b3328}
.blog-card-featured::before{background:#b6ec83}
.blog-meta{display:flex;align-items:center;justify-content:space-between;gap:10px;color:#6c7b74;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.blog-card-featured .blog-meta{color:rgba(255,255,255,.48)}
.blog-card-line{width:42px;height:1px;margin:45px 0 22px;background:#a9df77}
.blog-card h3{max-width:470px;margin:0;color:#17342b;font-family:"Manrope",sans-serif;font-size:25px;line-height:1.12;letter-spacing:-.04em}
.blog-card-featured h3{color:#fff;font-size:30px}
.blog-card p{max-width:470px;margin:17px 0 0;color:#66746e;font-size:11px;line-height:1.75}
.blog-card-featured p{color:rgba(255,255,255,.62)}
.blog-read{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto;padding-top:28px;color:#21623f;font-size:10px;font-weight:800}
.blog-card-featured .blog-read{color:#b8ee85}
.blog-read span{font-size:16px;transition:transform .2s ease}
.blog-read:hover span{transform:translate(3px,-3px)}
@media(max-width:1000px){
    .blog-grid{grid-template-columns:1fr 1fr}
    .blog-card-featured{grid-column:1/-1}
}
@media(max-width:700px){
    .blog-section{padding:80px 0 90px}
    .blog-heading{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:35px}
    .blog-grid{grid-template-columns:1fr}
    .blog-card-featured{grid-column:auto}
    .blog-card,.blog-card-featured{min-height:340px}
    .blog-card-featured h3{font-size:26px}
}

.blog-page-hero{padding:125px 0 85px;background:#092d24;color:#fff}
.blog-page-hero h1{margin:15px 0 18px;font-family:"Manrope",sans-serif;font-size:clamp(46px,7vw,82px);line-height:.98;letter-spacing:-.06em}
.blog-page-hero p{max-width:650px;color:rgba(255,255,255,.65);line-height:1.75}
.blog-page-content{padding:85px 0;background:#f6f9f7}
.blog-articles{display:grid;gap:18px}
.blog-article{scroll-margin-top:110px;padding:42px 45px;border:1px solid #dce6e0;border-radius:22px;background:#fff}
.blog-article>span{color:#287447;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
.blog-article h2{max-width:850px;margin:12px 0 18px;color:#17342b;font-family:"Manrope",sans-serif;font-size:clamp(28px,4vw,46px);line-height:1.05;letter-spacing:-.045em}
.blog-article p{max-width:820px;margin:0 0 13px;color:#64736c;font-size:13px;line-height:1.8}
@media(max-width:600px){.blog-article{padding:28px 23px}.blog-page-hero{padding:100px 0 65px}}

/* Membership CTA alignment refinement — keep the action at the far right. */
.membership-note {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 20px;
}

.membership-note-copy {
    flex: 1 1 auto;
    min-width: 0;
}

.membership-options-cta {
    flex: 0 0 auto;
    margin-left: auto;
    min-width: 270px;
    min-height: 58px;
    padding: 16px 23px;
    justify-content: space-between;
    border: 1px solid rgba(210, 255, 174, .65);
    border-radius: 14px;
    color: #092d24;
    background: linear-gradient(135deg, #c9f68e 0%, #a8e85d 100%);
    box-shadow: 0 12px 28px rgba(0, 0, 0, .22), inset 0 1px 0 rgba(255, 255, 255, .45);
    font-size: 13px;
    font-weight: 900;
}

.membership-options-cta span {
    font-size: 22px;
}

.membership-options-cta:hover {
    color: #06271e;
    background: linear-gradient(135deg, #d8ffac 0%, #b9f477 100%);
    transform: translateY(-3px);
    box-shadow: 0 16px 34px rgba(0, 0, 0, .28);
}

@media (max-width: 767px) {
    .membership-note {
        align-items: stretch;
    }

    .membership-options-cta {
        width: 100%;
        min-width: 0;
        margin-left: 0;
    }
}
