/*
Theme Name: Be The Connector
Theme URI: https://www.betheconnector.com/
Author: Blue Summit Creative
Author URI: https://www.bluesummitcreative.com/
Description: Phase one launch theme for Be The Connector. Presentation-only theme with plugin-ready membership integration.
Version: 0.2.1
Requires at least: 6.0
*/

:root {
	--btc-green: #063f2e;
	--btc-green-dark: #022c20;
	--btc-green-soft: #416f46;
	--btc-blue: #304f63;
	--btc-gold: #d79b32;
	--btc-cream: #f6f3eb;
	--btc-cream-2: #fbf8f1;
	--btc-border: #e4ded2;
	--btc-text: #12211c;
	--btc-muted: #5f6a65;
	--primary: var(--btc-green);
	--secondary: var(--btc-blue);
	--bodycolor: var(--btc-text);
	--link: var(--btc-green);
	--linkhover: var(--btc-green-dark);
	--btncolor1: #fff;
	--btncolor2: #fff;
	--navlink: var(--btc-text);
	--navhover: var(--btc-green);
	--footercolor: var(--btc-text);
	--bodyfont: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--headingfont: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
	--bodybg: var(--btc-cream-2);
	--headerbg: #fff;
	--footerbg: #fff;
}

body { font-family: var(--bodyfont); color: var(--btc-text); background: var(--bodybg); }
a { color: var(--btc-green); }
a:hover { color: var(--btc-green-dark); }
h1, h2, h3, h4, h5, h6 { font-family: var(--headingfont); color: var(--btc-green); letter-spacing: -0.035em; }
p { color: var(--btc-text); line-height: 1.65; }
strong { color: inherit; }

.btc-header { background:#fff; border-bottom:1px solid rgba(6,63,46,.1); box-shadow:0 8px 28px rgba(6,63,46,.05); }
.btc-header .navbar { padding: 1rem 0; }
.btc-logo { max-width: 250px; height:auto; }
.btc-header .nav-link { color:var(--btc-text); font-weight:700; padding:.75rem 1rem!important; }
.btc-header .nav-link:hover, .btc-header .current-menu-item .nav-link { color:var(--btc-green); }
.btc-nav-cta { margin-left:1rem; }

.btc-btn { display:inline-flex; align-items:center; justify-content:center; gap:.4rem; border-radius:.45rem; padding:.9rem 1.4rem; font-weight:800; text-decoration:none; transition:.2s ease; line-height:1.1; border:1px solid transparent; }
.btc-btn-primary { background:var(--btc-green); color:#fff!important; box-shadow:0 10px 24px rgba(6,63,46,.16); }
.btc-btn-primary:hover { background:var(--btc-green-dark); transform:translateY(-1px); }
.btc-btn-outline { border-color:var(--btc-green); color:var(--btc-green)!important; background:#fff; }
.btc-btn-outline:hover { background:rgba(6,63,46,.06); }
.btc-btn-light { background:#fff; color:var(--btc-green)!important; }
.btc-btn-light-outline { border-color:#fff; color:#fff!important; background:transparent; }
.btc-btn-light-outline:hover { background:rgba(255,255,255,.12); }

.btc-section { padding:5rem 0; }
.btc-section-tight { padding:3.75rem 0; }
.btc-eyebrow { color:var(--btc-green-soft); text-transform:uppercase; font-weight:900; letter-spacing:.08em; font-size:.85rem; margin-bottom:.8rem; }
.btc-underline { width:54px; height:3px; background:var(--btc-green-soft); margin:1rem 0 1.35rem; }
.btc-underline.center { margin-left:auto; margin-right:auto; }
.btc-lead { font-size:1.15rem; color:var(--btc-muted); max-width:680px; }

.btc-hero { background:#fff; overflow:hidden; }
.btc-hero .container-fluid { padding-left:0; padding-right:0; }
.btc-hero-copy { padding:5.4rem max(1.5rem, calc((100vw - 1320px)/2)) 5rem max(1.5rem, calc((100vw - 1320px)/2)); }
.btc-hero h1 { font-size:clamp(2.8rem, 5vw, 5.05rem); line-height:.98; margin-bottom:1rem; }
.btc-hero-image { min-height:520px; height:100%; background-size:cover; background-position:center; position:relative; }
.btc-hero-image:before { content:""; position:absolute; inset:0; background:linear-gradient(90deg, rgba(255,255,255,.95), rgba(255,255,255,.18) 38%, rgba(255,255,255,0) 70%); }
.btc-hero-actions { display:flex; flex-wrap:wrap; gap:1rem; margin-top:1.5rem; }

.btc-feature-strip { background:var(--btc-cream); border-top:1px solid var(--btc-border); border-bottom:1px solid var(--btc-border); }
.btc-feature-item { display:flex; gap:1.1rem; align-items:flex-start; padding:1rem 1.25rem; border-right:1px solid var(--btc-border); height:100%; }
.btc-feature-item:last-child { border-right:0; }
.btc-icon { flex:0 0 auto; width:62px; height:62px; border-radius:50%; background:#fff; display:grid; place-items:center; color:var(--btc-green); font-size:1.75rem; box-shadow:0 8px 24px rgba(6,63,46,.06); }
.btc-feature-item h3 { font-size:1.05rem; margin-bottom:.4rem; color:var(--btc-text); letter-spacing:0; }
.btc-feature-item p { font-size:.95rem; margin:0; color:var(--btc-muted); line-height:1.45; }

.btc-split { background:#fff; }
.btc-split-image { min-height:420px; background-size:cover; background-position:center; }
.btc-split-copy { padding:4rem max(1.5rem, calc((100vw - 1320px)/2)) 4rem 4.25rem; }
.btc-split h2, .btc-centered h2 { font-size:clamp(2rem, 3vw, 3rem); line-height:1.08; }

.btc-card { background:#fff; border:1px solid var(--btc-border); border-radius:1rem; box-shadow:0 12px 32px rgba(6,63,46,.06); height:100%; }
.btc-process-card { padding:2rem; position:relative; }
.btc-step-number { position:absolute; top:1.3rem; left:1.3rem; width:32px; height:32px; border-radius:50%; background:var(--btc-green-soft); color:#fff; display:grid; place-items:center; font-weight:900; }
.btc-process-card .btc-icon { margin-left:2.2rem; margin-bottom:1rem; }

.btc-chapter-card { display:block; text-decoration:none; border-radius:.8rem; overflow:hidden; position:relative; min-height:170px; background-size:cover; background-position:center; box-shadow:0 14px 34px rgba(6,63,46,.13); }
.btc-chapter-card:before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 20%, rgba(0,0,0,.74) 100%); }
.btc-chapter-card-content { position:absolute; left:1rem; right:1rem; bottom:1rem; color:#fff; }
.btc-chapter-card h3 { color:#fff; font-size:1.35rem; margin:0 0 .2rem; }
.btc-chapter-card span { color:#fff; font-weight:800; font-size:.95rem; }

.btc-green-band { background:linear-gradient(90deg, var(--btc-green), #07523c); color:#fff; position:relative; overflow:hidden; }
.btc-green-band h2, .btc-green-band p { color:#fff; }
.btc-green-band:before { content:""; position:absolute; width:300px; height:300px; border-radius:50%; left:-125px; top:-100px; border:48px solid rgba(255,255,255,.05); }
.btc-green-band .container { position:relative; z-index:2; }

.btc-footer { background:#fff; padding:3.5rem 0 2rem; border-top:1px solid var(--btc-border); }
.btc-footer-logo { max-width:220px; }
.btc-footer h3 { font-size:.8rem; text-transform:uppercase; letter-spacing:.08em; color:var(--btc-green-soft); }
.btc-footer ul { list-style:none; padding:0; margin:0; }
.btc-footer a { text-decoration:none; color:var(--btc-text); }
.btc-footer a:hover { color:var(--btc-green); }
.btc-footer-bottom { border-top:1px solid var(--btc-border); margin-top:2rem; padding-top:1rem; color:var(--btc-muted); font-size:.9rem; }

.btc-form-card { padding:2rem; }
.btc-form-card .gform_wrapper.gravity-theme input[type=text],
.btc-form-card .gform_wrapper.gravity-theme input[type=email],
.btc-form-card .gform_wrapper.gravity-theme input[type=tel],
.btc-form-card .gform_wrapper.gravity-theme input[type=url],
.btc-form-card .gform_wrapper.gravity-theme select,
.btc-form-card .gform_wrapper.gravity-theme textarea { border:1px solid var(--btc-border); border-radius:.45rem; padding:.78rem .9rem; }
.btc-form-card .gform_wrapper.gravity-theme .gfield_label { font-weight:800; color:var(--btc-text); }
.btc-form-card .gform_button { background:var(--btc-green)!important; color:#fff!important; border:0!important; border-radius:.45rem!important; padding:.95rem 1.4rem!important; font-weight:900!important; width:100%; }

.btc-list { list-style:none; padding:0; margin:0; }
.btc-list li { display:flex; gap:.75rem; align-items:flex-start; margin-bottom:1rem; }
.btc-list .mark { width:28px; height:28px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; background:var(--btc-green); color:#fff; font-weight:900; padding:0; }
.btc-list .mark.no { background:#26443a; }

.btc-faq-item { border-left:1px solid var(--btc-border); padding:0 1.5rem; height:100%; }
.btc-faq-item h3 { color:var(--btc-text); font-size:1.05rem; letter-spacing:0; }
.btc-faq-item p { color:var(--btc-muted); font-size:.95rem; }

@media (max-width: 991.98px) {
	.btc-hero-copy { padding:4rem 1.5rem 2rem; }
	.btc-hero-image { min-height:360px; }
	.btc-split-copy { padding:3rem 1.5rem; }
	.btc-feature-item { border-right:0; border-bottom:1px solid var(--btc-border); }
	.btc-feature-item:last-child { border-bottom:0; }
	.btc-nav-cta { margin:1rem 0 0; }
}

/* BTC launch cleanup pass 2026-05-01 */
.btc-hero-copy {
	max-width: 720px;
}
.btc-hero h1 {
	max-width: 720px;
	line-height: 1.04;
}
.btc-feature-strip {
	position: relative;
	z-index: 1;
}
.btc-chapter-card {
	background-image: none !important;
	min-height: 0;
	display: block;
}
.btc-chapter-card img {
	width: 100%;
	height: 190px;
	object-fit: cover;
	display: block;
	transition: transform .25s ease;
}
.btc-chapter-card:hover img {
	transform: scale(1.04);
}
.btc-chapter-card:before {
	z-index: 1;
	background: linear-gradient(180deg, rgba(0,0,0,0) 12%, rgba(0,0,0,.78) 100%);
}
.btc-chapter-card-content {
	z-index: 2;
}
.btc-split-image,
.btc-hero-image {
	background-position: center center;
}
@media (min-width: 992px) {
	.btc-hero .col-lg-5 { width: 46%; }
	.btc-hero .col-lg-7 { width: 54%; }
}


/* BTC final polish pass 2026-05-01 */
.btc-form-card {
	padding: clamp(1.5rem, 3vw, 2.5rem);
	border-radius: 1.15rem;
	box-shadow: 0 18px 44px rgba(6, 63, 46, .09);
}
.btc-form-card > h2 {
	font-size: clamp(1.8rem, 3vw, 2.35rem);
	line-height: 1.08;
}
.btc-form-card .gform_wrapper.gravity-theme .gform_fields {
	grid-row-gap: 1rem;
}
.btc-form-card .gform_wrapper.gravity-theme .gfield_description,
.btc-form-card .gform_wrapper.gravity-theme .gform-field-label--type-sub {
	color: var(--btc-muted);
}
.btc-form-card .gform_wrapper.gravity-theme .gfield_label {
	font-size: .93rem;
	margin-bottom: .35rem;
}
.btc-form-card .gform_wrapper.gravity-theme input[type=text],
.btc-form-card .gform_wrapper.gravity-theme input[type=email],
.btc-form-card .gform_wrapper.gravity-theme input[type=tel],
.btc-form-card .gform_wrapper.gravity-theme input[type=url],
.btc-form-card .gform_wrapper.gravity-theme select,
.btc-form-card .gform_wrapper.gravity-theme textarea {
	min-height: 48px;
	background: #fff;
	font-size: 1rem;
}
.btc-form-card .gform_wrapper.gravity-theme textarea {
	min-height: 118px;
}
.btc-form-card .gform_wrapper.gravity-theme select {
	cursor: pointer;
}
.btc-form-card .gform_button {
	min-height: 54px;
	font-size: 1.05rem!important;
}
.btc-join-fit-card {
	background: var(--btc-cream-2);
	border: 1px solid var(--btc-border);
	border-radius: 1rem;
	padding: 1.5rem;
}
.btc-join-note {
	font-size: .96rem;
	color: var(--btc-muted);
}
.btc-chapter-card {
	transition: transform .22s ease, box-shadow .22s ease;
}
.btc-chapter-card:hover {
	transform: translateY(-3px);
	box-shadow: 0 18px 42px rgba(6,63,46,.18);
}
.btc-chapter-card:focus-visible,
.btc-btn:focus-visible {
	outline: 3px solid rgba(215, 155, 50, .65);
	outline-offset: 3px;
}
@media (min-width: 992px) {
	.page-template-page-join .btc-form-card {
		position: relative;
		top: -1rem;
	}
}
@media (max-width: 767.98px) {
	.btc-form-card {
		padding: 1.25rem;
	}
	.btc-hero h1 {
		font-size: clamp(2.35rem, 12vw, 3.25rem);
	}
	.btc-btn {
		width: 100%;
	}
	.btc-hero-actions {
		gap: .75rem;
	}
}
