/*
Theme Name: Brief to Invoice
Theme URI: https://brieftoinvoice.com/
Description: The Brief to Invoice GeneratePress child theme.
Author: Len Johnson
Template: generatepress
Version: 1.0.0
Requires at least: 6.6
Requires PHP: 7.4
Text Domain: brieftoinvoice
*/
:root{--bti-ink:#20231f;--bti-soft:#4f554e;--bti-paper:#f8f4ec;--bti-surface:#fffdf8;--bti-amber:#f3b61f;--bti-teal:#176b60;--bti-coral:#d9613c;--bti-line:#dcd5c8;--bti-muted:#eee8dd;--bti-success:#e6f2ed;--bti-warning:#fff2cc;--bti-error:#f9e7e1;--bti-display:"Instrument Serif",Georgia,serif;--bti-body:"DM Sans",Arial,sans-serif;--bti-sm:.5rem;--bti-md:1rem;--bti-lg:1.5rem;--bti-content:74rem;--bti-reading:48rem;--bti-section:clamp(3.75rem,8vw,6rem)}
html{scroll-behavior:smooth}body,button,input,select,textarea{font-family:var(--bti-body)}body{background:var(--bti-paper);color:var(--bti-ink);font-size:1rem;line-height:1.65}a{color:var(--bti-teal);text-decoration-thickness:.08em;text-underline-offset:.18em}a:hover,a:focus{color:var(--bti-ink)}:focus-visible{outline:3px solid var(--bti-amber);outline-offset:3px}h1,h2,.bti-display{color:var(--bti-ink);font-family:var(--bti-display);font-weight:400;letter-spacing:-.025em;line-height:.98}h1{font-size:clamp(3.25rem,7vw,6.75rem)}h2{font-size:clamp(2.5rem,5vw,4.5rem)}h3,h4,h5,h6{color:var(--bti-ink);font-weight:700;line-height:1.2}p,li{max-width:72ch}::selection{background:var(--bti-amber);color:var(--bti-ink)}
.grid-container,.inside-header,.inside-navigation,.inside-footer-widgets,.inside-site-info{max-width:var(--bti-content)}.site-header,.main-navigation{background:var(--bti-paper);border-bottom:1px solid var(--bti-line)}.inside-header{padding:1.1rem 1rem}.site-branding .main-title{font-size:1.15rem;font-weight:700;letter-spacing:-.03em}.site-branding .main-title a{color:var(--bti-ink)}.main-navigation .main-nav ul li a,.menu-toggle{color:var(--bti-ink);font-size:.86rem;font-weight:700}.main-navigation .main-nav ul li[class*="current-menu-"]>a,.main-navigation .main-nav ul li:hover>a{background:transparent;color:var(--bti-teal)}.main-navigation .main-nav ul li[class*="current-menu-"]>a{box-shadow:inset 0 -3px 0 var(--bti-amber)}.separate-containers .inside-article,.one-container .site-content{background:transparent}.site-content{padding-block:clamp(2rem,5vw,5rem)}.entry-meta,.entry-summary{color:var(--bti-soft)}.site-info{background:var(--bti-ink);color:#fff}.site-info a{color:var(--bti-amber)}
button,input[type=submit],.wp-block-button__link{background:var(--bti-amber);border:2px solid transparent;border-radius:999px;color:var(--bti-ink);font-weight:700;line-height:1;padding:.82rem 1.2rem;text-decoration:none;transition:.18s}button:hover,input[type=submit]:hover,.wp-block-button__link:hover{background:#ffc83d;color:var(--bti-ink);transform:translateY(-2px)}.is-style-outline>.wp-block-button__link{background:transparent;border-color:var(--bti-ink);color:var(--bti-ink)}.is-style-outline>.wp-block-button__link:hover{background:var(--bti-ink);color:#fff}input[type=text],input[type=email],input[type=url],input[type=search],select,textarea{background:#fff;border:1.5px solid #b8b3aa;border-radius:var(--bti-sm);color:var(--bti-ink);padding:.82rem .9rem}input:focus,select:focus,textarea:focus{border-color:var(--bti-ink);box-shadow:0 0 0 3px rgb(243 182 31/38%);outline:0}
.bti-section{padding-block:var(--bti-section)}.bti-reading-width{max-width:var(--bti-reading)}.bti-eyebrow{align-items:center;color:var(--bti-teal);display:flex;font-size:.76rem;font-weight:700;gap:.6rem;letter-spacing:.13em;margin-bottom:.8rem;text-transform:uppercase}.bti-eyebrow:before{background:currentColor;content:"";height:2px;width:1.8rem}.bti-lede{color:var(--bti-soft);font-size:clamp(1.1rem,2vw,1.35rem);line-height:1.55;max-width:42rem}.bti-card{background:var(--bti-surface);border:1px solid var(--bti-line);border-radius:var(--bti-lg);padding:clamp(1.4rem,3vw,2.25rem)}.bti-badge{background:var(--bti-muted);border-radius:999px;color:var(--bti-ink);display:inline-flex;font-size:.76rem;font-weight:700;padding:.35rem .7rem}.bti-badge--success{background:var(--bti-success);color:var(--bti-teal)}.bti-badge--warning{background:var(--bti-warning);color:#684d00}
.bti-share-note{align-items:start;background:var(--bti-amber);border:2px solid var(--bti-ink);border-radius:var(--bti-md);box-shadow:5px 5px 0 var(--bti-ink);display:grid;gap:1rem;grid-template-columns:auto 1fr;margin-block:2rem;padding:1.25rem 1.4rem}.bti-share-note p{margin-bottom:0}.bti-share-note__icon{align-items:center;background:var(--bti-ink);border-radius:50%;color:#fff;display:flex;font-weight:700;height:2.6rem;justify-content:center;line-height:1;width:2.6rem}.bti-share-note__copy strong{display:block;margin-bottom:.2rem}
.bti-comparison{display:grid;gap:1.25rem;grid-template-columns:repeat(2,minmax(0,1fr));margin-block:2.5rem}.bti-message-card{background:var(--bti-surface);border:1px solid var(--bti-line);border-radius:var(--bti-lg);overflow:hidden}.bti-message-card--reply{box-shadow:inset 0 5px 0 var(--bti-teal)}.bti-message-card__header{align-items:center;border-bottom:1px solid var(--bti-line);display:flex;gap:1rem;justify-content:space-between;padding:1rem 1.25rem}.bti-message-card__header h3{font-size:1.2rem;margin:0}.bti-message-card__body{padding:1.4rem}.bti-client-message{background:var(--bti-muted);border-radius:0 var(--bti-md) var(--bti-md);font-size:1.06rem;padding:1rem}.bti-reply-message{border-left:4px solid var(--bti-teal);padding-left:1.15rem}
.bti-article-layout{align-items:start;display:grid;gap:clamp(2rem,6vw,5rem);grid-template-columns:minmax(0,1fr) 16rem}.bti-article{min-width:0}.bti-article>p,.bti-article>ul,.bti-article>ol{max-width:44rem}.bti-article h2{font-size:clamp(2rem,4vw,3.15rem);line-height:1.05;margin-top:3rem;scroll-margin-top:7rem}.bti-article h3{margin-top:2.25rem;scroll-margin-top:7rem}.bti-article-meta{border-block:1px solid var(--bti-line);color:var(--bti-soft);display:flex;flex-wrap:wrap;font-size:.84rem;gap:.75rem 1.25rem;padding-block:1rem}.bti-on-this-page{background:var(--bti-surface);border:1px solid var(--bti-line);border-radius:var(--bti-md);padding:1.2rem;position:sticky;top:6rem}.admin-bar .bti-on-this-page{top:calc(6rem + 32px)}.bti-on-this-page__title{font-size:.78rem;font-weight:700;letter-spacing:.1em;margin:0 0 .75rem;text-transform:uppercase}.bti-on-this-page ol{counter-reset:toc;list-style:none;margin:0;padding:0}.bti-on-this-page li{border-top:1px solid var(--bti-line);counter-increment:toc}.bti-on-this-page a{color:var(--bti-soft);display:grid;font-size:.82rem;font-weight:600;gap:.3rem;grid-template-columns:1.6rem 1fr;padding-block:.65rem;text-decoration:none}.bti-on-this-page a:before{color:var(--bti-teal);content:"0" counter(toc);font-size:.72rem}.bti-on-this-page a[aria-current=location]{color:var(--bti-ink);font-weight:700}
.bti-email-signup{background:var(--bti-amber);border:2px solid var(--bti-ink);border-radius:var(--bti-lg);overflow:hidden;padding:clamp(1.8rem,5vw,4rem);position:relative}.bti-email-signup:after{color:rgb(32 35 31/7%);content:"@";font:12rem/1 var(--bti-display);position:absolute;right:2rem;top:-2rem}.bti-email-signup>*{position:relative;z-index:1}.bti-email-signup h2{font-size:clamp(2.6rem,5vw,4.8rem);max-width:12ch}.bti-email-signup p{max-width:39rem}.bti-email-signup form{align-items:stretch;display:flex;gap:.6rem;margin-top:1.3rem;max-width:40rem}.bti-email-signup input[type=email]{border:2px solid var(--bti-ink);flex:1;min-width:0}.bti-signup-note{font-size:.76rem}
.bti-content-grid{display:grid;gap:1.25rem;grid-template-columns:repeat(3,minmax(0,1fr))}.bti-content-card{background:var(--bti-surface);border:1px solid var(--bti-line);border-radius:var(--bti-lg);display:flex;flex-direction:column;min-height:22rem;overflow:hidden}.bti-content-card__art{align-items:end;background:var(--bti-muted);border-bottom:1px solid var(--bti-line);display:flex;min-height:9rem;padding:1.25rem}.bti-content-card__art--book{background:var(--bti-amber)}.bti-content-card__art--article{background:var(--bti-teal);color:#fff}.bti-content-card__art--resource{background:var(--bti-error)}.bti-content-card__body{display:flex;flex:1;flex-direction:column;padding:1.4rem}.bti-content-card__body h3{font:2rem/1.05 var(--bti-display);margin:.45rem 0 .8rem}.bti-content-card__body .wp-block-buttons{margin-top:auto}.bti-route-placeholder{background:var(--bti-ink);border-radius:var(--bti-lg);color:#fff;overflow:hidden;padding:clamp(2rem,5vw,4rem);position:relative}.bti-route-placeholder:after{bottom:-4rem;color:rgb(243 182 31/17%);content:"â†’";font:16rem/1 var(--bti-display);position:absolute;right:-1rem}.bti-route-placeholder>*{position:relative;z-index:1}.bti-route-placeholder h2{color:#fff;max-width:13ch}
@media(max-width:900px){.bti-content-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.bti-article-layout{grid-template-columns:1fr}.bti-on-this-page{order:-1;position:static}}@media(max-width:700px){.bti-comparison,.bti-content-grid{grid-template-columns:1fr}.bti-email-signup form{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}

/* =========================================================
   BRIEF TO INVOICE — BOOK-LED HOMEPAGE
   ========================================================= */

.bti-home-section {
	--bti-home-gutter: clamp(1.25rem, 4vw, 2.5rem);

	box-sizing: border-box;
	width: 100%;
	padding-top: clamp(4rem, 8vw, 7rem);
	padding-right: max(
		var(--bti-home-gutter),
		calc((100% - var(--bti-content, 74rem)) / 2)
	);
	padding-bottom: clamp(4rem, 8vw, 7rem);
	padding-left: max(
		var(--bti-home-gutter),
		calc((100% - var(--bti-content, 74rem)) / 2)
	);
}

.bti-home-section--compact {
	padding-top: clamp(2rem, 5vw, 3.5rem);
	padding-bottom: clamp(2rem, 5vw, 3.5rem);
}

.bti-home-inner {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-right: auto;
	margin-left: auto;
}

.bti-home-section p:last-child {
	margin-bottom: 0;
}

/* Remove GeneratePress spacing around this full-width page */
body.home .site-content,
body.home .inside-article {
	padding: 0;
}

body.home .entry-content {
	margin-top: 0;
}


/* Hero */

.bti-hero-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.08fr) minmax(20rem, 0.82fr);
	gap: clamp(2.5rem, 7vw, 6rem);
	align-items: center;
}

.bti-book-title {
	max-width: 10ch;
	margin-bottom: 1.5rem;
	font-family: var(--bti-font-body, "DM Sans", Arial, sans-serif);
	font-size: clamp(3.5rem, 7vw, 6.8rem);
	font-weight: 700;
	line-height: 0.9;
	letter-spacing: -0.065em;
}

.bti-book-subtitle {
	max-width: 39rem;
	color: var(--bti-ink-soft, #4f554e);
	font-size: clamp(1.15rem, 2vw, 1.4rem);
	line-height: 1.5;
}

.bti-book-audience {
	max-width: 39rem;
	font-weight: 600;
}

.bti-book-meta {
	margin-top: 1.5rem;
	color: var(--bti-ink-soft, #4f554e);
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.bti-book-actions {
	margin-top: 1.25rem;
}

.bti-button-dark .wp-block-button__link {
	background: var(--bti-ink, #20231f);
	color: #fff;
}

.bti-button-dark .wp-block-button__link:hover,
.bti-button-dark .wp-block-button__link:focus {
	background: var(--bti-teal, #176b60);
	color: #fff;
}


/* Client request → invoice hero visual */

.bti-proof {
	position: relative;
	display: grid;
	gap: 1rem;
}

.bti-proof__request,
.bti-proof__invoice {
	box-sizing: border-box;
	padding: clamp(1.4rem, 3vw, 2rem);
	border: 1px solid var(--bti-line, #dcd5c8);
}

.bti-proof__request {
	margin-top: 0.75rem;
	margin-right: clamp(0rem, 4vw, 2.5rem);

	background: #f8edcc;

	transform: rotate(-2deg);
	transform-origin: bottom left;
}

.bti-proof__bridge {
	max-width: 30rem;
	margin: 0;
	color: var(--bti-ink-soft, #4f554e);
	font-size: 0.95rem;
}

.bti-proof__label {
	margin-bottom: 0.75rem;
	color: var(--bti-teal, #176b60);
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: 0.75rem;
	letter-spacing: 0.08em;
}

.bti-proof__request-text {
	margin: 0;
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: clamp(0.9rem, 1.5vw, 1.05rem);
	line-height: 1.65;
}

.bti-proof__invoice {
	position: relative;
	margin-left: clamp(0rem, 4vw, 2.5rem);
	background: var(--bti-surface, #fffdf8);
}

.bti-proof__paid {
	position: absolute;
	z-index: 2;
	top: 1.25rem;
	right: 1.25rem;

	width: max-content;
	margin: 0;
	padding: 0.35rem 0.7rem;

	border: 3px solid var(--bti-teal, #176b60);
	background: var(--bti-surface, #fffdf8);
	color: var(--bti-teal, #176b60);

	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: 0.85rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.15em;

	transform: rotate(-6deg);
	transform-origin: center;
}

/* Reserve room so the label cannot run beneath the stamp */
.bti-proof__invoice > .bti-proof__label {
	min-height: 2.75rem;
	padding-right: 7rem;
}

.bti-invoice-row {
	display: flex;
	gap: 1rem;
	justify-content: space-between;
	padding: 0.75rem 0;
	border-bottom: 1px solid var(--bti-line, #dcd5c8);
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: 0.9rem;
}

.bti-invoice-row strong:first-child {
	max-width: 70%;
}

.bti-invoice-row--total {
	margin-top: 0.25rem;
	border-top: 3px solid var(--bti-ink, #20231f);
	border-bottom: 0;
	font-size: 1rem;
}


/* Why the book exists */

.bti-why-grid {
	display: grid;
	grid-template-columns: minmax(0, 1.05fr) minmax(18rem, 0.95fr);
	gap: clamp(2rem, 6vw, 5rem);
	align-items: start;
}

.bti-why-points {
	display: grid;
	gap: 1rem;
}

.bti-why-point {
	padding: 1.4rem;
	border: 1px solid var(--bti-line, #dcd5c8);
	border-radius: var(--bti-radius-md, 1rem);
	background: var(--bti-surface, #fffdf8);
}

.bti-why-point h3 {
	margin-bottom: 0.5rem;
}

.bti-home-quote {
	margin-top: 2rem;
	padding-left: 1.25rem;
	border-left: 5px solid var(--bti-amber, #f3b61f);
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: clamp(1.8rem, 4vw, 3.25rem);
	line-height: 1.1;
}


/* Five routes */

.bti-route-list {
	margin-top: clamp(2rem, 5vw, 4rem);
	border-top: 1px solid var(--bti-line, #dcd5c8);
}

.bti-route {
	display: grid;
	grid-template-columns: 4rem minmax(0, 1fr);
	gap: 1.25rem;
	padding: 1.5rem 0;
	border-bottom: 1px solid var(--bti-line, #dcd5c8);
}

.bti-route__number {
	color: var(--bti-teal, #176b60);
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: 2.4rem;
	line-height: 1;
}

.bti-route h3 {
	margin: 0 0 0.35rem;
	font-size: 1.1rem;
}

.bti-route p {
	margin: 0;
	color: var(--bti-ink-soft, #4f554e);
}


/* Real brief example */

.bti-case-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 1.25rem;
	margin-top: 2.5rem;
}

.bti-case-card {
	box-sizing: border-box;
	padding: clamp(1.4rem, 3vw, 2rem);
	border: 1px solid var(--bti-line, #dcd5c8);
	border-radius: var(--bti-radius-lg, 1.5rem);
	background: var(--bti-surface, #fffdf8);
}

.bti-case-card--client {
	background: var(--bti-muted, #eee8dd);
}

.bti-case-card--insight {
	border-top: 6px solid var(--bti-amber, #f3b61f);
}

.bti-case-card--reply {
	border-top: 6px solid var(--bti-teal, #176b60);
}

.bti-case-card h3 {
	margin: 0.75rem 0;
}

.bti-case-card p:last-child {
	margin-bottom: 0;
}

.bti-case-price {
	display: flex;
	justify-content: space-between;
	gap: 1rem;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--bti-line, #dcd5c8);
	font-family: ui-monospace, SFMono-Regular, Consolas, monospace;
	font-size: 0.85rem;
}

.bti-case-price--total {
	margin-top: 0.3rem;
	border-top: 3px solid var(--bti-ink, #20231f);
	border-bottom: 0;
	font-weight: 700;
}


/* Newsletter */

.bti-home-signup {
	position: relative;
	overflow: hidden;
	padding: clamp(2rem, 6vw, 4.5rem);
	border: 2px solid var(--bti-ink, #20231f);
	border-radius: var(--bti-radius-lg, 1.5rem);
	background: var(--bti-amber, #f3b61f);
}

.bti-home-signup::after {
	position: absolute;
	top: -2rem;
	right: 2rem;
	content: "@";
	color: rgb(32 35 31 / 8%);
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: clamp(9rem, 20vw, 15rem);
	line-height: 1;
}

.bti-home-signup > * {
	position: relative;
	z-index: 1;
}

.bti-home-signup h2 {
	max-width: 13ch;
}

.bti-home-signup__copy {
	max-width: 42rem;
}

.bti-home-signup__disclosure {
	margin-top: 1rem;
	font-size: 0.8rem;
}


/* Latest writing and author */

.bti-latest-header {
	display: flex;
	gap: 2rem;
	align-items: end;
	justify-content: space-between;
	margin-bottom: 2rem;
}

.bti-home-query .wp-block-post-template {
	gap: 1.25rem;
}

.bti-home-query .wp-block-post {
	box-sizing: border-box;
	padding: 1.5rem;
	border: 1px solid var(--bti-line, #dcd5c8);
	border-radius: var(--bti-radius-lg, 1.5rem);
	background: var(--bti-surface, #fffdf8);
}

.bti-home-query .wp-block-post-title {
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: clamp(1.7rem, 3vw, 2.25rem);
	font-weight: 400;
	line-height: 1.05;
}

.bti-author-strip {
	display: grid;
	grid-template-columns: auto minmax(0, 1fr) auto;
	gap: 1.5rem;
	align-items: center;
	margin-top: clamp(3rem, 7vw, 5rem);
	padding-top: 2rem;
	border-top: 1px solid var(--bti-line, #dcd5c8);
}

.bti-author-mark {
	display: grid;
	width: 4.5rem;
	height: 4.5rem;
	place-items: center;
	border-radius: 50%;
	background: var(--bti-teal, #176b60);
	color: #fff;
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: 2.2rem;
}


/* Responsive */

@media (max-width: 900px) {
	.bti-hero-grid,
	.bti-why-grid {
		grid-template-columns: 1fr;
	}

	.bti-proof {
		max-width: 38rem;
	}

	.bti-case-grid {
		grid-template-columns: 1fr;
	}

	.bti-latest-header {
		display: block;
	}

	.bti-latest-header .wp-block-buttons {
		margin-top: 1.25rem;
	}

	.bti-home-query .wp-block-post-template {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.bti-author-strip {
		grid-template-columns: auto minmax(0, 1fr);
	}

	.bti-author-strip .wp-block-buttons {
		grid-column: 1 / -1;
	}
}

@media (max-width: 600px) {
	.bti-home-section {
		--bti-home-gutter: 1.25rem;
	}

	.bti-book-title {
		font-size: clamp(3rem, 15vw, 4.6rem);
	}

	.bti-proof__request,
	.bti-proof__invoice {
		margin-right: 0;
		margin-left: 0;
	}

	.bti-route {
		grid-template-columns: 2.75rem minmax(0, 1fr);
	}

	.bti-home-query .wp-block-post-template {
		grid-template-columns: 1fr;
	}

	.bti-author-strip {
		grid-template-columns: 1fr;
	}

	.bti-author-mark {
		width: 3.75rem;
		height: 3.75rem;
	}
}

@media (max-width: 420px) {
	.bti-proof__paid {
		position: static;
		margin: 0 0 1.25rem auto;
	}

	.bti-proof__invoice > .bti-proof__label {
		min-height: 0;
		padding-right: 0;
	}
}

/* Book contents page */

.bti-book-contents .bti-route {
	align-items: start;
}

.bti-book-contents .bti-route h3 {
	margin: 0.2rem 0 1rem;
	font-family: var(--bti-font-display, "Instrument Serif", Georgia, serif);
	font-size: clamp(1.7rem, 3vw, 2.35rem);
	font-weight: 400;
	line-height: 1.05;
}

.bti-book-chapter-list {
	display: grid;
	gap: 0;
	margin: 0;
	padding-left: 1.5rem;
}

.bti-book-chapter-list li {
	padding: 0.75rem 0 0.75rem 0.35rem;
	border-bottom: 1px solid var(--bti-line, #dcd5c8);
	color: var(--bti-ink-soft, #4f554e);
}

.bti-book-chapter-list li:last-child {
	border-bottom: 0;
}

.bti-book-chapter-list a {
	display: inline-block;
	color: var(--bti-ink, #20231f);
	font-weight: 650;
	line-height: 1.4;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.22em;
}

.bti-book-chapter-list a:hover,
.bti-book-chapter-list a:focus-visible {
	color: var(--bti-teal, #176b60);
	text-decoration-thickness: 2px;
}

.bti-book-chapter-list a:focus-visible {
	outline: 3px solid var(--bti-amber, #f3b61f);
	outline-offset: 4px;
}

@media (max-width: 600px) {
	.bti-book-contents .bti-route {
		grid-template-columns: 2.75rem minmax(0, 1fr);
		gap: 0.85rem;
	}

	.bti-book-chapter-list {
		padding-left: 1.25rem;
	}
}

.bti-home-section--cta {
  padding-block: 4rem;
  border-top: 1px solid var(--wp--preset--color--brief-rule, #c9d6e3);
}

.bti-list {
  padding-left: 1.2em;
}
.bti-list li {
  margin-block: 0.45rem;
}
.bti-home-inner .wp-block-list {
  margin-block: 1.1rem 1.6rem;
  padding-left: 1.35em;
}

.bti-home-inner .wp-block-list li {
  margin-block: 0.55rem;
  padding-left: 0.25em;
}

.bti-home-inner .wp-block-list li::marker {
  color: var(--wp--preset--color--brief-ink-soft, #55637a);
}

/**
 * Brief to Invoice contact page additions.
 * Add to the GeneratePress child theme stylesheet after the shared bti-* rules.
 */

.bti-contact-grid {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(22rem, 1.15fr);
	gap: clamp(2rem, 7vw, 6rem);
	align-items: start;
}

.bti-contact-form-shell {
	box-sizing: border-box;
	padding: clamp(1.5rem, 4vw, 2.5rem);
	border: 2px solid var(--bti-ink, #20231f);
	border-radius: var(--bti-radius-lg, 1.5rem);
	background: var(--bti-surface, #fffdf8);
	box-shadow: 0.75rem 0.75rem 0 var(--bti-amber, #f3b61f);
}

.bti-contact-form-shell .wpforms-container {
	margin: 1rem 0 0;
}

.bti-contact-form-shell .wpforms-field {
	padding: 0 0 1.15rem;
}

.bti-contact-form-shell .wpforms-field-label {
	margin-bottom: 0.4rem;
	color: var(--bti-ink, #20231f);
	font-weight: 700;
}

.bti-contact-form-shell .wpforms-required-label {
	color: #9a3412;
}

.bti-contact-form-shell input:not([type="checkbox"]):not([type="radio"]),
.bti-contact-form-shell select,
.bti-contact-form-shell textarea {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	padding: 0.75rem 0.9rem;
	border: 2px solid var(--bti-line, #dcd5c8);
	border-radius: 0.5rem;
	background: #fff;
	color: var(--bti-ink, #20231f);
	font: inherit;
}

.bti-contact-form-shell input:focus,
.bti-contact-form-shell select:focus,
.bti-contact-form-shell textarea:focus {
	border-color: var(--bti-teal, #176b60);
	outline: 3px solid rgb(23 107 96 / 18%);
	outline-offset: 1px;
}

.bti-contact-form-shell .wpforms-field-description,
.bti-contact-form-shell .wpforms-field-sublabel,
.bti-contact-privacy {
	color: var(--bti-ink-soft, #4f554e);
	font-size: 0.82rem;
	line-height: 1.5;
}

.bti-contact-form-shell button[type="submit"],
.bti-contact-form-shell input[type="submit"] {
	min-height: 3.1rem;
	padding: 0.75rem 1.4rem;
	border: 2px solid var(--bti-ink, #20231f);
	border-radius: 999px;
	background: var(--bti-ink, #20231f);
	color: #fff;
	font: inherit;
	font-weight: 700;
	cursor: pointer;
}

.bti-contact-form-shell button[type="submit"]:hover,
.bti-contact-form-shell button[type="submit"]:focus-visible,
.bti-contact-form-shell input[type="submit"]:hover,
.bti-contact-form-shell input[type="submit"]:focus-visible {
	background: var(--bti-teal, #176b60);
}

.bti-contact-form-shell .wpforms-confirmation-container-full {
	margin: 0;
	padding: 1.25rem;
	border: 2px solid var(--bti-teal, #176b60);
	border-radius: 0.75rem;
	background: rgb(23 107 96 / 8%);
	color: var(--bti-ink, #20231f);
}

.bti-contact-privacy {
	margin: 1rem 0 0;
}

@media (max-width: 900px) {
	.bti-contact-grid {
		grid-template-columns: 1fr;
	}

	.bti-contact-form-shell {
		max-width: 46rem;
	}
}

@media (max-width: 600px) {
	.bti-contact-form-shell {
		box-shadow: 0.45rem 0.45rem 0 var(--bti-amber, #f3b61f);
	}
}
/* ==========================================================
   NEWSLETTER ISSUE LAYOUT
   Applies only to individual posts in the Newsletter category
   ========================================================== */

.bti-newsletter-issue-page #page {
	max-width: none;
}

.bti-newsletter-issue-page #primary {
	float: none;
	width: 100%;
}

.bti-newsletter-issue-page .site-main {
	margin: 0;
}

.bti-newsletter-issue-page .site-main > article > .inside-article {
	padding: 0;
}

.bti-newsletter-issue-page .entry-content {
	margin-top: 0;
	overflow: clip;
}

/*
 * The issue includes its own H1, author line and date.
 * Remove GeneratePress's duplicate post heading.
 */
.bti-newsletter-issue-page
.site-main > article > .inside-article > .entry-header,
.bti-newsletter-issue-page
.site-main > article > .inside-article > .post-image {
	display: none;
}

/*
 * The coloured issue sections should span the available page,
 * while .bti-home-inner controls the readable content width.
 */
.bti-newsletter-issue-page .entry-content > .alignfull {
	box-sizing: border-box;
	width: 100%;
	max-width: none;
	margin-right: 0 !important;
	margin-left: 0 !important;
}

/* Keep the issue heading substantial without overwhelming the page. */
.bti-newsletter-issue-page .bti-book-title {
	max-width: 15ch;
	font-size: clamp(3rem, 6.5vw, 6.5rem);
	overflow-wrap: normal;
	text-wrap: balance;
}

/* Prevent long headings, URLs and prices from causing overflow. */
.bti-newsletter-issue-page .entry-content {
	overflow-wrap: break-word;
}

.bti-newsletter-issue-page .bti-case-card,
.bti-newsletter-issue-page .bti-why-point,
.bti-newsletter-issue-page .bti-proof__request,
.bti-newsletter-issue-page .bti-proof__invoice {
	min-width: 0;
}


/* Laptop and landscape-tablet layout */
@media (min-width: 701px) and (max-width: 1100px) {
	.bti-newsletter-issue-page .bti-home-section {
		--bti-home-gutter: clamp(1.5rem, 4vw, 3rem);
	}

	.bti-newsletter-issue-page .bti-book-title {
		max-width: 14ch;
		font-size: clamp(3.25rem, 7vw, 5.25rem);
	}

	/*
	 * Three cards are too narrow at these widths.
	 * Use two columns and let the third card span the row.
	 */
	.bti-newsletter-issue-page .bti-case-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.bti-newsletter-issue-page
	.bti-case-grid > :last-child:nth-child(odd) {
		grid-column: 1 / -1;
	}

	.bti-newsletter-issue-page .bti-why-grid {
		grid-template-columns: 1fr;
	}
}


/* Mobile layout */
@media (max-width: 700px) {
	.bti-newsletter-issue-page .bti-case-grid,
	.bti-newsletter-issue-page .bti-why-grid {
		grid-template-columns: 1fr;
	}

	.bti-newsletter-issue-page
	.bti-case-grid > :last-child:nth-child(odd) {
		grid-column: auto;
	}

	.bti-newsletter-issue-page .bti-book-title {
		max-width: none;
		font-size: clamp(2.75rem, 14vw, 4.25rem);
	}

	.bti-newsletter-issue-page .bti-route {
		grid-template-columns: 2.5rem minmax(0, 1fr);
		gap: 0.85rem;
	}
}
/* Align newsletter metadata with the 960px issue header */
.bti-newsletter-issue-page {
	--bti-issue-content-width: 960px;
	--bti-issue-gutter: clamp(1.25rem, 5vw, 3rem);
}

/* Metadata included in the newsletter header */
.bti-newsletter-issue-page .bti-book-meta {
	box-sizing: border-box;
	width: 100%;
	max-width: var(--bti-issue-content-width);
	margin-right: auto !important;
	margin-left: auto !important;
	padding: 0;
	text-align: left;
}

/* GeneratePress metadata, if it remains enabled */
.bti-newsletter-issue-page
.site-main > article > .inside-article > .entry-header .entry-meta {
	box-sizing: border-box;
	width: min(
		var(--bti-issue-content-width),
		calc(100% - (2 * var(--bti-issue-gutter)))
	);
	margin-right: auto;
	margin-left: auto;
	padding: 0;
	text-align: left;
}

/* GeneratePress category link beneath the issue */
.bti-newsletter-issue-page
.site-main > article > .inside-article > footer.entry-meta {
	display: block;
	box-sizing: border-box;
	width: min(
		var(--bti-issue-content-width),
		calc(100% - (2 * var(--bti-issue-gutter)))
	);
	margin: 0 auto;
	padding: 1.5rem 0 2rem;
	text-align: left;
}

/* Prevent GeneratePress from adding spacing around the category link */
.bti-newsletter-issue-page footer.entry-meta .cat-links {
	display: block;
	margin: 0;
	padding: 0;
}