/* FILE:
assets/css/gaisha-pricing.css
   Typography, color, and surface tokens align with gaisha-landing.css (body.gaisha-marketing --* vars).
*/

/* Page shell + hero utilities: assets/css/gaisha-utilities.css */

.gaisha-page,
.gaisha-pricing-page,
.gaisha-labs-support-page,
.campaign-access-section,
.included-section,
.future-support-section,
.pricing-final-cta,
.gaisha-subsidy-page,
.gaisha-destination-page{
    color:var(--text, #f4f9ff);
}

.gaisha-pricing-page h1,
.gaisha-pricing-page h2,
.gaisha-pricing-page h3,
.gaisha-labs-support-page h1,
.gaisha-labs-support-page h2,
.gaisha-labs-support-page h3,
.campaign-access-section h2,
.campaign-access-section h3,
.included-section h2,
.included-section h3,
.future-support-section h2,
.future-support-section h3,
.pricing-final-cta h2,
.pricing-final-cta h3,
.gaisha-subsidy-page h1,
.gaisha-destination-page h1{
    color:var(--text, #f4f9ff);
}

.pricing-farm-plans-section{
    padding:0 0 36px;
}

.included-section--pricing{
    padding-bottom:40px;
}

/* Farm Plans — monthly / annual billing toggle */
.gaisha-page--pricing .gaisha-pricing-billing{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    margin:20px auto 8px;
    max-width:100%;
}

.gaisha-page--pricing .gaisha-pricing-billing__toggle{
    display:inline-flex;
    align-items:stretch;
    gap:4px;
    padding:5px;
    border-radius:999px;
    background:rgba(6, 14, 32, .78);
    border:1px solid rgba(166, 201, 255, .16);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .06),
        0 12px 32px rgba(0, 0, 0, .22);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
}

.gaisha-page--pricing .gaisha-pricing-billing__option{
    appearance:none;
    border:none;
    margin:0;
    padding:11px 20px;
    border-radius:999px;
    background:transparent;
    color:rgba(228, 240, 255, .78);
    font-family:inherit;
    font-size:.9rem;
    font-weight:600;
    line-height:1.25;
    letter-spacing:.01em;
    white-space:nowrap;
    cursor:pointer;
    transition:background .2s ease, color .2s ease, box-shadow .2s ease;
}

.gaisha-page--pricing .gaisha-pricing-billing__option:hover{
    color:#f4fbff;
}

.gaisha-page--pricing .gaisha-pricing-billing__option.is-active{
    color:#0b1628;
    background:var(--gradient-primary, linear-gradient(135deg, #48f5ff 0%, #9a7cff 100%));
    box-shadow:0 8px 24px rgba(56, 237, 255, .22);
}

.gaisha-page--pricing .gaisha-pricing-billing__hint{
    margin:0;
    max-width:36rem;
    text-align:center;
    font-size:.8125rem;
    line-height:1.5;
}

/* Ecosystem narrative — Contributing Farmer Program */
.gaisha-page--pricing .gaisha-pricing-ecosystem{
    display:flex;
    flex-direction:column;
    gap:28px;
    margin:0 0 40px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__program{
    padding:32px 28px;
    text-align:center;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__title{
    margin-bottom:10px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__subtitle{
    margin:0 0 16px;
    font-size:clamp(1rem, 2vw, 1.15rem);
    font-weight:600;
    line-height:1.45;
    color:rgba(220, 235, 255, .88);
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__intro{
    max-width:46rem;
    margin:0 auto;
    font-size:.95rem;
    line-height:1.75;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__intro p{
    margin:0 0 .85rem;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem__intro p:last-child{
    margin-bottom:0;
}

.gaisha-page--pricing .gaisha-pricing-benefits{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
}

.gaisha-page--pricing .gaisha-pricing-benefit-group{
    padding:22px 20px;
}

.gaisha-page--pricing .gaisha-pricing-benefit-group h3,
.gaisha-page--pricing .gaisha-pricing-block-heading,
.gaisha-page--pricing .gaisha-pricing-vision__title{
    margin:0 0 12px;
    font-size:1.05rem;
    font-weight:700;
    line-height:1.35;
    color:var(--text, #f4f9ff);
}

.gaisha-page--pricing .gaisha-pricing-benefit-group__lead{
    margin:0 0 8px;
    font-size:.8125rem;
}

.gaisha-page--pricing .gaisha-pricing-benefit-group ul,
.gaisha-page--pricing .gaisha-pricing-reporting-card ul,
.gaisha-page--pricing .gaisha-pricing-feature-list{
    margin:0;
    padding:0;
    list-style:none;
}

.gaisha-page--pricing .gaisha-pricing-benefit-group ul li,
.gaisha-page--pricing .gaisha-pricing-reporting-card ul li,
.gaisha-page--pricing .gaisha-pricing-feature-list li{
    position:relative;
    padding-left:16px;
    margin-bottom:5px;
    font-size:.8125rem;
    line-height:1.45;
    color:rgba(245, 249, 255, .9);
}

.gaisha-page--pricing .gaisha-pricing-benefit-group ul li::before,
.gaisha-page--pricing .gaisha-pricing-reporting-card ul li::before,
.gaisha-page--pricing .gaisha-pricing-feature-list li::before{
    content:'';
    position:absolute;
    left:0;
    top:7px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--accent-cyan, #48f5ff);
    box-shadow:0 0 8px rgba(56, 237, 255, .24);
}

.gaisha-page--pricing .gaisha-pricing-block-heading{
    margin-bottom:14px;
    text-align:center;
    font-size:clamp(1.1rem, 2vw, 1.25rem);
}

.gaisha-page--pricing .gaisha-pricing-features-block__intro{
    max-width:46rem;
    margin:0 auto 22px;
    text-align:center;
    font-size:.9rem;
    line-height:1.65;
}

.gaisha-page--pricing .gaisha-pricing-features-block__intro p{
    margin:0 0 .75rem;
}

.gaisha-page--pricing .gaisha-pricing-features-block__intro p:last-child{
    margin-bottom:0;
}

.gaisha-page--pricing .gaisha-pricing-features-grid{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:18px;
    max-width:1200px;
    margin:0 auto;
    align-items:stretch;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .included-card.gaisha-glass-card{
    min-height:0;
    height:100%;
    padding:20px 18px;
    display:flex;
    flex-direction:column;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .included-icon{
    flex-shrink:0;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .gaisha-pricing-feature-list{
    flex:1;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .gaisha-pricing-feature-list li{
    margin-bottom:4px;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .gaisha-pricing-feature-list li:last-child{
    margin-bottom:0;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .included-card h4,
.gaisha-page--pricing .gaisha-pricing-operational-grid .included-card h4,
.gaisha-page--pricing .gaisha-pricing-reporting-card h4{
    margin:0 0 8px;
    font-size:.95rem;
    font-weight:700;
    line-height:1.35;
}

.gaisha-page--pricing .gaisha-pricing-features-grid .included-card p,
.gaisha-page--pricing .gaisha-pricing-operational-grid .included-card p{
    margin:0 0 8px;
    font-size:.8125rem;
}

.gaisha-page--pricing .gaisha-pricing-operational-grid{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
    max-width:1200px;
    margin:0 auto;
    align-items:stretch;
}

.gaisha-page--pricing .gaisha-pricing-operational-grid .included-card.gaisha-glass-card{
    min-height:0;
    height:auto;
    padding:20px 18px;
    text-align:left;
    display:flex;
    flex-direction:column;
}

.gaisha-page--pricing .gaisha-pricing-operational-grid .gaisha-pricing-feature-list{
    flex:1;
}

.gaisha-page--pricing .gaisha-pricing-operational-grid .gaisha-pricing-feature-list li{
    margin-bottom:4px;
}

.gaisha-page--pricing .gaisha-pricing-operational-grid .gaisha-pricing-feature-list li:last-child{
    margin-bottom:0;
}

.gaisha-page--pricing .gaisha-pricing-operational-card__badge{
    display:inline-block;
    align-self:flex-start;
    margin:0 0 8px;
    padding:3px 10px;
    border-radius:999px;
    font-size:.68rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:rgba(212, 168, 83, .95);
    border:1px solid rgba(212, 168, 83, .35);
    background:rgba(212, 168, 83, .08);
}

.gaisha-page--pricing .gaisha-pricing-reporting-grid{
    display:grid;
    grid-template-columns:repeat(2, minmax(0, 1fr));
    gap:18px;
}

.gaisha-page--pricing .gaisha-pricing-reporting-card{
    padding:22px 20px;
}

.gaisha-page--pricing .gaisha-pricing-vision{
    padding:28px 32px;
    text-align:center;
}

.gaisha-page--pricing .gaisha-pricing-vision__text{
    max-width:46rem;
    margin:0 auto;
    font-size:.95rem;
    line-height:1.75;
}

.gaisha-page--pricing .gaisha-pricing-vision__text p{
    margin:0 0 .85rem;
}

.gaisha-page--pricing .gaisha-pricing-vision__text p:last-child{
    margin-bottom:0;
}

.gaisha-page--pricing .gaisha-pricing-vision__list{
    margin:0 0 .85rem;
    padding:0;
    list-style:none;
    text-align:left;
    max-width:28rem;
    margin-left:auto;
    margin-right:auto;
}

.gaisha-page--pricing .gaisha-pricing-vision__list li{
    position:relative;
    padding-left:16px;
    margin-bottom:5px;
    font-size:.875rem;
    line-height:1.45;
}

.gaisha-page--pricing .gaisha-pricing-vision__list li::before{
    content:'';
    position:absolute;
    left:0;
    top:8px;
    width:5px;
    height:5px;
    border-radius:50%;
    background:var(--accent-cyan, #48f5ff);
    box-shadow:0 0 8px rgba(56, 237, 255, .24);
}

.gaisha-page--pricing .gaisha-pricing-plans-header{
    margin:0 0 8px;
    text-align:center;
}

.gaisha-page--pricing .gaisha-pricing-plans-lead{
    max-width:40rem;
    margin:0 auto 4px;
    font-size:.9rem;
    line-height:1.55;
}

.gaisha-page--pricing .gaisha-pricing-farm-plans{
    display:block;
    width:100%;
    margin-top:0;
    padding-top:0;
    border-top:0;
    position:relative;
    z-index:3;
}

.gaisha-page--pricing .gaisha-pricing-farm-plans-section{
    padding-top:8px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem-section,
.gaisha-page--pricing .gaisha-pricing-features-section,
.gaisha-page--pricing .gaisha-pricing-intelligence-section{
    padding-top:36px;
    padding-bottom:8px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem--program{
    margin-bottom:28px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem--program .gaisha-section-actions{
    margin-top:24px;
}

.gaisha-page--pricing .gaisha-pricing-ecosystem--supplementary{
    margin-top:0;
    padding-top:0;
}

.gaisha-page--pricing .gaisha-pricing-intelligence-section .gaisha-pricing-vision{
    margin-top:28px;
}

.gaisha-page--pricing #farm-plans .pricing-price__save{
    display:block;
    margin-top:4px;
    font-size:.75rem;
    font-weight:600;
    letter-spacing:.03em;
    color:rgba(212, 168, 83, .92);
}

.gaisha-page--pricing #farm-plans .pricing-price__save[hidden]{
    display:none !important;
}

.gaisha-page--pricing #farm-plans .pricing-card-positioning{
    margin:-2px 0 10px;
    font-size:.78rem;
    font-weight:600;
    letter-spacing:.02em;
    line-height:1.4;
    color:rgba(200, 220, 255, .82);
}

@media (max-width:1100px){
    .gaisha-page--pricing .gaisha-pricing-benefits{
        grid-template-columns:1fr;
    }

    .gaisha-page--pricing .gaisha-pricing-features-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr));
    }

    .gaisha-page--pricing .gaisha-pricing-operational-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }
}

@media (max-width:768px){
    .gaisha-page--pricing .gaisha-pricing-ecosystem__program{
        padding:24px 18px;
    }

    .gaisha-page--pricing .gaisha-pricing-features-grid,
    .gaisha-page--pricing .gaisha-pricing-operational-grid,
    .gaisha-page--pricing .gaisha-pricing-reporting-grid{
        grid-template-columns:1fr;
    }
}

/* Section titles: .gaisha-section-title in gaisha-utilities.css */

/* Farm Plans — isolated from generic .gaisha-glass-card / .gaisha-btn rules */
.gaisha-page--pricing #farm-plans .pricing-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:22px;
    align-items:stretch;
    position:relative;
    z-index:2;
    padding-top:20px;
    margin-bottom:0;
}

.gaisha-page--pricing #farm-plans .pricing-card,
.gaisha-page--pricing #farm-plans .pricing-card.gaisha-glass-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:100%;
    height:auto;
    padding:34px 20px 18px;
    border-radius:var(--gaisha-radius-card-lg, 22px);
    overflow:visible;
    box-sizing:border-box;
}

.gaisha-page--pricing #farm-plans .pricing-card.gaisha-glass-card:hover{
    transform:translateY(-4px);
}

/* Content stack (no inner wrapper in markup) */
.gaisha-page--pricing #farm-plans .pricing-card > h3,
.gaisha-page--pricing #farm-plans .pricing-card > .pricing-activation,
.gaisha-page--pricing #farm-plans .pricing-card > .pricing-price,
.gaisha-page--pricing #farm-plans .pricing-card > .pricing-duration{
    flex-shrink:0;
}

.gaisha-page--pricing #farm-plans .pricing-card > ul{
    flex:1 1 auto;
    min-height:0;
    margin-bottom:24px;
}

.pricing-badge{
    position:absolute;
    top:-14px;
    left:50%;
    transform:translateX(-50%);
    z-index:5;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:26px;
    padding:5px 14px;
    margin:0;
    border-radius:999px;
    font-size:12px;
    font-weight:700;
    letter-spacing:.04em;
    line-height:1.25;
    white-space:normal;
    text-align:center;
    max-width:calc(100% - 20px);
    background:#ff0076;
    color:#fff;
    border:1px solid rgba(48,222,220,.45);
    box-shadow:0 0 18px rgba(48,222,220,.14);
    backdrop-filter:blur(12px);
}

.pricing-badge.purple{
    background:rgb(146 0 237);
    color:#fff;
    border:1px solid rgba(163,134,255,.42);
    box-shadow:0 0 18px rgba(136,116,255,.16);
}

/* Founding Farmer badge — centered on card */
.pricing-grid .pricing-card:first-child .pricing-badge:not(.purple),
.pricing-grid .pricing-card:nth-child(1) .pricing-badge:not(.purple){
    left:50%;
    right:auto;
    transform:translateX(-50%);
}

.pricing-card h3{
    margin:0 0 8px;
    font-size:22px;
    font-weight:800;
    line-height:1.2;
    letter-spacing:-.02em;
    color:var(--text, #f4f9ff);
}

.pricing-activation{
    margin:0 0 6px;
    font-size:var(--gaisha-type-caption, .8125rem);
    line-height:1.35;
}

.pricing-activation--founding{
    display:flex;
    flex-wrap:wrap;
    align-items:baseline;
    gap:8px;
}

.pricing-activation__strike{
    text-decoration:line-through;
    color:rgba(200, 214, 235, .55);
}

.pricing-activation__now{
    color:rgba(245, 249, 255, .92);
    font-weight:600;
}

/* Founding Farmer — premium scarcity positioning */
.gaisha-page--pricing #farm-plans .pricing-card--founding{
    border-color:rgba(212, 168, 83, .22);
    box-shadow:
        0 0 0 1px rgba(212, 168, 83, .08) inset,
        0 18px 40px rgba(0, 0, 0, .28);
}

.pricing-founding-scarcity{
    margin:0 0 10px;
}

.pricing-founding-scarcity__badge{
    display:inline-flex;
    align-items:center;
    margin:0 0 8px;
    padding:6px 12px;
    border-radius:999px;
    font-size:.72rem;
    font-weight:700;
    letter-spacing:.04em;
    text-transform:uppercase;
    color:#f8e8c8;
    background:
        linear-gradient(135deg, rgba(212, 168, 83, .22) 0%, rgba(180, 130, 45, .14) 100%);
    border:1px solid rgba(212, 168, 83, .38);
    box-shadow:
        0 0 18px rgba(212, 168, 83, .16),
        inset 0 1px 0 rgba(255, 236, 190, .12);
}

.pricing-founding-scarcity__subtext{
    margin:0 0 10px;
    font-size:.78rem;
    line-height:1.45;
    color:rgba(220, 228, 240, .78);
}

.pricing-founding-scarcity__tags{
    display:flex;
    flex-wrap:wrap;
    gap:6px;
    margin:0 0 4px;
}

.pricing-founding-tag{
    display:inline-flex;
    align-items:center;
    padding:4px 9px;
    border-radius:999px;
    font-size:.68rem;
    font-weight:600;
    letter-spacing:.02em;
    color:rgba(232, 210, 160, .92);
    background:rgba(212, 168, 83, .08);
    border:1px solid rgba(212, 168, 83, .2);
}

.pricing-price{
    margin:0 0 4px;
    font-size:36px;
    font-weight:800;
    line-height:1;
    letter-spacing:-.02em;
    color:var(--text, #f4f9ff);
}

.pricing-price .pricing-price__period{
    display:inline;
    margin-left:2px;
    font-size:.8125rem;
    font-weight:500;
    color:rgba(220,235,255,.72);
    vertical-align:baseline;
}

.purple-text{
    color:var(--accent-purple, #a386ff);
}

.pricing-duration{
    margin:0 0 12px;
    font-size:var(--gaisha-type-caption, .8125rem);
    line-height:1.35;
}

.gaisha-page--pricing #farm-plans .pricing-card ul{
    padding:0;
    list-style:none;
}

.pricing-card ul li{
    position:relative;
    padding-left:18px;
    margin-bottom:6px;
    color:rgba(245,249,255,.92);
    font-size:.875rem;
    line-height:1.45;
}

.pricing-card ul li:last-child{
    margin-bottom:0;
}

.pricing-card ul li::before{
    content:'';
    position:absolute;
    left:0;
    top:7px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--accent-cyan, #48f5ff);
    box-shadow:0 0 10px rgba(56,237,255,.28);
}

/* Primary button — card width only (override global .gaisha-btn inline-flex) */
.gaisha-page--pricing #farm-plans .pricing-card .pricing-button,
.gaisha-page--pricing #farm-plans .pricing-card .pricing-button.gaisha-btn{
    position:relative;
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:stretch;
    width:100%;
    max-width:100%;
    height:46px;
    min-height:46px;
    margin-top:auto;
    margin-left:0;
    margin-right:0;
    flex-shrink:0;
    box-sizing:border-box;
}

.pricing-group{
    display:none;
    padding-bottom:28px;
}

.pricing-group.active{
    display:block;
}

.coming-soon-card{
    padding:80px;
    border-radius:28px;
    text-align:center;
    background:rgba(11,20,42,.78);
    border:1px solid rgba(166,201,255,.18);
    color:rgba(220,235,255,.78);
    font-size:1rem;
    line-height:1.75;
}

.gaisha-page--pricing #farm-plans .pricing-notice,
.gaisha-page--pricing #farm-plans .pricing-notice.gaisha-glass-card{
    display:block;
    width:100%;
    max-width:100%;
    margin-top:28px;
    margin-bottom:0;
    padding:20px 24px;
    position:relative;
    z-index:1;
    clear:both;
    box-sizing:border-box;
    border-radius:var(--gaisha-radius-card, 12px);
}

@media (max-width:1100px){

    .gaisha-page--pricing #farm-plans .pricing-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

}

@media (max-width:768px){

    .pricing-left h1{
        font-size:44px;
        line-height:1.08;
    }

    .pricing-left p{
        font-size:15px;
    }

    .pricing-section-title,
    .campaign-section-title{
        font-size:28px;
    }

    .gaisha-page--pricing #farm-plans .pricing-price{
        font-size:34px;
    }

    .gaisha-page--pricing #farm-plans .pricing-grid{
        grid-template-columns:1fr;
        gap:16px;
    }

    .gaisha-page--pricing #farm-plans .pricing-card,
    .gaisha-page--pricing #farm-plans .pricing-card.gaisha-glass-card{
        padding:34px 18px 16px;
    }

    .gaisha-page--pricing #farm-plans .pricing-card .pricing-button,
    .gaisha-page--pricing #farm-plans .pricing-card .pricing-button.gaisha-btn{
        height:44px;
        min-height:44px;
        font-size:14px;
    }

    .gaisha-pricing-hero{
        padding:96px 0 52px;
    }

}

/* ADD BELOW EXISTING CSS */

.campaign-access-section{
    padding:52px 0 34px;
}

.campaign-section-title{
    text-align:center;
    font-size:30px;
    line-height:1.08;
    margin:0 0 24px;
    letter-spacing:-.03em;
    font-weight:800;
    color:var(--text, #f4f9ff);
}

.campaign-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.campaign-card.gaisha-glass-card{
    min-height:250px;
    padding:22px 20px;
    display:flex;
    flex-direction:column;
}

.campaign-card-head{
    display:grid;
    grid-template-columns:54px 1fr;
    gap:14px;
    align-items:start;
    margin-bottom:20px;
}

.campaign-icon{
    width:50px;
    height:50px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:radial-gradient(circle at center,rgba(72,245,255,.12),rgba(11,20,42,.4));
    border:1px solid rgba(48,222,220,.28);
    color:var(--accent-cyan, #48f5ff);
    font-size:27px;
    line-height:1;
    margin:0;
}

.campaign-card.purple .campaign-icon{
    color:var(--accent-purple, #a386ff);
    background:radial-gradient(circle at center,rgba(163,134,255,.16),rgba(11,20,42,.4));
    border-color:rgba(163,134,255,.28);
}

.campaign-card h3{
    font-size:17px;
    line-height:1.18;
    margin:1px 0 8px;
    letter-spacing:-.02em;
    font-weight:800;
    color:var(--text, #f4f9ff);
}

.campaign-price{
    font-size:15px;
    line-height:1.1;
    font-weight:700;
    color:#34e5dd;
    margin:0;
}

.campaign-card.purple .campaign-price,
.campaign-price.purple-text{
    color:var(--accent-purple, #a386ff);
}

.campaign-card p{
    margin:0;
}

/* Outline button surface: .gaisha-outline-button in gaisha-utilities.css */
.campaign-button,
.gaisha-outline-button{
    margin-top:auto;
    min-height:40px;
}

@media (max-width:1100px){
    .campaign-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:640px){
    .campaign-grid{
        grid-template-columns:1fr;
    }

    .campaign-card{
        min-height:auto;
    }
}

.future-harvest-banner{
    position:relative;
    max-width:1280px;
    margin:34px auto 22px;
    min-height:78px;
    padding:18px 28px;
    border-radius:10px;
    border:1px solid rgba(163,134,255,.45);
    display:flex;
    align-items:center;
    gap:20px;
    overflow:hidden;
    isolation:isolate;
}

.future-harvest-banner::before{
    content:'';
    position:absolute;
    inset:0;
    background:
        radial-gradient(circle at 82% 50%,rgba(170,60,255,.16),transparent 22%),
        linear-gradient(90deg,rgba(65,24,105,.62),rgba(12,18,36,.72));
    z-index:0;
    pointer-events:none;
}

.future-harvest-banner::after{
    content:'';
    position:absolute;
    top:50%;
    right:18px;
    width:245px;
    height:86px;
    transform:translateY(-50%);
    background-image:
        linear-gradient(
            90deg,
            rgba(25,8,45,1) 0%,
            rgba(25,8,45,.75) 18%,
            rgba(25,8,45,.25) 38%,
            rgba(25,8,45,0) 70%
        ),
        radial-gradient(
            circle at center,
            rgba(177,75,255,.16),
            rgba(177,75,255,0) 64%
        ),
        url('../img/futureharvest.png');
    background-repeat:no-repeat;
    background-size:100% 100%,100% 100%,contain;
    background-position:center,center,center right;
    opacity:.34;
    mix-blend-mode:screen;
    filter:
        saturate(1.35)
        contrast(1.08)
        brightness(1.08)
        drop-shadow(0 0 14px rgba(175,80,255,.35));
    pointer-events:none;
    z-index:1;
    mask-image:linear-gradient(
        90deg,
        transparent 0%,
        rgba(0,0,0,.2) 18%,
        black 42%,
        black 100%
    );
    -webkit-mask-image:linear-gradient(
        90deg,
        transparent 0%,
        rgba(0,0,0,.2) 18%,
        black 42%,
        black 100%
    );
}

.future-harvest-banner > *{
    position:relative;
    z-index:2;
}

.future-banner-icon{
    width:48px;
    height:48px;
    border-radius:8px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--accent-purple, #a386ff);
    font-size:30px;
    flex:0 0 auto;
    background:transparent;
    border:0;
    box-shadow:none;
}

.future-harvest-banner p{
    font-size:.9375rem;
    line-height:1.75;
    margin:0;
    color:rgba(245,249,255,.94);
    flex:1 1 auto;
    max-width:calc(100% - 280px);
}

.sponsor-title{
    margin:22px 0 22px;
    position:relative;
}

.sponsor-title::before,
.included-section .campaign-section-title::before,
.future-support-section .campaign-section-title::before{
    content:'';
    display:block;
    width:28px;
    height:2px;
    margin:0 auto 10px;
    background:linear-gradient(90deg,transparent,var(--accent-cyan, #48f5ff),transparent);
}

.impact-grid{
    max-width:1280px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:18px;
}

.impact-card.gaisha-glass-card{
    min-height:118px;
    padding:20px 18px;
    border-radius:var(--gaisha-radius-sm, 10px);
    text-align:center;
    display:flex;
    flex-direction:column;
    justify-content:center;
}

.impact-icon{
    color:var(--accent-cyan, #48f5ff);
    font-size:25px;
    line-height:1;
    margin-bottom:12px;
}

.impact-price{
    font-size:21px;
    line-height:1.1;
    font-weight:800;
    letter-spacing:-.02em;
    margin-bottom:8px;
    color:var(--text, #f4f9ff);
}

.impact-name{
    line-height:1.35;
}

.included-section{
    padding-top:28px;
}

.included-section .campaign-section-title{
    margin-bottom:22px;
}

.included-grid{
    max-width:1200px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(6,minmax(0,1fr));
    gap:14px;
}

.included-card.gaisha-glass-card{
    padding:20px 14px;
    border-radius:var(--gaisha-radius-sm, 10px);
    text-align:center;
}

.included-icon{
    width:44px;
    height:44px;
    margin:0 auto 12px;
    border-radius:10px;
    display:flex;
    align-items:center;
    justify-content:center;
    color:var(--accent-cyan, #48f5ff);
    font-size:28px;
    background:transparent;
    border:0;
}

.included-card h3{
    font-size:13px;
    line-height:1.25;
    margin:0 0 8px;
    font-weight:800;
    letter-spacing:-.01em;
    color:var(--text, #f4f9ff);
}

.included-card p{
    font-size:11.5px;
    line-height:1.45;
    margin:0;
}

.future-support-section{
    padding:30px 0 70px;
}

.future-support-section .campaign-section-title{
    margin-bottom:22px;
}

.future-support-grid{
    max-width:1240px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:26px;
}

.future-support-card.gaisha-glass-card{
    min-height:180px;
    padding:24px;
    border-radius:var(--gaisha-radius-sm, 10px);
    background:
        radial-gradient(circle at left,rgba(72,245,255,.08),transparent 36%),
        var(--gaisha-surface);
    display:grid;
    grid-template-columns:74px 1fr;
    column-gap:18px;
    align-items:start;
}

.future-support-card.gaisha-purple-card{
    background:
        radial-gradient(circle at left,rgba(163,134,255,.1),transparent 36%),
        var(--gaisha-surface);
}

.future-support-icon{
    width:66px;
    height:66px;
    margin:0;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:40px;
    line-height:1;
    color:var(--accent-cyan, #48f5ff);
    background:rgba(72,245,255,.06);
    border:0;
}

.purple-icon{
    color:var(--accent-purple, #a386ff);
    background:rgba(163,134,255,.08);
}

.future-support-card h3{
    font-size:21px;
    line-height:1.15;
    margin:2px 0 10px;
    font-weight:800;
    letter-spacing:-.02em;
    color:var(--text, #f4f9ff);
}

.future-support-card p{
    margin:0 0 18px;
}

.future-support-card .campaign-button,
.future-support-card .gaisha-outline-button{
    grid-column:1 / -1;
    margin-top:12px;
}

@media (max-width:1100px){
    .impact-grid{
        grid-template-columns:repeat(2,minmax(0,1fr));
    }

    .included-grid{
        grid-template-columns:repeat(3,minmax(0,1fr));
    }

    .future-support-grid{
        grid-template-columns:1fr;
    }
}

@media (max-width:768px){
    .future-harvest-banner::after{
        opacity:.16;
        right:-70px;
        width:230px;
    }

    .future-harvest-banner p{
        max-width:100%;
    }
}

@media (max-width:640px){
    .impact-grid,
    .included-grid,
    .future-support-grid{
        grid-template-columns:1fr;
    }

    .future-harvest-banner{
        align-items:flex-start;
        padding:18px;
    }
}

.pricing-button.disabled,
.campaign-button.disabled {
    opacity: .45;
    pointer-events: none;
    cursor: not-allowed;
}

/* Subsidy application — panel shell in gaisha-utilities.css */
.gaisha-page--subsidy .gaisha-section{
    padding-bottom:64px;
}

.gaisha-subsidy-about{
    max-width:820px;
    margin:0 auto 24px;
    padding:28px 32px;
    text-align:center;
}

.gaisha-subsidy-about__title{
    margin:0 0 12px;
    font-size:clamp(1.15rem, 2vw, 1.35rem);
    font-weight:700;
    line-height:1.35;
    color:var(--text, #f4f9ff);
}

.gaisha-subsidy-about__text{
    margin:0;
    font-size:.95rem;
    line-height:1.75;
}

.gaisha-subsidy-benefits{
    display:grid;
    grid-template-columns:repeat(3, minmax(0, 1fr));
    gap:18px;
    max-width:1200px;
    margin:0 auto 28px;
}

.gaisha-subsidy-benefit{
    padding:22px 20px;
}

.gaisha-subsidy-benefit h3{
    margin:0 0 10px;
    font-size:1rem;
    font-weight:700;
    line-height:1.35;
    color:var(--text, #f4f9ff);
}

.gaisha-subsidy-benefit p{
    margin:0;
    font-size:.875rem;
    line-height:1.6;
}

.gaisha-subsidy-form-intro{
    margin-bottom:24px;
    text-align:center;
}

.gaisha-subsidy-form-intro__title{
    margin:0 0 10px;
    font-size:clamp(1.1rem, 2vw, 1.25rem);
    font-weight:700;
    line-height:1.35;
    color:var(--text, #f4f9ff);
}

.gaisha-subsidy-form-intro__text{
    margin:0 auto;
    max-width:42rem;
    font-size:.9rem;
    line-height:1.65;
}

.gaisha-subsidy-form-missing{
    margin:0;
    padding:18px 20px;
    border-radius:14px;
    background:rgba(255,80,80,.08);
    border:1px solid rgba(255,120,120,.25);
    color:rgba(255,220,220,.95);
    font-size:15px;
    line-height:1.5;
}

.gaisha-subsidy-form .gform_wrapper{
    margin:0;
}

.gaisha-subsidy-editor-content{
    width:100%;
}

.gaisha-subsidy-editor-content .gform_wrapper{
    width:100%;
}

.gaisha-subsidy-form .gsection_title,
.gaisha-subsidy-form .gsection .gsection_title{
    margin:28px 0 14px;
    padding-bottom:8px;
    border-bottom:1px solid rgba(166, 201, 255, .14);
    color:var(--text, #f4f9ff) !important;
    font-size:1rem !important;
    font-weight:700 !important;
    letter-spacing:.01em;
}

.gaisha-subsidy-form .gfield_label,
.gaisha-subsidy-form .gform-field-label,
.gaisha-subsidy-form legend{
    color:rgba(245,249,255,.94) !important;
    font-size:.9375rem !important;
    font-weight:700 !important;
}

.gaisha-subsidy-form .gfield_description,
.gaisha-subsidy-form .gform_fileupload_rules,
.gaisha-subsidy-form .instruction{
    color:rgba(220,235,255,.72) !important;
    font-size:.8125rem !important;
}

.gaisha-subsidy-form input[type="text"],
.gaisha-subsidy-form input[type="email"],
.gaisha-subsidy-form input[type="tel"],
.gaisha-subsidy-form input[type="number"],
.gaisha-subsidy-form input[type="url"],
.gaisha-subsidy-form input[type="file"],
.gaisha-subsidy-form textarea,
.gaisha-subsidy-form select{
    background:rgba(4,10,24,.55) !important;
    border:1px solid rgba(166,201,255,.18) !important;
    border-radius:12px !important;
    color:var(--text, #f4f9ff) !important;
    font-size:.9375rem !important;
    box-shadow:none !important;
}

.gaisha-subsidy-form input:focus,
.gaisha-subsidy-form textarea:focus,
.gaisha-subsidy-form select:focus{
    border-color:rgba(48,222,220,.55) !important;
    outline:none !important;
    box-shadow:0 0 0 3px rgba(56,237,255,.12) !important;
}

.gaisha-subsidy-form .gform_button,
.gaisha-subsidy-form input[type="submit"]{
    width:100%;
    height:48px !important;
    border:none !important;
    border-radius:12px !important;
    font-size:.9375rem !important;
    font-weight:700 !important;
    letter-spacing:.02em !important;
    color:#0d1d2b !important;
    background:var(--gradient-primary, linear-gradient(135deg, #48f5ff 0%, #9a7cff 100%)) !important;
    cursor:pointer;
    box-shadow:0 10px 28px rgba(56,237,255,.2) !important;
    transition:transform .2s ease, box-shadow .2s ease;
}

.gaisha-subsidy-form .gform_button:hover,
.gaisha-subsidy-form input[type="submit"]:hover{
    transform:translateY(-1px);
    box-shadow:0 14px 36px rgba(56,237,255,.28) !important;
}

.gaisha-subsidy-form .gform_confirmation_message{
    color:rgba(245,249,255,.94);
    font-size:1rem;
    line-height:1.75;
}

@media (max-width:900px){
    .gaisha-subsidy-benefits{
        grid-template-columns:1fr;
    }

    .gaisha-subsidy-about{
        padding:24px 20px;
    }
}

/* Destination placeholder — hero in template-parts; panel in utilities */
.gaisha-page--destination .gaisha-section{
    padding-bottom:64px;
}

.gaisha-destination-actions{
    margin-top:0;
}

.gaisha-destination-actions .destination-cta{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:min(100%, 280px);
    height:48px;
    padding:0 24px;
    text-decoration:none;
}

.gaisha-destination-actions .pricing-button.destination-cta{
    width:auto;
    margin:0;
}

.gaisha-destination-actions .campaign-button.destination-cta{
    border-radius:12px;
}

.gaisha-destination-note{
    margin:18px 0 0;
    font-size:.8125rem;
    line-height:1.55;
    color:rgba(220,235,255,.72);
}

.labs-support-harvest-section{
    padding-top:12px;
    padding-bottom:28px;
}

.labs-support-harvest-section .campaign-section-title{
    margin-bottom:16px;
}

/* Pricing page final CTA */
.pricing-final-cta{
    padding:28px 0 64px;
    text-align:center;
}

.pricing-final-cta .campaign-section-title{
    margin-bottom:8px;
}

.pricing-final-cta .gaisha-section-actions{
    margin-top:22px;
}

.pricing-cta-grid{
    max-width:720px;
    margin:0 auto;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
}

.pricing-cta-card.gaisha-glass-card{
    min-height:168px;
    padding:22px 22px 18px;
    display:flex;
    flex-direction:column;
}

.pricing-cta-card h3{
    margin:0 0 10px;
    font-size:19px;
    line-height:1.15;
    font-weight:800;
    letter-spacing:-.02em;
}

.pricing-cta-card p{
    margin:0 0 16px;
    flex:1 1 auto;
}

.pricing-cta-card .campaign-button{
    margin-top:auto;
}

@media (max-width:768px){
    .pricing-cta-grid{
        grid-template-columns:1fr;
        max-width:100%;
    }
}

/* ==========================================================================
   Support the Lab — cinematic hero + packages
   ========================================================================== */

.gaisha-page--lab-support .support-lab-hero{
    position:relative;
    width:100vw;
    margin-left:calc(50% - 50vw);
    margin-right:calc(50% - 50vw);
    min-height:680px;
    overflow:hidden;
    background-color:#020812;
    background-image:
        linear-gradient(90deg, rgba(2, 8, 18, .96) 0%, rgba(2, 8, 18, .78) 38%, rgba(2, 8, 18, .2) 75%),
        linear-gradient(180deg, rgba(2, 8, 18, .1), rgba(2, 8, 18, .95)),
        var(--support-lab-hero-image, url('../img/gaisha-lab-hero.png'));
    background-size:cover;
    background-position:center right;
    background-repeat:no-repeat;
}

.gaisha-page--lab-support .support-lab-hero-inner{
    max-width:1440px;
    min-height:680px;
    margin:0 auto;
    padding:clamp(3rem, 6vw, 4.5rem) clamp(1.25rem, 3vw, 2.5rem);
    display:flex;
    align-items:center;
    box-sizing:border-box;
}

.gaisha-page--lab-support .support-lab-hero-content{
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    gap:1rem;
    max-width:620px;
    min-width:0;
}

.gaisha-page--lab-support .support-lab-hero-title{
    margin:0;
    font-size:clamp(2.25rem, 3.2vw, 3.25rem);
    line-height:1.08;
    letter-spacing:-.03em;
    font-weight:800;
    color:#f4f9ff;
}

.gaisha-page--lab-support .support-lab-hero-subtitle{
    margin:0;
    font-size:clamp(1.05rem, 1.35vw, 1.2rem);
    line-height:1.5;
    font-weight:500;
    color:rgba(244, 249, 255, .94);
    text-shadow:0 2px 24px rgba(0, 0, 0, .45);
}

.gaisha-page--lab-support .support-lab-hero-text{
    margin:0;
    font-size:clamp(.92rem, 1.1vw, 1rem);
    line-height:1.7;
    color:rgba(220, 235, 255, .78);
    max-width:34rem;
}

.gaisha-page--lab-support .support-lab-hero-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:auto;
    max-width:100%;
    min-height:44px;
    margin-top:.35rem;
    padding:.65rem 1.35rem;
    font-size:.875rem;
    font-weight:600;
}

.gaisha-page--lab-support .support-lab-hero-below{
    position:relative;
    z-index:2;
    max-width:1440px;
    margin-top:-2.5rem;
    padding-bottom:2rem;
    display:flex;
    flex-direction:column;
    gap:1rem;
}

.gaisha-page--lab-support .support-lab-feature-strip{
    display:grid;
    grid-template-columns:repeat(4, minmax(0, 1fr));
    gap:0;
    border-radius:18px;
    border:1px solid transparent;
    background:
        linear-gradient(rgba(6, 14, 32, .58), rgba(6, 14, 32, .58)) padding-box,
        linear-gradient(135deg, rgba(48, 222, 220, .38), rgba(145, 99, 202, .32)) border-box;
    backdrop-filter:blur(20px) saturate(145%);
    -webkit-backdrop-filter:blur(20px) saturate(145%);
    box-shadow:
        0 20px 56px rgba(0, 0, 0, .38),
        inset 0 1px 0 rgba(255, 255, 255, .09),
        0 0 40px rgba(48, 222, 220, .08);
    overflow:hidden;
}

.gaisha-page--lab-support .support-lab-feature-card{
    display:flex;
    flex-direction:row;
    align-items:center;
    gap:clamp(.7rem, 1.1vw, .95rem);
    min-width:0;
    padding:clamp(1rem, 1.5vw, 1.2rem) clamp(.85rem, 1.2vw, 1rem);
    border-right:1px solid rgba(166, 201, 255, .1);
}

.gaisha-page--lab-support .support-lab-feature-card:last-child{
    border-right:none;
}

.gaisha-page--lab-support .support-lab-feature-card__icon{
    flex-shrink:0;
    width:40px;
    height:40px;
    display:grid;
    place-items:center;
    border-radius:12px;
    color:var(--accent-cyan, #48f5ff);
    background:rgba(33, 69, 144, .22);
}

.gaisha-page--lab-support .support-lab-feature-card__icon svg{
    width:22px;
    height:22px;
}

.gaisha-page--lab-support .support-lab-feature-card__body{
    min-width:0;
}

.gaisha-page--lab-support .support-lab-feature-card__title{
    margin:0 0 .35rem;
    font-size:.9rem;
    line-height:1.25;
    font-weight:600;
    color:#f4f9ff;
}

.gaisha-page--lab-support .support-lab-feature-card__text{
    margin:0;
    font-size:.78rem;
    line-height:1.45;
    color:rgba(220, 235, 255, .72);
}

.gaisha-page--lab-support .support-lab-support-strip{
    display:grid;
    grid-template-columns:minmax(9.5rem, auto) minmax(0, 1fr) auto;
    align-items:center;
    gap:clamp(.85rem, 1.6vw, 1.35rem);
    padding:clamp(.85rem, 1.4vw, 1rem) clamp(1rem, 1.8vw, 1.25rem);
    border-radius:16px;
    border:1px solid transparent;
    background:
        linear-gradient(rgba(5, 12, 28, .62), rgba(5, 12, 28, .62)) padding-box,
        linear-gradient(135deg, rgba(48, 222, 220, .34), rgba(145, 99, 202, .28)) border-box;
    backdrop-filter:blur(18px) saturate(140%);
    -webkit-backdrop-filter:blur(18px) saturate(140%);
    box-shadow:
        0 14px 40px rgba(0, 0, 0, .32),
        inset 0 1px 0 rgba(255, 255, 255, .07),
        0 0 32px rgba(48, 222, 220, .06);
}

.gaisha-page--lab-support .support-lab-support-strip__heading{
    margin:0;
    font-size:clamp(.9rem, 1.05vw, .98rem);
    line-height:1.35;
    font-weight:700;
    color:#f4f9ff;
    white-space:nowrap;
}

.gaisha-page--lab-support .support-lab-support-strip__items{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:center;
    gap:clamp(.55rem, 1.2vw, .95rem) clamp(.75rem, 1.4vw, 1.1rem);
    margin:0;
    padding:0;
    list-style:none;
}

.gaisha-page--lab-support .support-lab-support-strip__item{
    display:inline-flex;
    align-items:center;
    gap:.4rem;
}

.gaisha-page--lab-support .support-lab-support-strip__item + .support-lab-support-strip__item::before{
    content:'';
    display:inline-block;
    width:1px;
    height:1.1rem;
    margin-right:clamp(.55rem, 1.2vw, .95rem);
    background:linear-gradient(180deg, transparent, rgba(48, 222, 220, .28), rgba(145, 99, 202, .2), transparent);
    flex-shrink:0;
}

.gaisha-page--lab-support .support-lab-support-strip__icon{
    display:grid;
    place-items:center;
    width:18px;
    height:18px;
    color:var(--accent-cyan, #48f5ff);
}

.gaisha-page--lab-support .support-lab-support-strip__icon svg{
    width:16px;
    height:16px;
}

.gaisha-page--lab-support .support-lab-support-strip__label{
    font-size:.78rem;
    line-height:1.3;
    color:rgba(244, 249, 255, .88);
}

.gaisha-page--lab-support .support-lab-support-strip__button{
    justify-self:end;
    min-height:40px;
    padding:.5rem 1.1rem;
    font-size:.875rem;
    font-weight:600;
    white-space:nowrap;
    color:rgba(245, 250, 255, .96);
    background:
        linear-gradient(rgba(11, 20, 42, .82), rgba(11, 20, 42, .82)) padding-box,
        var(--gradient-primary, linear-gradient(135deg, #48f5ff 0%, #9a7cff 100%)) border-box;
    border:1px solid transparent;
    backdrop-filter:blur(10px);
    -webkit-backdrop-filter:blur(10px);
    box-shadow:0 8px 24px rgba(2, 8, 20, .2);
}

.gaisha-page--lab-support .support-lab-support-strip__button:hover{
    background:
        linear-gradient(rgba(16, 28, 54, .9), rgba(16, 28, 54, .9)) padding-box,
        var(--gradient-highlight, linear-gradient(90deg, #5cf8ff 0%, #bf99ff 45%, #9c8fff 100%)) border-box;
    box-shadow:0 10px 28px rgba(56, 237, 255, .16);
}

.gaisha-page--lab-support .gaisha-lab-packages-section,
.gaisha-page--lab-support .lab-support-packages-section,
.gaisha-page--lab-support #lab-support-packages{
    width:100% !important;
    max-width:none !important;
    padding-top:1.5rem;
    box-sizing:border-box;
}

.gaisha-page--lab-support .gaisha-lab-packages-inner,
.gaisha-page--lab-support .lab-support-packages-inner{
    width:100%;
    max-width:none;
    margin:0 auto;
    padding-left:64px;
    padding-right:64px;
    box-sizing:border-box;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-grid,
.gaisha-page--lab-support .gaisha-lab-packages-grid,
.gaisha-page--lab-support .lab-support-packages-grid{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    gap:22px !important;
    width:100% !important;
    max-width:none !important;
    align-items:stretch;
    position:relative;
    z-index:2;
    padding-top:12px;
    box-sizing:border-box;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card,
.gaisha-page--lab-support #lab-support-packages .lab-support-card.gaisha-glass-card{
    position:relative;
    display:flex;
    flex-direction:column;
    min-height:100%;
    padding:28px 18px 16px;
    border-radius:var(--gaisha-radius-card-lg, 22px);
    overflow:visible;
    box-sizing:border-box;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card > ul{
    flex:1 1 auto;
    margin-bottom:16px;
    padding:0;
    list-style:none;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card > ul li{
    position:relative;
    padding-left:18px;
    margin-bottom:6px;
    color:rgba(245,249,255,.92);
    font-size:.875rem;
    line-height:1.45;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card > ul li::before{
    content:'';
    position:absolute;
    left:0;
    top:7px;
    width:6px;
    height:6px;
    border-radius:50%;
    background:var(--accent-cyan, #48f5ff);
    box-shadow:0 0 10px rgba(56,237,255,.28);
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card-lead{
    margin:0 0 10px;
    font-size:.875rem;
    line-height:1.5;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-card .pricing-button,
.gaisha-page--lab-support #lab-support-packages .lab-support-card .pricing-button.gaisha-btn{
    display:flex;
    align-items:center;
    justify-content:center;
    align-self:stretch;
    width:100%;
    max-width:100%;
    height:46px;
    min-height:46px;
    margin-top:auto;
    margin-left:0;
    margin-right:0;
    flex-shrink:0;
    box-sizing:border-box;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-donation-heading{
    margin-bottom:.35rem;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-donation-subtitle{
    margin:0 0 1.25rem;
    max-width:42rem;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-donation-price{
    margin:.35rem 0 .5rem;
    font-size:clamp(1.35rem, 2vw, 1.65rem);
    font-weight:700;
    line-height:1.15;
}

.gaisha-page--lab-support #lab-support-packages .lab-support-product-missing{
    margin:8px 0 0;
    text-align:center;
}

.gaisha-page--lab-support .lab-support-funds{
    padding-top:12px;
    padding-bottom:36px;
}

.gaisha-page--lab-support .lab-support-funds-grid,
.gaisha-page--lab-support .gaisha-support-benefits-grid,
.gaisha-page--lab-support .support-benefits-grid{
    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:16px !important;
    width:100%;
    max-width:none;
    margin:0 auto;
}

.gaisha-page--lab-support .lab-support-funds-intro{
    max-width:52rem;
    margin:0 auto 1.75rem;
    text-align:center;
    font-size:1rem;
    line-height:1.75;
}

.gaisha-page--lab-support .lab-support-funds-intro p{
    margin:0 0 .85rem;
}

.gaisha-page--lab-support .lab-support-funds-intro p:last-child{
    margin-bottom:0;
}

.gaisha-page--lab-support .lab-support-mission{
    max-width:52rem;
    margin:2rem auto 0;
    padding:28px 32px;
    text-align:center;
    border-radius:var(--gaisha-radius-card-lg, 22px);
}

.gaisha-page--lab-support .lab-support-mission__title{
    margin:0 0 14px;
    font-size:clamp(1.15rem, 2vw, 1.35rem);
    font-weight:600;
    line-height:1.35;
    color:var(--text-primary, #f5f9ff);
}

.gaisha-page--lab-support .lab-support-mission__text{
    margin:0;
    font-size:.95rem;
    line-height:1.75;
}

.gaisha-page--lab-support .lab-support-mission__text p{
    margin:0 0 .85rem;
}

.gaisha-page--lab-support .lab-support-mission__text p:last-child{
    margin-bottom:0;
}

.gaisha-page--lab-support .lab-support-harvest-section{
    padding-top:0;
    padding-bottom:48px;
}

.gaisha-page--lab-support .lab-support-final-cta{
    padding-bottom:64px;
}

.gaisha-page--lab-support .lab-support-final-panel{
    max-width:720px;
    margin:0 auto;
    padding:28px 28px 32px;
    text-align:center;
}

.gaisha-page--lab-support .lab-support-final-panel .gaisha-section-title{
    margin-bottom:12px;
}

.gaisha-page--lab-support .lab-support-final-panel .gaisha-muted-text{
    margin:0 0 20px;
    font-size:1rem;
    line-height:1.75;
}

.gaisha-page--lab-support .lab-support-final-panel .pricing-button{
    display:inline-flex;
    width:auto;
    min-width:min(100%, 260px);
    margin:0 auto;
}

@media (max-width:1100px){

    .gaisha-page--lab-support .support-lab-hero{
        min-height:560px;
        background-position:70% center;
    }

    .gaisha-page--lab-support .support-lab-hero-inner{
        min-height:560px;
    }

    .gaisha-page--lab-support .support-lab-feature-strip{
        grid-template-columns:repeat(2, minmax(0, 1fr));
    }

    .gaisha-page--lab-support .support-lab-feature-card{
        border-right:none;
        border-bottom:1px solid rgba(166, 201, 255, .1);
    }

    .gaisha-page--lab-support .support-lab-feature-card:nth-child(2n){
        border-right:1px solid rgba(166, 201, 255, .1);
    }

    .gaisha-page--lab-support .support-lab-feature-card:nth-last-child(-n+2){
        border-bottom:none;
    }

    .gaisha-page--lab-support .support-lab-feature-card:nth-child(2n){
        border-right:none;
    }

    .gaisha-page--lab-support .support-lab-support-strip{
        grid-template-columns:1fr;
        gap:1rem;
        text-align:center;
    }

    .gaisha-page--lab-support .support-lab-support-strip__heading{
        white-space:normal;
    }

    .gaisha-page--lab-support .support-lab-support-strip__items{
        justify-content:center;
    }

    .gaisha-page--lab-support .support-lab-support-strip__item + .support-lab-support-strip__item::before{
        display:none;
    }

    .gaisha-page--lab-support .support-lab-support-strip__button{
        justify-self:center;
        width:100%;
        max-width:280px;
    }

}

@media (max-width:1200px){

    .gaisha-page--lab-support #lab-support-packages .lab-support-grid,
    .gaisha-page--lab-support .gaisha-lab-packages-grid,
    .gaisha-page--lab-support .lab-support-packages-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:1000px){

    .gaisha-page--lab-support .lab-support-funds-grid,
    .gaisha-page--lab-support .gaisha-support-benefits-grid,
    .gaisha-page--lab-support .support-benefits-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width:768px){

    .gaisha-page--lab-support .gaisha-lab-packages-inner,
    .gaisha-page--lab-support .lab-support-packages-inner{
        padding-left:24px;
        padding-right:24px;
    }
}

@media (max-width:768px){

    .gaisha-page--lab-support .support-lab-hero{
        min-height:520px;
        background-position:75% center;
    }

    .gaisha-page--lab-support .support-lab-hero-inner{
        min-height:520px;
        align-items:flex-end;
        padding-top:2.5rem;
        padding-bottom:3.5rem;
    }

    .gaisha-page--lab-support .support-lab-hero-below{
        margin-top:-1.5rem;
        padding-bottom:1.5rem;
    }

    .gaisha-page--lab-support .support-lab-feature-strip{
        grid-template-columns:1fr;
    }

    .gaisha-page--lab-support .support-lab-feature-card,
    .gaisha-page--lab-support .support-lab-feature-card:nth-child(2n){
        border-right:none;
        border-bottom:1px solid rgba(166, 201, 255, .1);
    }

    .gaisha-page--lab-support .support-lab-feature-card:last-child{
        border-bottom:none;
    }

    .gaisha-page--lab-support .support-lab-hero-button{
        width:100%;
        justify-content:center;
    }

}

@media (max-width:680px){

    .gaisha-page--lab-support #lab-support-packages .lab-support-grid,
    .gaisha-page--lab-support .gaisha-lab-packages-grid,
    .gaisha-page--lab-support .lab-support-packages-grid{
        grid-template-columns:1fr !important;
        gap:16px !important;
    }
}

@media (max-width:620px){

    .gaisha-page--lab-support .lab-support-funds-grid,
    .gaisha-page--lab-support .gaisha-support-benefits-grid,
    .gaisha-page--lab-support .support-benefits-grid{
        grid-template-columns:1fr !important;
    }
}

/* ==========================================================================
   Future Harvest Rewards — contained premium card + GiveWP (Support the Lab)
   ========================================================================== */

.gaisha-page--lab-support .gaisha-future-harvest-section{
    max-width:1180px;
    margin:64px auto 0;
    padding:0 24px 48px;
    width:100%;
    box-sizing:border-box;
}

.gaisha-page--lab-support .gaisha-future-harvest-shell{
    display:block;
    width:100%;
    max-width:1180px;
    margin:0 auto;
    padding:56px;
    border-radius:28px;
    border:1px solid rgba(61, 242, 255, .35);
    background:
        radial-gradient(circle at 12% 18%, rgba(143, 92, 255, .16), transparent 38%),
        radial-gradient(circle at 88% 12%, rgba(40, 223, 255, .12), transparent 34%),
        linear-gradient(145deg, rgba(8, 16, 36, .92) 0%, rgba(4, 10, 24, .88) 100%);
    box-shadow:
        0 0 60px rgba(61, 242, 255, .08),
        0 24px 64px rgba(0, 0, 0, .45),
        inset 0 1px 0 rgba(255, 255, 255, .06);
    backdrop-filter:blur(20px) saturate(140%);
    -webkit-backdrop-filter:blur(20px) saturate(140%);
    overflow:visible;
    box-sizing:border-box;
}

.gaisha-page--lab-support .gaisha-future-harvest-copy{
    min-width:0;
}

.gaisha-page--lab-support .gaisha-future-harvest-icon{
    width:54px;
    height:54px;
    border-radius:14px;
    display:flex;
    align-items:center;
    justify-content:center;
    background:rgba(143, 92, 255, .14);
    border:1px solid rgba(61, 242, 255, .35);
    font-size:28px;
    margin-bottom:22px;
    box-shadow:0 0 24px rgba(61, 242, 255, .12);
}

.gaisha-page--lab-support .gaisha-future-harvest-copy h2{
    margin:0 0 16px;
    font-size:clamp(1.75rem, 2.4vw, 2.125rem);
    line-height:1.12;
    letter-spacing:-.03em;
    color:#f4f9ff;
}

.gaisha-page--lab-support .gaisha-future-harvest-lead{
    margin:0;
    max-width:520px;
    color:rgba(255, 255, 255, .74);
    font-size:16px;
    line-height:1.65;
}

.gaisha-page--lab-support .gaisha-future-harvest-list{
    margin:28px 0 0;
    padding:0;
    list-style:none;
    display:grid;
    gap:14px;
}

.gaisha-page--lab-support .gaisha-future-harvest-list li{
    position:relative;
    padding-left:22px;
    color:rgba(255, 255, 255, .78);
    font-size:14px;
    line-height:1.55;
}

.gaisha-page--lab-support .gaisha-future-harvest-list li::before{
    content:'';
    position:absolute;
    left:0;
    top:9px;
    width:7px;
    height:7px;
    border-radius:50%;
    background:#35f3ff;
    box-shadow:0 0 12px rgba(53, 243, 255, .55);
}


/* Future Harvest — layout (section shell, header, benefits). Form 130 = VFB embed only. */

/* Future Harvest Rewards - Single Column Layout */
.gaisha-page--lab-support .gaisha-future-harvest-section,
.gaisha-future-harvest-section {
  width: 100%;
  max-width: none;
  margin: 0;
  padding: 80px 20px;
  background:
    radial-gradient(circle at 12% 20%, rgba(117, 74, 255, 0.18), transparent 32%),
    radial-gradient(circle at 86% 18%, rgba(19, 213, 235, 0.16), transparent 34%),
    #050b1a;
}

.gaisha-page--lab-support .gaisha-future-harvest-shell,
.gaisha-future-harvest-shell {
  display: block;
  width: min(100%, 1080px);
  margin: 0 auto;
  padding: 54px;
  border-radius: 32px;
  background:
    radial-gradient(circle at top left, rgba(21, 220, 235, 0.11), transparent 34%),
    radial-gradient(circle at bottom right, rgba(133, 77, 255, 0.14), transparent 38%),
    rgba(6, 14, 32, 0.88);
  border: 1px solid rgba(78, 210, 255, 0.28);
  box-shadow:
    0 28px 100px rgba(0, 0, 0, 0.42),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.gaisha-page--lab-support .gaisha-future-harvest-header,
.gaisha-future-harvest-header {
  max-width: 760px;
  margin: 0 auto 42px;
  text-align: center;
}

.gaisha-future-harvest-title-row {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  margin: 0 auto 14px;
}

.gaisha-future-harvest-title-row h2 {
  margin: 0 !important;
}

.gaisha-future-harvest-heart {
  width: 54px;
  height: 54px;
  display: inline-grid;
  place-items: center;
  flex: 0 0 54px;
  border-radius: 999px;
  color: #dffcff;
  font-size: 30px;
  line-height: 1;
  background:
    linear-gradient(rgba(5, 18, 35, 0.92), rgba(5, 18, 35, 0.92)) padding-box,
    linear-gradient(135deg, #16f1ff, #8d4dff) border-box;
  border: 2px solid transparent;
  box-shadow: 0 0 28px rgba(22, 241, 255, 0.16);
}

.gaisha-page--lab-support .gaisha-future-harvest-header h2,
.gaisha-future-harvest-header h2 {
  margin: 0 0 16px;
  color: #ffffff;
  font-size: clamp(34px, 5vw, 58px);
  line-height: 1.03;
  letter-spacing: -0.06em;
}

.gaisha-page--lab-support .gaisha-future-harvest-header p,
.gaisha-future-harvest-header p {
  margin: 0 auto;
  max-width: 680px;
  color: rgba(235, 242, 255, 0.72);
  font-size: 18px;
  line-height: 1.65;
}

.gaisha-future-harvest-benefits {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
  margin-top: 42px;
}

.gaisha-future-harvest-benefit {
  padding: 24px;
  border-radius: 22px;
  background:
    linear-gradient(145deg, rgba(8, 24, 48, 0.78), rgba(7, 13, 32, 0.86));
  border: 1px solid rgba(80, 200, 255, 0.2);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

.gaisha-future-harvest-benefit span {
  display: block;
  margin-bottom: 14px;
  font-size: 30px;
}

.gaisha-future-harvest-benefit h3 {
  margin: 0 0 8px;
  color: #ffffff;
  font-size: 18px;
  line-height: 1.2;
}

.gaisha-future-harvest-benefit p {
  margin: 0;
  color: rgba(230, 240, 255, 0.68);
  font-size: 14px;
  line-height: 1.55;
}

@media (max-width: 980px) {
  .gaisha-page--lab-support .gaisha-future-harvest-shell,
  .gaisha-future-harvest-shell {
    padding: 36px 24px;
  }

  .gaisha-future-harvest-benefits {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 560px) {
  .gaisha-page--lab-support .gaisha-future-harvest-section,
  .gaisha-future-harvest-section {
    padding: 52px 14px;
  }

  .gaisha-page--lab-support .gaisha-future-harvest-shell,
  .gaisha-future-harvest-shell {
    padding: 28px 16px;
    border-radius: 24px;
  }

  .gaisha-future-harvest-benefits {
    grid-template-columns: 1fr;
  }

  .gaisha-future-harvest-title-row {
    flex-direction: column;
    gap: 12px;
  }

  .gaisha-future-harvest-heart {
    width: 48px;
    height: 48px;
    flex-basis: 48px;
    font-size: 26px;
  }
}

/* GiveWP VFB embed (form 130) — outer container only */
.gaisha-future-harvest-form.gaisha-givewp-iframe-mode {
  width: min(100%, 880px);
  margin: 0 auto;

}

.gaisha-future-harvest-form.gaisha-givewp-iframe-mode .root-data-givewp-embed,
.gaisha-future-harvest-form.gaisha-givewp-iframe-mode .give-embed-form-wrapper {
  width: 100%;
}

.gaisha-future-harvest-form.gaisha-givewp-iframe-mode iframe,
.gaisha-future-harvest-form.gaisha-givewp-iframe-mode .give-embed-form-wrapper iframe {
  width: 100% !important;
  border: 0 !important;
  border-radius: 22px !important;
  display: block !important;
  background: transparent !important;
}

@media (max-width: 700px) {
  .gaisha-future-harvest-form.gaisha-givewp-iframe-mode {
    padding: 20px 16px;
  }
}

/* Future Harvest Rewards - remove iframe/card gap */

.gaisha-future-harvest-section {
  padding-bottom: 56px !important;
}

.gaisha-future-harvest-shell {
  min-height: 0 !important;
  padding-bottom: 42px !important;
}

.gaisha-future-harvest-form,
.gaisha-future-harvest-form.gaisha-givewp-iframe-mode {
  min-height: 0 !important;
  margin-bottom: 34px !important;
  padding-bottom: 0 !important;
}

.gaisha-future-harvest-form.gaisha-givewp-iframe-mode .root-data-givewp-embed {
  min-height: 0 !important;
}

.gaisha-future-harvest-form iframe {
  min-height: 0 !important;
  height: 620px !important;
  max-height: 620px !important;
  margin-bottom: 0 !important;
  display: block !important;
}

.gaisha-future-harvest-benefits {
  margin-top: 34px !important;
}

@media (max-width: 700px) {
  .gaisha-future-harvest-form iframe {
    height: 620px !important;
    max-height: 620px !important;
  }
}

/* Pricing page — hero actions, section CTAs, card overlap fix */
html:has(.gaisha-page--pricing){
    scroll-behavior:smooth;
}

.gaisha-page--pricing #farm-plans,
.gaisha-page--pricing #contributing-farmer-program,
.gaisha-page--pricing #included-gaisha-features{
    scroll-margin-top:88px;
}

@media (prefers-reduced-motion: reduce){
    html:has(.gaisha-page--pricing){
        scroll-behavior:auto;
    }
}

.gaisha-page--pricing .gaisha-section-actions{
    display:flex;
    justify-content:center;
    gap:14px;
    flex-wrap:wrap;
    margin-top:28px;
}

.gaisha-page--pricing .gaisha-section-actions a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:0 22px;
    border-radius:999px;
    text-decoration:none;
    font-weight:700;
    font-size:.9rem;
    line-height:1.2;
    transition:transform .2s ease, box-shadow .2s ease, background .2s ease, border-color .2s ease;
}

.gaisha-page--pricing .gaisha-section-actions a:hover{
    transform:translateY(-1px);
}

.gaisha-page--pricing .gaisha-section-actions .primary{
    background:linear-gradient(135deg, #18d8e8, #8b35ff);
    color:#fff;
    box-shadow:0 10px 28px rgba(24, 216, 232, .18);
}

.gaisha-page--pricing .gaisha-section-actions .secondary{
    border:1px solid rgba(74, 210, 255, 0.32);
    color:#dffcff;
    background:rgba(5, 20, 38, 0.72);
}

.included-card.gaisha-glass-card{
    height:auto !important;
    min-height:0 !important;
}

/* WooCommerce shell — cart, checkout, account, shop */
.gaisha-woocommerce-page {
    min-height:70vh;
    padding:120px 24px 80px;
    background:
        radial-gradient(circle at top right, rgba(24, 220, 232, 0.12), transparent 34%),
        radial-gradient(circle at bottom left, rgba(142, 44, 255, 0.12), transparent 38%),
        #050b18;
    color:#ffffff;
}

.gaisha-woo-shell {
    width:min(100%, 1180px);
    margin:0 auto;
}

.gaisha-woocommerce-page h1,
.gaisha-woocommerce-page h2,
.gaisha-woocommerce-page h3 {
    color:#ffffff;
}

.gaisha-woocommerce-page a {
    color:#20e7ff;
}

.gaisha-woocommerce-page .woocommerce,
.gaisha-woocommerce-page .woocommerce-page {
    color:rgba(235, 245, 255, 0.86);
}

.gaisha-woocommerce-page input,
.gaisha-woocommerce-page textarea,
.gaisha-woocommerce-page select {
    background:rgba(3, 13, 29, 0.9);
    color:#ffffff;
    border:1px solid rgba(74, 210, 255, 0.24);
    border-radius:10px;
}

.gaisha-woocommerce-page .button,
.gaisha-woocommerce-page button,
.gaisha-woocommerce-page input[type="submit"],
.gaisha-woocommerce-page .wc-block-components-button {
    border:0;
    border-radius:12px;
    background:linear-gradient(135deg, #18d8e8, #8b35ff);
    color:#ffffff;
    font-weight:700;
}

@media (max-width:768px){
    .gaisha-woocommerce-page {
        padding:96px 16px 64px;
    }
}

/* Internal SEO links — descriptive anchor text */
.gaisha-page--pricing .gaisha-pricing-subsidy-link{
    margin-top:12px;
}

.gaisha-page--pricing .gaisha-pricing-subsidy-link a{
    color:rgba(48, 222, 220, .92);
    text-decoration:none;
    font-weight:600;
}

.gaisha-page--pricing .gaisha-pricing-subsidy-link a:hover,
.gaisha-page--pricing .gaisha-pricing-subsidy-link a:focus-visible{
    color:#dffcff;
    text-decoration:underline;
}

.gaisha-page--lab-support .lab-support-final-panel__contact{
    margin-top:1rem;
    margin-bottom:0;
}

.gaisha-page--lab-support .lab-support-final-panel__contact a{
    color:rgba(48, 222, 220, .92);
    font-weight:600;
    text-decoration:none;
}

.gaisha-page--lab-support .lab-support-final-panel__contact a:hover,
.gaisha-page--lab-support .lab-support-final-panel__contact a:focus-visible{
    color:#dffcff;
    text-decoration:underline;
}

/* Support the Lab — premium GAISHA Labs story section */
.gaisha-labs-story {
    position: relative;
    padding: 80px 20px;
    overflow: hidden;
}

.gaisha-labs-story::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 18% 20%, rgba(28, 211, 255, 0.13), transparent 34%),
        radial-gradient(circle at 82% 10%, rgba(137, 91, 255, 0.12), transparent 32%),
        linear-gradient(180deg, rgba(5, 16, 28, 0.2), rgba(3, 8, 15, 0.1));
    pointer-events: none;
}

.gaisha-labs-story__shell {
    position: relative;
    z-index: 1;
    width: min(1120px, 100%);
    margin: 0 auto;
}

.gaisha-labs-story__header {
    max-width: 780px;
    margin-bottom: 34px;
}

.gaisha-labs-story__eyebrow,
.gaisha-labs-story__label,
.gaisha-labs-flow > span,
.gaisha-labs-cta span {
    display: inline-flex;
    width: fit-content;
    border: 1px solid rgba(31, 224, 255, 0.28);
    background: rgba(31, 224, 255, 0.08);
    color: #38f3ff;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gaisha-labs-story__header h2 {
    margin: 16px 0 14px;
    color: #f7fbff;
    font-size: clamp(34px, 5vw, 64px);
    line-height: 0.96;
    letter-spacing: -0.055em;
    max-width: 820px;
}

.gaisha-labs-story__header p {
    color: rgba(225, 235, 246, 0.76);
    font-size: 17px;
    line-height: 1.72;
    max-width: 760px;
}

.gaisha-labs-story__panel {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.96fr);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 24px;
    padding: 26px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    background:
        linear-gradient(135deg, rgba(18, 45, 60, 0.72), rgba(18, 20, 40, 0.68)),
        rgba(255, 255, 255, 0.035);
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
    backdrop-filter: blur(18px);
}

.gaisha-labs-story__copy {
    padding: 10px 4px 8px;
}

.gaisha-labs-story__copy h3 {
    margin: 16px 0 14px;
    color: #ffffff;
    font-size: clamp(26px, 3.2vw, 42px);
    line-height: 1.03;
    letter-spacing: -0.04em;
}

.gaisha-labs-story__copy p {
    color: rgba(226, 236, 247, 0.74);
    font-size: 15.5px;
    line-height: 1.72;
    margin: 0 0 14px;
}

.gaisha-labs-story__copy ul {
    display: grid;
    gap: 10px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.gaisha-labs-story__copy li {
    position: relative;
    color: rgba(242, 248, 255, 0.86);
    padding-left: 28px;
    line-height: 1.5;
}

.gaisha-labs-story__copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: linear-gradient(135deg, #26f1ff, #9b7cff);
    box-shadow: 0 0 18px rgba(38, 241, 255, 0.45);
}

.gaisha-labs-story__visual {
    position: relative;
    min-height: 350px;
    border-radius: 26px;
    padding: 22px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        radial-gradient(circle at 50% 0%, rgba(40, 232, 255, 0.18), transparent 34%),
        radial-gradient(circle at 100% 100%, rgba(151, 103, 255, 0.18), transparent 34%),
        rgba(5, 12, 24, 0.68);
}

.gaisha-labs-story__visual::before {
    content: "";
    position: absolute;
    inset: 18px;
    border-radius: 999px;
    border: 1px solid rgba(78, 236, 255, 0.13);
    transform: rotate(-10deg);
}

.gaisha-labs-story__visual::after {
    content: "";
    position: absolute;
    inset: 54px;
    border-radius: 999px;
    border: 1px solid rgba(151, 103, 255, 0.14);
    transform: rotate(14deg);
}

.gaisha-labs-orbit-card {
    position: relative;
    z-index: 2;
    border-radius: 22px;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(14px);
}

.gaisha-labs-orbit-card span,
.gaisha-labs-mini-grid span {
    display: block;
    color: rgba(226, 236, 247, 0.58);
    font-size: 12px;
    margin-bottom: 6px;
}

.gaisha-labs-orbit-card strong {
    display: block;
    color: #ffffff;
    font-size: 24px;
    letter-spacing: -0.03em;
}

.gaisha-labs-mini-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 16px;
}

.gaisha-labs-mini-grid div {
    border-radius: 18px;
    padding: 16px;
    min-height: 96px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(255, 255, 255, 0.045);
}

.gaisha-labs-mini-grid strong {
    color: #f8fbff;
    font-size: 17px;
}

.gaisha-labs-glow-line {
    position: relative;
    z-index: 2;
    height: 5px;
    margin-top: 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #25eaff, #8f74ff, rgba(255,255,255,0.08));
    box-shadow: 0 0 24px rgba(60, 223, 255, 0.32);
}

.gaisha-labs-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 18px;
}

.gaisha-labs-card-grid article {
    min-height: 210px;
    padding: 20px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.028)),
        rgba(4, 12, 22, 0.65);
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.20);
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.gaisha-labs-card-grid article:hover {
    transform: translateY(-4px);
    border-color: rgba(56, 243, 255, 0.28);
    background:
        linear-gradient(180deg, rgba(56,243,255,0.08), rgba(151,103,255,0.045)),
        rgba(4, 12, 22, 0.72);
}

.gaisha-labs-card-icon {
    display: block;
    width: 34px;
    height: 34px;
    margin-bottom: 18px;
    border-radius: 11px;
    border: 1px solid rgba(56, 243, 255, 0.25);
    background:
        radial-gradient(circle at 35% 30%, rgba(56, 243, 255, 0.35), transparent 42%),
        rgba(255,255,255,0.06);
}

.gaisha-labs-card-grid h3 {
    color: #ffffff;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: -0.035em;
    margin: 0 0 10px;
}

.gaisha-labs-card-grid p {
    color: rgba(226, 236, 247, 0.68);
    font-size: 14px;
    line-height: 1.55;
    margin: 0;
}

.gaisha-labs-flow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    margin-bottom: 18px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(255, 255, 255, 0.035);
}

.gaisha-labs-flow > span {
    color: #a88cff;
    border-color: rgba(168, 140, 255, 0.24);
    background: rgba(168, 140, 255, 0.08);
    flex: 0 0 auto;
}

.gaisha-labs-flow div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.gaisha-labs-flow b {
    color: rgba(242, 248, 255, 0.84);
    font-size: 13px;
    font-weight: 600;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.09);
}

.gaisha-labs-flow i {
    display: block;
    width: 18px;
    height: 1px;
    background: linear-gradient(90deg, #29eaff, #9b7cff);
}

.gaisha-labs-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 26px;
    border-radius: 28px;
    border: 1px solid rgba(56, 243, 255, 0.18);
    background:
        radial-gradient(circle at 12% 20%, rgba(56, 243, 255, 0.14), transparent 28%),
        radial-gradient(circle at 90% 80%, rgba(151, 103, 255, 0.13), transparent 30%),
        rgba(255, 255, 255, 0.045);
}

.gaisha-labs-cta span {
    color: #38f3ff;
}

.gaisha-labs-cta h3 {
    color: #ffffff;
    font-size: clamp(24px, 3vw, 36px);
    letter-spacing: -0.04em;
    line-height: 1.08;
    margin: 12px 0 8px;
}

.gaisha-labs-cta p {
    max-width: 660px;
    color: rgba(226, 236, 247, 0.72);
    line-height: 1.6;
    margin: 0;
}

.gaisha-labs-cta__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
}

.gaisha-labs-cta__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
}

.gaisha-labs-cta__actions a:first-child {
    color: #021018;
    background: linear-gradient(135deg, #35f1ff, #a48bff);
    border-color: transparent;
}

@media (max-width: 980px) {
    .gaisha-labs-story__panel {
        grid-template-columns: 1fr;
    }

    .gaisha-labs-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gaisha-labs-flow,
    .gaisha-labs-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .gaisha-labs-cta__actions {
        flex-wrap: wrap;
    }
}

@media (max-width: 640px) {
    .gaisha-labs-story {
        padding: 56px 16px;
    }

    .gaisha-labs-story__panel {
        padding: 18px;
        border-radius: 24px;
    }

    .gaisha-labs-story__visual {
        min-height: auto;
    }

    .gaisha-labs-mini-grid {
        grid-template-columns: 1fr;
    }

    .gaisha-labs-card-grid {
        grid-template-columns: 1fr;
    }

    .gaisha-labs-flow i {
        display: none;
    }

    .gaisha-labs-cta__actions,
    .gaisha-labs-cta__actions a {
        width: 100%;
    }
}

/* Pricing & Access — premium access overview section */
.gaisha-access-overview {
    position: relative;
    padding: 80px 20px;
    overflow: hidden;
}

.gaisha-access-overview::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 15% 15%, rgba(40, 232, 255, 0.13), transparent 34%),
        radial-gradient(circle at 86% 18%, rgba(151, 103, 255, 0.13), transparent 32%),
        linear-gradient(180deg, rgba(3, 16, 28, 0.2), rgba(3, 8, 15, 0.1));
    pointer-events: none;
}

.gaisha-access-overview__shell {
    position: relative;
    z-index: 1;
    width: min(1120px, 100%);
    margin: 0 auto;
}

.gaisha-access-overview__header {
    max-width: 820px;
    margin-bottom: 34px;
}

.gaisha-access-overview__eyebrow,
.gaisha-access-overview__label,
.gaisha-access-flow > span,
.gaisha-access-cta span {
    display: inline-flex;
    width: fit-content;
    border: 1px solid rgba(40, 232, 255, 0.28);
    background: rgba(40, 232, 255, 0.08);
    color: #38f3ff;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.gaisha-access-overview__header h2 {
    margin: 16px 0 14px;
    color: #f7fbff;
    font-size: clamp(34px, 5vw, 62px);
    line-height: 0.98;
    letter-spacing: -0.055em;
    max-width: 860px;
}

.gaisha-access-overview__header p {
    color: rgba(225, 235, 246, 0.76);
    font-size: 17px;
    line-height: 1.72;
    max-width: 780px;
}

.gaisha-access-overview__panel {
    display: grid;
    grid-template-columns: minmax(0, 1.04fr) minmax(360px, 0.96fr);
    gap: 28px;
    align-items: stretch;
    margin-bottom: 24px;
    padding: 26px;
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    background:
        linear-gradient(135deg, rgba(15, 50, 63, 0.72), rgba(25, 20, 54, 0.68)),
        rgba(255, 255, 255, 0.035);
    box-shadow: 0 30px 90px rgba(0, 0, 0, 0.34);
    backdrop-filter: blur(18px);
}

.gaisha-access-overview__copy {
    padding: 10px 4px 8px;
}

.gaisha-access-overview__copy h3 {
    margin: 16px 0 14px;
    color: #ffffff;
    font-size: clamp(26px, 3.2vw, 42px);
    line-height: 1.03;
    letter-spacing: -0.04em;
}

.gaisha-access-overview__copy p {
    color: rgba(226, 236, 247, 0.74);
    font-size: 15.5px;
    line-height: 1.72;
    margin: 0 0 14px;
}

.gaisha-access-overview__copy ul {
    display: grid;
    gap: 10px;
    margin: 20px 0 0;
    padding: 0;
    list-style: none;
}

.gaisha-access-overview__copy li {
    position: relative;
    color: rgba(242, 248, 255, 0.86);
    padding-left: 28px;
    line-height: 1.5;
}

.gaisha-access-overview__copy li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.55em;
    width: 10px;
    height: 10px;
    border-radius: 99px;
    background: linear-gradient(135deg, #26f1ff, #9b7cff);
    box-shadow: 0 0 18px rgba(38, 241, 255, 0.45);
}

.gaisha-access-overview__visual {
    position: relative;
    min-height: 350px;
    border-radius: 26px;
    padding: 22px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        radial-gradient(circle at 50% 0%, rgba(40, 232, 255, 0.18), transparent 34%),
        radial-gradient(circle at 100% 100%, rgba(151, 103, 255, 0.18), transparent 34%),
        rgba(5, 12, 24, 0.68);
}

.gaisha-access-overview__visual::before {
    content: "";
    position: absolute;
    inset: 20px;
    border-radius: 999px;
    border: 1px solid rgba(78, 236, 255, 0.13);
    transform: rotate(-9deg);
}

.gaisha-access-overview__visual::after {
    content: "";
    position: absolute;
    inset: 58px;
    border-radius: 999px;
    border: 1px solid rgba(151, 103, 255, 0.14);
    transform: rotate(13deg);
}

.gaisha-access-plan-card {
    position: relative;
    z-index: 2;
    border-radius: 22px;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, 0.11);
    background: rgba(255, 255, 255, 0.06);
    backdrop-filter: blur(14px);
}

.gaisha-access-plan-card span,
.gaisha-access-mini-grid span {
    display: block;
    color: rgba(226, 236, 247, 0.58);
    font-size: 12px;
    margin-bottom: 6px;
}

.gaisha-access-plan-card strong {
    display: block;
    color: #ffffff;
    font-size: 24px;
    letter-spacing: -0.03em;
}

.gaisha-access-mini-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 12px;
    margin-top: 16px;
}

.gaisha-access-mini-grid div {
    border-radius: 18px;
    padding: 16px;
    min-height: 96px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(255, 255, 255, 0.045);
}

.gaisha-access-mini-grid strong {
    color: #f8fbff;
    font-size: 17px;
}

.gaisha-access-progress {
    position: relative;
    z-index: 2;
    height: 5px;
    margin-top: 18px;
    border-radius: 999px;
    background: linear-gradient(90deg, #25eaff, #8f74ff, rgba(255,255,255,0.08));
    box-shadow: 0 0 24px rgba(60, 223, 255, 0.32);
}

.gaisha-access-card-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
    margin-bottom: 18px;
}

.gaisha-access-card-grid article {
    min-height: 210px;
    padding: 20px;
    border-radius: 24px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background:
        linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.028)),
        rgba(4, 12, 22, 0.65);
    box-shadow: 0 18px 50px rgba(0, 0, 0, 0.20);
    transition: transform 0.25s ease, border-color 0.25s ease, background 0.25s ease;
}

.gaisha-access-card-grid article:hover {
    transform: translateY(-4px);
    border-color: rgba(56, 243, 255, 0.28);
    background:
        linear-gradient(180deg, rgba(56,243,255,0.08), rgba(151,103,255,0.045)),
        rgba(4, 12, 22, 0.72);
}

.gaisha-access-card-icon {
    display: block;
    width: 34px;
    height: 34px;
    margin-bottom: 18px;
    border-radius: 11px;
    border: 1px solid rgba(56, 243, 255, 0.25);
    background:
        radial-gradient(circle at 35% 30%, rgba(56, 243, 255, 0.35), transparent 42%),
        rgba(255,255,255,0.06);
}

.gaisha-access-card-grid h3 {
    color: #ffffff;
    font-size: 18px;
    line-height: 1.2;
    letter-spacing: -0.035em;
    margin: 0 0 10px;
}

.gaisha-access-card-grid p {
    color: rgba(226, 236, 247, 0.68);
    font-size: 14px;
    line-height: 1.55;
    margin: 0;
}

.gaisha-access-flow {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 18px 20px;
    margin-bottom: 18px;
    border-radius: 22px;
    border: 1px solid rgba(255, 255, 255, 0.10);
    background: rgba(255, 255, 255, 0.035);
}

.gaisha-access-flow > span {
    color: #a88cff;
    border-color: rgba(168, 140, 255, 0.24);
    background: rgba(168, 140, 255, 0.08);
    flex: 0 0 auto;
}

.gaisha-access-flow div {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 9px;
}

.gaisha-access-flow b {
    color: rgba(242, 248, 255, 0.84);
    font-size: 13px;
    font-weight: 600;
    padding: 8px 12px;
    border-radius: 999px;
    background: rgba(255,255,255,0.055);
    border: 1px solid rgba(255,255,255,0.09);
}

.gaisha-access-flow i {
    display: block;
    width: 18px;
    height: 1px;
    background: linear-gradient(90deg, #29eaff, #9b7cff);
}

.gaisha-access-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    padding: 26px;
    border-radius: 28px;
    border: 1px solid rgba(56, 243, 255, 0.18);
    background:
        radial-gradient(circle at 12% 20%, rgba(56, 243, 255, 0.14), transparent 28%),
        radial-gradient(circle at 90% 80%, rgba(151, 103, 255, 0.13), transparent 30%),
        rgba(255, 255, 255, 0.045);
}

.gaisha-access-cta h3 {
    color: #ffffff;
    font-size: clamp(24px, 3vw, 36px);
    letter-spacing: -0.04em;
    line-height: 1.08;
    margin: 12px 0 8px;
}

.gaisha-access-cta p {
    max-width: 660px;
    color: rgba(226, 236, 247, 0.72);
    line-height: 1.6;
    margin: 0;
}

.gaisha-access-cta__actions {
    display: flex;
    align-items: center;
    gap: 10px;
    flex: 0 0 auto;
    flex-wrap: wrap;
}

.gaisha-access-cta__actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    padding: 0 18px;
    border-radius: 999px;
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 14px;
    border: 1px solid rgba(255,255,255,0.12);
    background: rgba(255,255,255,0.07);
}

.gaisha-access-cta__actions a:first-child {
    color: #021018;
    background: linear-gradient(135deg, #35f1ff, #a48bff);
    border-color: transparent;
}

@media (max-width: 980px) {
    .gaisha-access-overview__panel {
        grid-template-columns: 1fr;
    }

    .gaisha-access-card-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .gaisha-access-flow,
    .gaisha-access-cta {
        align-items: flex-start;
        flex-direction: column;
    }
}

@media (max-width: 640px) {
    .gaisha-access-overview {
        padding: 56px 16px;
    }

    .gaisha-access-overview__panel {
        padding: 18px;
        border-radius: 24px;
    }

    .gaisha-access-overview__visual {
        min-height: auto;
    }

    .gaisha-access-mini-grid {
        grid-template-columns: 1fr;
    }

    .gaisha-access-card-grid {
        grid-template-columns: 1fr;
    }

    .gaisha-access-flow i {
        display: none;
    }

    .gaisha-access-cta__actions,
    .gaisha-access-cta__actions a {
        width: 100%;
    }
}
