/* Classic-template pages — Privacy Policy (3), Terms of Use (504) and the blog singles — render on
   Hello Elementor's own page.php / single.php, not an Elementor document. Two things the theme
   gets wrong for this site (14 Sep 2026 audit P1 #3 / #4):
   1. The Elementor header is an absolutely positioned overlay under the announcement bar, so
      main content starts under the logo unless the page clears it itself (bp-single.css already
      does this for posts; the legal pages had nothing).
   2. Hello's theme.css caps .site-main at 500px with auto margins at <=767, leaving a dead gutter
      either side of a 450px column on phones. Both templates should use the full container with
      the 15px gutters instead.
   Hello's sheets print after bp-*, hence the `html body` specificity and the !important on the
   phone override. Type follows bp-single.css: Nunito 500 headings, 18px/1.75 prose, 70ch measure. */
html body.page:not(.elementor-page) .site-main{
	max-width:1140px;margin:0 auto;
	padding:140px var(--space-sm,24px) var(--space-section,150px);
}
html body.page:not(.elementor-page) .page-header{margin:0 0 var(--space-md,40px);}
html body.page:not(.elementor-page) .page-header .entry-title{
	font-family:Nunito, sans-serif;font-weight:500;color:var(--ink,#52815F);
	font-size:56px;line-height:1.12;letter-spacing:-.03em;margin:0;max-width:18ch;text-wrap:balance;
}
html body.page:not(.elementor-page) .page-content{
	font-family:"Nunito",sans-serif;font-size:18px;line-height:1.75;color:var(--body,#604327);
}
html body.page:not(.elementor-page) .page-content h2,
html body.page:not(.elementor-page) .page-content h3{
	font-family:Nunito, sans-serif;font-weight:500;color:var(--ink,#52815F);letter-spacing:0;
}
html body.page:not(.elementor-page) .page-content h2{font-size:34px;line-height:1.2;margin:var(--space-md,40px) 0 12px;}
html body.page:not(.elementor-page) .page-content h3{font-size:24px;line-height:1.3;margin:var(--space-sm,24px) 0 8px;}
html body.page:not(.elementor-page) .page-content p,
html body.page:not(.elementor-page) .page-content ul,
html body.page:not(.elementor-page) .page-content ol,
html body.page:not(.elementor-page) .page-content h2,
html body.page:not(.elementor-page) .page-content h3{max-width:70ch;}
html body.page:not(.elementor-page) .page-content p{margin:0 0 var(--space-xs,20px);}
html body.page:not(.elementor-page) .page-content ul,
html body.page:not(.elementor-page) .page-content ol{margin:0 0 var(--space-xs,20px);padding-inline-start:22px;}
html body.page:not(.elementor-page) .page-content li{margin-bottom:6px;}
html body.page:not(.elementor-page) .page-content a{color:var(--label-green,#4B5F4F);}
html body.page:not(.elementor-page) .page-content a:hover{color:var(--accent-hover,#604327);}

@media (max-width:1024px){
	html body.page:not(.elementor-page) .page-header .entry-title{font-size:42px;max-width:none;}
}
@media (max-width:767px){
	/* Beats Hello's `.site-main{max-width:500px;margin:auto}` phone cap on both templates. */
	html body.page:not(.elementor-page) .site-main,
	html body.single-post .site-main{
		max-width:100% !important;margin:0 !important;
		padding-left:15px !important;padding-right:15px !important;
	}
	html body.page:not(.elementor-page) .site-main{padding-top:120px;padding-bottom:var(--space-xl,80px);}
	html body.page:not(.elementor-page) .page-header .entry-title{font-size:32px;letter-spacing:0;}
	html body.page:not(.elementor-page) .page-content{font-size:17px;}
	html body.page:not(.elementor-page) .page-content h2{font-size:26px;}
	html body.page:not(.elementor-page) .page-content h3{font-size:20px;}
}
