/* Gratitude design applied to every other page.
   Content is untouched: only the old header/footer are hidden and the
   Elementor global colours/fonts are re-pointed to the new palette. */

/* Shared header/footer wrappers take part in the body layout (keeps the header sticky). */
.gp.gp-chrome { display: contents; }

/* Old header/footer: hidden, not removed. */
body.gp-site .ekit-template-content-header,
body.gp-site .ekit-template-content-footer,
body.gp-site #site-header,
body.gp-site #site-footer,
body.gp-site .site-header,
body.gp-site .site-footer { display: none !important; }

body.gp-site { background: var(--gp-cream); color: var(--gp-text); font-family: var(--gp-font); -webkit-font-smoothing: antialiased; }

/* Elementor global colours and fonts -> new design tokens */
body.gp-site[class*="elementor-kit-"] {
	--e-global-color-primary: #2b3320;
	--e-global-color-secondary: #565a47;
	--e-global-color-text: #565a47;
	--e-global-color-accent: #c7993d;
	--e-global-color-7f2ee45: #2b3320;
	--e-global-color-9494f1a: #566647;
	--e-global-color-42213f8: #c7993d;
	--e-global-color-59dea19: #232519;
	--e-global-color-dee58d5: #565a47;

	--e-global-typography-primary-font-family: "Hanken Grotesk";
	--e-global-typography-secondary-font-family: "Hanken Grotesk";
	--e-global-typography-text-font-family: "Hanken Grotesk";
	--e-global-typography-accent-font-family: "Hanken Grotesk";
	--e-global-typography-82bfd93-font-family: "Hanken Grotesk";
	--e-global-typography-eea1e7a-font-family: "Hanken Grotesk";
	--e-global-typography-7f9af5c-font-family: "Hanken Grotesk";
	--e-global-typography-cb2b212-font-family: "Hanken Grotesk";
	--e-global-typography-eea1e7a-font-weight: 600;
	--e-global-typography-7f9af5c-font-weight: 600;
	--e-global-typography-cb2b212-font-weight: 600;
}

/* Text set with a fixed font instead of a global one */
body.gp-site .elementor :is(h1, h2, h3, h4, h5, h6, p, li, label, blockquote, figcaption, input, textarea, select, button,
	.elementor-heading-title, .elementor-widget-text-editor, .elementor-button, .elementor-icon-list-text, .elementor-tab-title,
	.elementor-counter-title, .elementor-counter-number-wrapper, .elementor-image-box-title, .elementor-image-box-description,
	.elementor-icon-box-title, .elementor-icon-box-description, .elementor-testimonial-content, .elementor-testimonial-name) {
	font-family: var(--gp-font) !important;
}
body.gp-site :where(.site-main, .page-content, .entry-content) :is(h1, h2, h3, h4, h5, h6, p, li) { font-family: var(--gp-font); }

/* Headings */
body.gp-site .elementor :is(.elementor-heading-title, h1, h2, h3) { letter-spacing: -0.02em; }
body.gp-site .elementor :is(h1, h2).elementor-heading-title { font-weight: 600 !important; letter-spacing: -0.03em; }
body.gp-site :where(.site-main) :is(h1, h2, h3, h4) { color: var(--gp-ink); font-weight: 600; letter-spacing: -0.02em; }

/* Links inside page content */
body.gp-site :where(.elementor, .site-main) a { color: var(--gp-sage); }
body.gp-site :where(.elementor, .site-main) a:hover { color: var(--gp-ink); }

/* Buttons: gold pill as on the homepage */
body.gp-site .elementor .elementor-button,
body.gp-site .elementor .ekit-wid-con .elementskit-btn {
	background: var(--gp-gold) !important;
	color: var(--gp-btn-ink) !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: var(--gp-font) !important;
	font-weight: 600 !important;
	letter-spacing: -0.01em;
	box-shadow: 0 10px 24px -14px rgba(199, 153, 61, .9);
	transition: background-color .2s, transform .2s;
}
body.gp-site .elementor .elementor-button:hover,
body.gp-site .elementor .ekit-wid-con .elementskit-btn:hover { background: var(--gp-gold-hover) !important; color: var(--gp-btn-ink) !important; }
body.gp-site .elementor .elementor-button .elementor-button-text,
body.gp-site .elementor .elementor-button .elementor-button-icon { color: inherit !important; fill: currentColor; }

/* Contact forms in page content */
body.gp-site .wpcf7 :is(input[type="text"], input[type="email"], input[type="tel"], input[type="url"], input[type="number"], select, textarea) {
	width: 100%;
	min-height: 52px;
	padding: 12px 15px !important;
	background: var(--gp-cream) !important;
	border: 1px solid #ddd8c8 !important;
	border-radius: 10px !important;
	box-shadow: none !important;
	color: var(--gp-ink) !important;
	font-family: var(--gp-font) !important;
	font-size: 15.5px !important;
}
body.gp-site .wpcf7 textarea { min-height: 110px; }
body.gp-site .wpcf7 :is(input, select, textarea):focus { border-color: var(--gp-gold) !important; background: #fff !important; outline: 0; box-shadow: 0 0 0 3px rgba(199, 153, 61, .18) !important; }
body.gp-site .wpcf7 :is(input[type="submit"], button[type="submit"], .wpcf7-submit) {
	min-height: 52px;
	padding: 0 32px !important;
	background: var(--gp-gold) !important;
	color: var(--gp-btn-ink) !important;
	border: 0 !important;
	border-radius: 999px !important;
	font-family: var(--gp-font) !important;
	font-size: 16.5px !important;
	font-weight: 600 !important;
	cursor: pointer;
}
body.gp-site .wpcf7 :is(input[type="submit"], button[type="submit"], .wpcf7-submit):hover { background: var(--gp-gold-hover) !important; }
body.gp-site .wpcf7 label { color: var(--gp-text); font-weight: 600; font-size: 13.5px; }
