/*
Theme Name: Banana Growth
Author: Banana Works
Description: Native Gutenberg content, curated patterns and file-controlled templates for Banana Works.
Version: 2.2.0
Text Domain: banana-growth
Requires at least: 6.9
Requires PHP: 8.3
*/
@font-face{font-family:Manrope;src:url('assets/fonts/Manrope-VariableFont_wght.woff2') format('woff2');font-weight:200 800;font-style:normal;font-display:swap}
:root{--bw-ink:#171916;--bw-yellow:#f8cc36;--bw-paper:#faf8f1;--bw-muted:#5d6058;--bw-rule:#d8d8cd;--bw-gutter:clamp(22px,4vw,72px)}
*{box-sizing:border-box}
html{scroll-padding-top:110px}
body{margin:0;background:var(--bw-paper);color:var(--bw-ink);font-family:Manrope,Arial,sans-serif;font-size:17px;line-height:1.7}
body .wp-site-blocks{padding:0;overflow:clip}
body .wp-site-blocks>*{margin-block:0}
main{min-height:55vh}
a{color:inherit;text-underline-offset:.22em;text-decoration-thickness:1px}
a:hover{text-decoration-thickness:2px}
:where(a,button,summary,input,textarea,select):focus-visible{outline:3px solid #9c6800;outline-offset:5px}
h1,h2,h3,h4{font-weight:650;letter-spacing:-.055em;line-height:1.12;text-wrap:balance}
h1{font-size:clamp(2.8rem,5.7vw,5.9rem)}
h2{font-size:clamp(2.1rem,3.6vw,3.8rem)}
h3{font-size:clamp(1.4rem,2vw,2rem)}
p{margin-block:0 1.2em}
img{max-width:100%;height:auto;display:block}
.bw-container{width:100%;max-width:1440px;margin-inline:auto}
.bw-section{padding:clamp(64px,8vw,124px) var(--bw-gutter);margin:0!important}
.bw-section .wp-block-group>*:first-child{margin-top:0}
.bw-section .wp-block-group>*:last-child{margin-bottom:0}
.bw-eyebrow{font-size:.73rem;letter-spacing:.14em;line-height:1.5;font-weight:750;margin-bottom:26px!important}
.bw-lead{font-size:clamp(1rem,1.35vw,1.2rem);max-width:620px}
.wp-block-buttons{gap:12px!important;flex-wrap:wrap}
.wp-block-button__link{background:var(--bw-ink);color:var(--bw-paper);border:1px solid var(--bw-ink);border-radius:4px;font-size:.88rem;font-weight:650;line-height:1.5;padding:16px 22px;text-decoration:none;transition:background-color .18s ease,color .18s ease,transform .18s ease}
.wp-block-button__link:hover{background:#363a30;color:white;transform:translateY(-2px)}
.is-style-outline>.wp-block-button__link{border:1px solid currentColor;background:transparent;color:var(--bw-ink);padding:16px 22px}
.is-style-outline>.wp-block-button__link:hover{background:var(--bw-ink);color:var(--bw-paper)}
.bw-text-link a{font-size:.92rem;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:5px}
.bw-text-link span{display:inline-block;margin-left:14px}
.bw-header{padding:22px var(--bw-gutter);border-bottom:1px solid var(--bw-rule);background:var(--bw-paper);position:relative;z-index:10}
.bw-header-inner,.bw-header-actions{display:flex;align-items:center;justify-content:space-between;gap:32px}
.bw-header-inner>.bw-header-actions,.bw-header-actions>*{margin-block:0}
.bw-wordmark{font-size:1.45rem;font-weight:800;letter-spacing:-.075em;white-space:nowrap;line-height:1.2;margin:0!important}
.bw-wordmark a{text-decoration:none;color:var(--bw-ink)}
.bw-wordmark a::after{content:'.';color:#a77500}
.bw-primary-nav{font-size:.78rem;font-weight:650}
.bw-primary-nav .wp-block-navigation__container{gap:clamp(16px,2vw,30px)}
.bw-primary-nav a{text-decoration:none}
.bw-primary-nav a:hover{text-decoration:underline}
.bw-header .wp-block-button__link{padding:11px 19px;background:var(--bw-yellow);color:var(--bw-ink);border-color:var(--bw-yellow);white-space:nowrap}
.bw-main,.bw-main>.wp-block-post-content{margin:0!important}
.bw-hero{padding-top:clamp(52px,6vw,104px);padding-bottom:clamp(52px,6vw,100px)}
.bw-hero>.bw-container{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:clamp(28px,4vw,70px)}
.bw-hero h1{font-size:clamp(3rem,4.2vw,4.25rem);margin:0 0 30px;line-height:1.08;letter-spacing:-.065em}
.bw-highlight{color:#6f6131}
.bw-hero .wp-block-buttons{margin-top:30px}
.bw-hero-art{position:relative;margin:0!important;transform:rotate(2deg)}
.bw-hero-art figure{margin:0;background:#fbf0d5;border-radius:10px;overflow:hidden}
.bw-hero-art img{width:100%;aspect-ratio:1;object-fit:cover}
.bw-image-caption{font-size:.65rem;font-weight:750;letter-spacing:.15em;text-align:right;padding-top:16px}
.bw-intro{background:var(--bw-yellow)}
.bw-split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,7vw,110px);align-items:start}
.bw-split>h2{margin:0}
.bw-intro-copy{max-width:580px;margin-top:0!important}
.bw-route-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,96px)}
.bw-route{border-top:1px solid var(--bw-ink);padding-top:28px;margin-top:0!important}
.bw-route h2{font-size:clamp(2rem,3vw,3.2rem);margin-block:34px 24px}
.bw-route>p:not(.bw-eyebrow):not(.bw-text-link){max-width:550px}
.bw-route .bw-text-link{margin-top:32px}
.bw-work-section{background:var(--bw-ink);color:var(--bw-paper)}
.bw-work-section>.bw-container>p:not(.bw-eyebrow){max-width:660px}
.bw-work-section h2{margin-block:0 24px}
.bw-work-gallery{display:grid;grid-auto-flow:column;grid-auto-columns:clamp(360px,40vw,600px);overflow-x:auto;gap:24px;padding:15px 0 28px;scroll-snap-type:x proximity;overscroll-behavior-x:contain;scrollbar-color:var(--bw-yellow) #41433e;scrollbar-width:thin;margin-block:36px!important}
.bw-work-card{scroll-snap-align:start;padding:32px;background:#262923;border-top:4px solid var(--bw-yellow);margin:0!important;min-width:0}
.bw-work-card h3{font-size:clamp(1.7rem,2.3vw,2.6rem);margin-block:42px 22px}
.bw-work-card p{font-size:.92rem;line-height:1.7}
.bw-work-card .bw-scope{border-top:1px solid #55584e;padding-top:20px;color:#d0d3c8;font-size:.78rem}
.bw-work-card .bw-project-image{margin:0 -32px 28px;max-width:none}
.bw-work-card .bw-project-image img{width:100%;aspect-ratio:2.376;object-fit:contain;object-position:center top}
.bw-work-card h3 a{text-decoration:none}
.bw-work-card h3 a:hover{text-decoration:underline}
.bw-project-status{color:var(--bw-yellow);font-size:.8rem!important}
.bw-work-card:has(.bw-project-image) h3{margin-top:20px}
.bw-project-detail-image img{width:100%;height:auto;border:1px solid var(--bw-rule);border-radius:6px}
.bw-investment{background:#eeeee5}
.bw-investment-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(36px,8vw,130px)}
.bw-investment-intro h2{font-size:clamp(3rem,6vw,6rem);margin:0 0 25px}
.bw-price-unit{display:block;font-size:1rem;font-weight:550;letter-spacing:0;margin-top:14px}
.bw-investment-intro .wp-block-buttons{margin-top:30px}
.bw-investment-details{margin-top:0!important}
.bw-investment-details h3{font-size:1.4rem;margin-top:36px}
.bw-investment-details p{font-size:.95rem}
.bw-content-section{background:#eeeee5}
.bw-process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:34px;margin-top:60px!important}
.bw-step{margin:0!important;border-top:1px solid var(--bw-rule);padding-top:24px}
.bw-step h3{font-size:1.4rem;letter-spacing:-.04em}
.bw-step-number{font-size:.8rem;font-weight:750;color:var(--bw-muted)}
.bw-step>p:last-child{font-size:.9rem}
.bw-faq{border-top:1px solid var(--bw-rule)}
.bw-faq-list{margin-top:0!important}
.wp-block-details{padding:22px 0;border-bottom:1px solid var(--bw-rule)}
.wp-block-details:first-child{border-top:1px solid var(--bw-rule)}
.wp-block-details summary{font-size:1.02rem;font-weight:650;line-height:1.5;cursor:pointer;padding-right:22px}
.wp-block-details>p{font-size:.94rem;padding-top:20px}
.bw-faq-list>.bw-text-link{margin-top:28px}
.bw-cta{background:var(--bw-yellow)}
.bw-cta h2{font-size:clamp(3rem,6vw,6.25rem);max-width:1000px;margin:0 0 26px}
.bw-cta>.bw-container>p:not(.bw-eyebrow){max-width:600px}
.bw-cta .wp-block-buttons{margin-top:30px}
.bw-footer{background:var(--bw-ink);color:var(--bw-paper);padding-top:80px;padding-bottom:32px}
.bw-footer>.bw-container{display:grid;grid-template-columns:2fr 1fr;gap:30px 80px}
.bw-footer .bw-wordmark a{color:var(--bw-yellow)}
.bw-footer-brand h2{font-size:clamp(2.1rem,3.5vw,3.7rem);margin:40px 0 30px}
.bw-footer-brand>.bw-text-link{display:inline-block;margin-right:30px}
.bw-footer-nav{margin-top:0!important}
.bw-footer-nav h3{font-size:.73rem;letter-spacing:.12em;text-transform:uppercase;margin:0 0 32px}
.bw-footer-nav .bw-text-link{margin:0 0 10px}
.bw-footer-nav a{border:0;font-size:.85rem}
.bw-footer-nav .bw-text-link span,.bw-footer-bottom .bw-text-link span{display:none}
.bw-footer-bottom{grid-column:1/-1;border-top:1px solid #4b4e44;padding-top:24px;display:flex;flex-wrap:wrap;gap:12px 25px;align-items:center;font-size:.7rem;margin-top:50px!important}
.bw-footer-bottom p{margin:0}
.bw-footer-bottom>.bw-text-link a{border:0;font-size:.7rem;font-weight:400}
.bw-footer-bottom>p:first-child{margin-right:auto}
.bw-page-hero{background:var(--bw-yellow)}
.bw-page-hero h1{max-width:1150px;margin:0 0 35px}
.bw-page-hero>.bw-container>p:not(.bw-eyebrow){max-width:760px;font-size:1.15rem;line-height:1.75}
.bw-page-hero .bw-text-link{margin-top:30px}
.bw-copy-row{padding-block:60px;border-bottom:1px solid var(--bw-rule)}
.bw-copy-row>.bw-container{display:grid;grid-template-columns:1fr 1.25fr;gap:clamp(30px,8vw,140px)}
.bw-section-title h2{font-size:clamp(1.8rem,2.9vw,3rem);margin:0;max-width:520px}
.bw-section-copy{margin:0!important;max-width:680px}
.bw-section-copy p{font-size:1.02rem}
.bw-guide-hero>.bw-container{max-width:1000px}
.bw-guide-body .bw-copy-row>.bw-container{max-width:1000px;grid-template-columns:1fr;gap:26px}
.bw-guide-body .bw-section-title h2{max-width:900px;font-size:clamp(1.7rem,3vw,2.5rem)}
.bw-guide-body .bw-section-copy{max-width:850px}
.bw-contact-grid>.bw-container{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(32px,8vw,120px)}
.bw-contact-info{max-width:440px}
.bw-contact-info h2{margin:0 0 28px}
.bw-contact-info h3{font-size:1.4rem;margin-top:44px}
.bw-contact-form{margin:0!important;padding:clamp(20px,3vw,42px);background:white;border:1px solid var(--bw-rule);border-radius:6px}
.bw-contact-form iframe{max-width:100%}
.bw-contact-form>p:last-of-type{font-size:.8rem;color:var(--bw-muted)}
.bw-service-context{font-size:.9rem}
.bw-next-step{background:#eeeee5}
.bw-next-step p{max-width:800px}
.bw-answers-category{border-bottom:1px solid var(--bw-rule)}
.bw-answers-category h2{margin:0 0 38px}
.bw-answer-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.bw-answer-link{border-top:1px solid var(--bw-ink);padding-top:24px;margin:0!important}
.bw-answer-link h3{font-size:1.65rem;line-height:1.3}
.bw-answer-link h3 a{text-decoration:none}
.bw-answer-link h3 a:hover{text-decoration:underline}
.bw-answer-link p{font-size:.92rem}
.bw-archive{background:#eeeee5}
.bw-archive .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;list-style:none;padding:0}
.bw-archive-card{border-top:1px solid var(--bw-rule);padding-top:22px}
.bw-archive-card .wp-block-post-title{font-size:1.4rem;line-height:1.3}
.bw-archive-card .wp-block-post-excerpt{font-size:.9rem}
.bw-work-context p{max-width:820px}
.bw-main>.wp-block-post-content>:not(.bw-section):not(.bw-page-body):not(.bw-guide-body){max-width:1200px;margin-inline:auto;padding-inline:var(--bw-gutter)}
.bw-single-post .wp-block-post-content{max-width:820px;margin:60px auto;padding-inline:24px}
.bw-single-hero{padding:80px var(--bw-gutter);background:var(--bw-yellow)}
.bw-single-heading{max-width:1100px;margin:auto}
.bw-single-title{font-size:clamp(2.6rem,5vw,5rem)}
.bw-single-featured-wrap{max-width:1100px;margin:50px auto}
.bw-single-featured-wrap img{max-height:560px;object-fit:cover;width:100%}
.bw-single-post .wp-block-post-date{font-size:.8rem}
.bw-post-navigation,.bw-related-section{padding:50px var(--bw-gutter);max-width:1440px;margin:auto}
.bw-work-gallery:focus-visible{outline:3px solid var(--bw-yellow);outline-offset:6px}
@media(min-width:1500px){.bw-hero>.bw-container{gap:90px}}
@media(max-width:1100px){.bw-header-actions{gap:22px}.bw-primary-nav{font-size:.73rem}.bw-header-inner{gap:24px}.bw-process-grid{grid-template-columns:repeat(2,1fr)}.bw-hero h1{font-size:clamp(2.8rem,5.3vw,4.2rem)}}
@media(max-width:900px){.bw-primary-nav .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.bw-primary-nav .wp-block-navigation__responsive-container-open:not(.always-shown){display:flex!important}.bw-primary-nav .is-menu-open{background:var(--bw-paper);color:var(--bw-ink);padding:30px}.bw-primary-nav .is-menu-open .wp-block-navigation__container{font-size:1.45rem;gap:24px;align-items:flex-start}.bw-header{padding-block:18px}.bw-header-actions{gap:22px}.bw-header .wp-block-buttons{order:-1}.bw-hero>.bw-container{grid-template-columns:1.2fr 1fr;gap:26px}.bw-hero h1{font-size:clamp(2.6rem,5.2vw,3.4rem)}.bw-hero .bw-lead{font-size:1rem}.bw-hero .wp-block-buttons{display:grid}.bw-hero .wp-block-button__link{width:100%;font-size:.8rem}.bw-answer-grid,.bw-archive .wp-block-post-template{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){body{font-size:16px}.bw-section{padding-block:60px}.bw-hero>.bw-container,.bw-split,.bw-route-grid,.bw-copy-row>.bw-container,.bw-contact-grid>.bw-container{grid-template-columns:1fr}.bw-hero h1{font-size:clamp(2.65rem,8.2vw,4.2rem)}.bw-hero-art{max-width:450px;transform:none;margin:32px auto 0!important}.bw-hero .wp-block-buttons{display:flex}.bw-route-grid{gap:50px}.bw-work-gallery{display:grid;grid-auto-flow:row;grid-template-columns:1fr;grid-auto-columns:auto;overflow:visible;gap:22px;padding:0}.bw-work-card{padding:26px}.bw-work-card h3{margin-top:30px}.bw-footer>.bw-container{grid-template-columns:1fr}.bw-footer-nav{margin-top:22px!important}.bw-footer-bottom{grid-column:1;display:block}.bw-footer-bottom p{margin-bottom:14px}.bw-footer-brand>.bw-text-link{display:block}.bw-copy-row{padding-block:40px}.bw-guide-hero h1{font-size:2.8rem}.bw-contact-form{padding:20px 12px}.bw-answer-grid,.bw-archive .wp-block-post-template{grid-template-columns:1fr}.bw-header .wp-block-button__link{padding:9px 13px;font-size:.75rem}.bw-header-actions{gap:18px}.bw-wordmark{font-size:1.3rem}.bw-header-inner{gap:16px}.bw-process-grid{gap:30px 22px}.bw-step h3{font-size:1.25rem}.bw-page-hero h1{font-size:clamp(2.7rem,9vw,4rem)}.bw-page-hero>.bw-container>p:not(.bw-eyebrow){font-size:1rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}.bw-hero-art{transform:none}.wp-block-button__link:hover{transform:none}}
@media(max-width:700px){.bw-investment-grid{grid-template-columns:1fr}.bw-work-card .bw-project-image{margin-inline:-26px}}
