/*
Theme Name: Rustic Wood Stoves
Theme URI: https://rusticwoodstoves.com
Version: 1.0.0
Description: Custom WooCommerce theme for Rustic Wood Stoves — a US wood stove retailer and installer. Warm, heavy, built around the specification and EPA data a stove buyer actually reads.
Author: Rustic Wood Stoves
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: rws
*/

/* Warm and heavy, the way cast iron and firelight read. The ember orange is
   the only loud colour and it is reserved for actions. */
:root{
	/* Sampled from the badge logo: an olive-leaning charcoal, two coppers from
	   the wordmark, and the cream of the lettering. */
	--ink:#161711; --ink-2:#23241a; --char:#0e0f0a;
	--ember:#a85526; --ember-600:#8a4620; --rust:#b26434;
	--flame:#e8821c;
	--cream:#faf5ea; --sand:#efe4d1; --sand-2:#e5dabe;
	--line:#d9cbb0; --line-2:#c3b093;
	--muted:#6d6354; --muted-2:#8a7c69;
	--green:#2f6b42;
	--wrap:1240px; --radius:10px;
	--shadow:0 1px 2px rgba(22,23,17,.05),0 10px 30px rgba(22,23,17,.10);
	--shadow-lg:0 2px 6px rgba(22,23,17,.08),0 24px 60px rgba(22,23,17,.16);
	--s0:clamp(1rem,.97rem+.15vw,1.0625rem);
	--s1:clamp(1.1rem,1.04rem+.32vw,1.3rem);
	--s2:clamp(1.3rem,1.16rem+.68vw,1.8rem);
	--s3:clamp(1.6rem,1.33rem+1.3vw,2.4rem);
	--s4:clamp(2rem,1.5rem+2.4vw,3.4rem);
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
	margin:0;background:var(--cream);color:var(--ink);
	font-family:ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
	font-size:var(--s0);line-height:1.65;-webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;display:block}
a{color:var(--ember-600);text-decoration:none}
a:hover{color:var(--ember)}
h1,h2,h3,h4{
	font-family:Georgia,"Iowan Old Style","Times New Roman",serif;
	line-height:1.15;margin:0 0 .6rem;color:var(--ink);font-weight:700;letter-spacing:-.01em;
}
h1{font-size:var(--s4)} h2{font-size:var(--s3)} h3{font-size:var(--s2)} h4{font-size:var(--s1)}
p{margin:0 0 1rem}
.wrap{width:min(100% - 2rem,var(--wrap));margin-inline:auto}
.section{padding:clamp(2.75rem,6vw,5rem) 0}
.section--sand{background:var(--sand)}
.section--dark{background:var(--ink);color:var(--sand)}
.section--dark h2,.section--dark h3{color:var(--cream)}
.section--tight{padding:clamp(2rem,4vw,3rem) 0}
.eyebrow{
	display:inline-block;font-size:.76rem;font-weight:800;letter-spacing:.14em;
	text-transform:uppercase;color:var(--ember-600);margin:0 0 .4rem;
}
.section--dark .eyebrow{color:var(--flame)}
.lede{font-size:var(--s1);color:var(--muted);max-width:46rem}
.section--dark .lede{color:var(--sand-2)}

.skip-link{position:absolute;left:-9999px}
.skip-link:focus{left:1rem;top:1rem;background:#fff;padding:.6rem 1rem;z-index:999;border-radius:6px}

/* ------------------------------------------------------------------ Buttons */
.btn{
	display:inline-flex;align-items:center;gap:.5rem;
	padding:.78rem 1.35rem;border-radius:var(--radius);border:2px solid transparent;
	font-weight:750;font-size:.95rem;cursor:pointer;transition:.16s;line-height:1.2;
}
.btn--primary{background:var(--ember);color:#fff;border-color:var(--ember)}
.btn--primary:hover{background:var(--ember-600);border-color:var(--ember-600);color:#fff}
.btn--ghost{border-color:var(--line-2);color:var(--ink);background:transparent}
.btn--ghost:hover{border-color:var(--ember);color:var(--ember)}
/* On any dark panel the ghost button must invert, or its text sits at the same
   value as the background and disappears. */
.hero .btn--ghost,.section--dark .btn--ghost{border-color:rgba(250,245,234,.42);color:#fff;background:rgba(250,245,234,.06)}
.hero .btn--ghost:hover,.section--dark .btn--ghost:hover{border-color:var(--flame);color:var(--flame);background:rgba(232,130,28,.12)}
.section--dark .btn--ghost{border-color:#3f4034;color:var(--sand)}
.section--dark .btn--ghost:hover{border-color:var(--flame);color:var(--flame)}

/* ------------------------------------------------------------------- Header */
.site-header{
	position:sticky;top:0;z-index:50;background:var(--cream);
	border-bottom:1px solid var(--line);
}
.hdr{display:flex;align-items:center;gap:1rem;min-height:74px;padding:.6rem 0}
.brand{
	font-family:Georgia,serif;font-size:1.22rem;font-weight:700;color:var(--ink);
	letter-spacing:.01em;margin-right:auto;flex:0 0 auto;
}
.brand em{font-style:normal;color:var(--ember)}
.brand img{max-height:52px;width:auto}
.nav ul{display:flex;gap:1.5rem;list-style:none;margin:0;padding:0;align-items:center}
.nav a{color:var(--ink);font-weight:650;font-size:.95rem;padding:.4rem 0;display:block}
.nav a:hover,.nav .current-menu-item>a{color:var(--ember)}

.rws-cart{position:relative;display:inline-flex;align-items:center;color:var(--ink);padding:.4rem}
.rws-cart:hover{color:var(--ember)}
.rws-cart__count{
	position:absolute;top:-2px;right:-6px;min-width:19px;height:19px;padding:0 5px;
	background:var(--ember);color:#fff;border-radius:10px;font-size:.7rem;font-weight:800;
	display:grid;place-items:center;line-height:1;
}
.rws-cart__count[data-count="0"]{display:none}

.navbtn{display:none;background:none;border:0;padding:.5rem;cursor:pointer}
.navbtn span{display:block;width:24px;height:2px;background:var(--ink);margin:5px 0;border-radius:2px;transition:.2s}

@media(max-width:900px){
	.navbtn{display:block;order:3}
	.rws-cart-wrap{order:2;margin-left:auto}
	.brand{margin-right:0}
	/* Collapsed, this panel must paint nothing. A fixed element with
	   max-height:0 still draws its border, which leaves a hairline hanging
	   across the page as you scroll — so border and background go too. */
	.nav{
		position:fixed;inset:auto 0 auto 0;top:var(--navtop,74px);order:4;width:100%;
		background:transparent;border-bottom:0;box-shadow:none;
		max-height:0;overflow:hidden;visibility:hidden;pointer-events:none;transition:max-height .25s;
	}
	.nav.is-open{
		max-height:80vh;overflow-y:auto;visibility:visible;pointer-events:auto;
		background:var(--cream);border-bottom:1px solid var(--line);box-shadow:var(--shadow);
	}
	.nav ul{flex-direction:column;align-items:stretch;gap:0;padding:.5rem 1rem 1rem}
	.nav li{border-bottom:1px solid var(--line)}
	.nav li:last-child{border-bottom:0}
	.nav a{padding:.9rem .2rem}
}

/* --------------------------------------------------------------------- Hero */
.hero{
	position:relative;background:var(--ink);color:var(--sand);overflow:hidden;
	padding:clamp(3.5rem,9vw,7rem) 0;
}
.hero::before{
	/* An ember glow rather than a photograph: no licensing, and it survives
	   any screen width. */
	content:"";position:absolute;inset:0;
	background:linear-gradient(160deg,#0e0f0a 0%,#161711 55%,#23241a 100%);
}
/* A real stove, lit, sitting behind the words. Lightly blurred and dimmed so
   the headline stays readable, not so much that you cannot tell what it is. */
.hero__photo{
	position:absolute;inset:0;z-index:0;pointer-events:none;
	background-position:center 62%;background-repeat:no-repeat;background-size:cover;
	filter:blur(3px) saturate(1.05);
	transform:scale(1.04);          /* hides the soft edge the blur leaves */
	opacity:.72;
}
/* Legibility: dark at the left where the text sits, clear on the right where
   the stove is. */
.hero__scrim{
	position:absolute;inset:0;z-index:1;pointer-events:none;
	background:
		linear-gradient(90deg,rgba(14,15,10,.88) 0%,rgba(14,15,10,.70) 42%,rgba(14,15,10,.34) 72%,rgba(14,15,10,.30) 100%),
		linear-gradient(180deg,rgba(14,15,10,.55) 0%,rgba(14,15,10,.15) 40%,rgba(14,15,10,.60) 100%);
}
.hero>.wrap{position:relative;z-index:2}
.hero>*{position:relative;z-index:1}
@media(max-width:860px){
	/* On a phone the text covers most of the frame, so lean the scrim darker
	   and let the stove sit lower. */
	.hero__photo{background-position:center 70%;opacity:.6}
	.hero__scrim{background:linear-gradient(180deg,rgba(14,15,10,.80) 0%,rgba(14,15,10,.62) 45%,rgba(14,15,10,.84) 100%)}
}
.hero h1{color:#fff;max-width:17ch;text-shadow:0 2px 24px rgba(14,15,10,.6)}
.hero p{color:var(--sand-2);max-width:40rem;font-size:var(--s1);text-shadow:0 1px 18px rgba(14,15,10,.55)}
.hero__actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.6rem}
.hero__facts{
	display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.75rem;
	border-top:1px solid #33342a;padding-top:1.6rem;max-width:44rem;
}
.hero__fact strong{display:block;font-family:Georgia,serif;font-size:1.65rem;color:var(--flame);line-height:1.1}
.hero__fact span{font-size:.84rem;color:var(--muted-2)}
@media(max-width:600px){
	.hero__facts{grid-template-columns:1fr 1fr;gap:1.1rem}
}

/* -------------------------------------------------------------------- Cards */
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem}
.tile{
	background:#fff;border:1px solid var(--line);border-radius:var(--radius);
	padding:1.5rem 1.4rem;display:flex;flex-direction:column;gap:.55rem;
	transition:.18s;
}
.tile:hover{border-color:var(--line-2);box-shadow:var(--shadow);transform:translateY(-2px)}
.tile__ico{
	width:44px;height:44px;border-radius:9px;display:grid;place-items:center;
	background:var(--sand);color:var(--ember);margin-bottom:.3rem;
}
.tile h3{font-size:1.1rem;margin:0}
.tile p{margin:0;color:var(--muted);font-size:.93rem}

/* Brand strip */
.brands{display:flex;flex-wrap:wrap;gap:.6rem}
.brands a{
	display:inline-flex;align-items:center;padding:.6rem 1.1rem;border-radius:999px;
	border:1px solid var(--line);background:#fff;color:var(--ink);
	font-weight:700;font-size:.9rem;transition:.15s;
}
.brands a:hover{border-color:var(--ember);color:var(--ember)}

/* ------------------------------------------------------- WooCommerce layout */
.woocommerce .wrap,.woocommerce-page .wrap{padding-block:2.5rem}
.woocommerce ul.products,.woocommerce-page ul.products{
	display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin:0 0 2rem;padding:0;list-style:none;
}
.woocommerce ul.products::before,.woocommerce ul.products::after{content:none!important;display:none!important}
/* WooCommerce's smallscreen.css puts width:48%;float:left on li.product, which
   breaks the grid at EVERY width, not only on phones. It has to be unset. */
.woocommerce ul.products li.product,
.woocommerce ul.products[class*="columns-"] li.product,
.woocommerce ul.products[class*="columns-"] li.product:nth-child(2n){
	width:auto!important;float:none!important;clear:none!important;margin:0!important;
	display:flex;flex-direction:column;
	background:#fff;border:1px solid var(--line);border-radius:var(--radius);
	padding:.85rem;transition:.18s;
}
.woocommerce ul.products li.product:hover{border-color:var(--line-2);box-shadow:var(--shadow);transform:translateY(-2px)}
.woocommerce ul.products li.product a img{border-radius:7px;margin:0 0 .7rem;width:100%;background:#fff}
.woocommerce ul.products li.product .woocommerce-loop-product__title{
	font-family:Georgia,serif;font-size:1rem!important;color:var(--ink)!important;
	padding:0!important;margin:0 0 .35rem;font-weight:700;line-height:1.3;
}
.woocommerce ul.products li.product .price{
	color:var(--ink)!important;font-weight:800;font-size:1.1rem;margin:.1rem 0 .6rem;display:block;
}
.woocommerce ul.products li.product del{color:var(--muted)!important;font-weight:500;font-size:.9rem}
.woocommerce ul.products li.product ins{text-decoration:none}
.woocommerce ul.products li.product a.button,
.woocommerce ul.products li.product .button{
	display:block;width:100%;text-align:center;margin:auto 0 0!important;
	background:var(--ember)!important;color:#fff!important;border-radius:var(--radius)!important;
	font-weight:750!important;padding:.65rem .8rem!important;font-size:.9rem!important;
}
.woocommerce ul.products li.product a.button:hover{background:var(--ember-600)!important}
@media(min-width:768px){.woocommerce ul.products{grid-template-columns:repeat(3,1fr);gap:1.25rem}}
@media(min-width:1100px){.woocommerce ul.products{grid-template-columns:repeat(4,1fr);gap:1.35rem}}

.woocommerce .woocommerce-result-count,
.woocommerce .woocommerce-ordering{margin-bottom:1.25rem}
.woocommerce-breadcrumb{font-size:.85rem;color:var(--muted);margin:0 0 1rem}

/* Badges on the card */
.rws-epa,.rws-area,.rws-ship{display:flex;align-items:center;gap:.28rem;line-height:1.3}
.rws-epa{
	font-size:.72rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase;
	color:var(--green);margin:0 0 .4rem;
}
.rws-epa small{font-weight:700;opacity:.8;text-transform:none;letter-spacing:0}
.rws-epa.is-exempt{color:var(--muted)}
.rws-epa svg{flex:0 0 auto}
.rws-area{font-size:.82rem;color:var(--muted);margin:0 0 .3rem}
.rws-ship{font-size:.86rem;font-weight:800;color:var(--green);margin:.05rem 0 .6rem}
.woocommerce div.product .rws-ship{font-size:1rem;margin:.3rem 0 1rem}
.woocommerce div.product .rws-epa{font-size:.82rem;margin-bottom:.6rem}
@media(max-width:767px){
	.woocommerce ul.products li.product{padding:.6rem}
	.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.87rem!important}
	.woocommerce ul.products li.product .price{font-size:.95rem}
	.woocommerce ul.products li.product a.button{font-size:.8rem!important;padding:.55rem!important}
	.rws-epa{font-size:.64rem}
	.rws-area,.rws-ship{font-size:.76rem}
}

/* ------------------------------------------------------- Single product page */
.woocommerce div.product{display:grid;grid-template-columns:1fr;gap:2rem}
@media(min-width:900px){
	.woocommerce div.product{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:3rem;align-items:start}
	.woocommerce div.product .woocommerce-product-gallery{grid-column:1;grid-row:1}
	.woocommerce div.product .summary{grid-column:2;grid-row:1;margin:0}
	.woocommerce div.product .woocommerce-tabs,
	.woocommerce div.product .related,
	.woocommerce div.product .up-sells{grid-column:1 / -1}
}
.woocommerce div.product .product_title{font-size:var(--s3);margin-bottom:.4rem}
.woocommerce div.product p.price{font-size:1.9rem;font-weight:800;color:var(--ink);margin:.4rem 0 .2rem}
.woocommerce div.product .woocommerce-product-gallery img{border-radius:var(--radius);border:1px solid var(--line)}
.woocommerce div.product form.cart{margin:1.5rem 0;display:flex;gap:.6rem;flex-wrap:wrap;align-items:center}
.woocommerce div.product form.cart .quantity input{
	width:76px;padding:.72rem .5rem;border:1px solid var(--line-2);border-radius:var(--radius);
	text-align:center;font-size:1rem;
}
.woocommerce div.product form.cart .button{
	background:var(--ember)!important;color:#fff!important;border-radius:var(--radius)!important;
	padding:.85rem 1.8rem!important;font-weight:750!important;font-size:1rem!important;border:0;
}
.woocommerce div.product form.cart .button:hover{background:var(--ember-600)!important}
.woocommerce div.product .product_meta{font-size:.86rem;color:var(--muted);border-top:1px solid var(--line);padding-top:1rem;margin-top:1rem}

/* Spec tables, the thing a stove buyer actually reads */
.rws-specs{width:100%;border-collapse:collapse;margin:0 0 1.75rem;font-size:.92rem}
.rws-specs th,.rws-specs td{
	text-align:left;padding:.62rem .8rem;border-bottom:1px solid var(--line);vertical-align:top;
}
.rws-specs th{font-weight:650;color:var(--muted);width:48%;font-size:.88rem}
.rws-specs td{color:var(--ink);font-weight:600}
.rws-specs tr:nth-child(odd){background:rgba(242,233,220,.45)}
.rws-specs--epa{
	border:1px solid var(--green);border-radius:var(--radius);overflow:hidden;
	background:rgba(47,107,66,.04);
}
.rws-specs--epa th,.rws-specs--epa td{border-bottom-color:rgba(47,107,66,.18)}
.rws-specs--epa tr:nth-child(odd){background:rgba(47,107,66,.05)}
.entry h3{margin-top:2rem;padding-bottom:.4rem;border-bottom:2px solid var(--sand-2)}

.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0;margin:0 0 1.25rem;border-bottom:1px solid var(--line)}
.woocommerce div.product .woocommerce-tabs ul.tabs::before{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li{
	background:transparent;border:0;border-radius:0;margin:0 1.4rem 0 0;padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after{display:none}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{
	padding:.7rem 0;font-weight:700;color:var(--muted);display:block;border-bottom:3px solid transparent;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:var(--ink);border-bottom-color:var(--ember)}

/* ----------------------------------------------------------------- Checkout */
.rws-checkout-brand{margin:0 0 1.5rem;text-align:center}
.rws-checkout-brand img{max-width:230px;height:auto;display:inline-block}
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce form .form-row select,
.woocommerce-page form .form-row input.input-text{
	padding:.72rem .85rem;border:1px solid var(--line-2);border-radius:var(--radius);
	background:#fff;font-size:1rem;width:100%;
}
.woocommerce .cart_totals,.woocommerce-checkout #order_review{
	background:#fff;border:1px solid var(--line);border-radius:var(--radius);padding:1.4rem;
}
.woocommerce #respond input#submit.alt,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.woocommerce input.button.alt{background:var(--ember);color:#fff}
.woocommerce #respond input#submit.alt:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.woocommerce input.button.alt:hover{background:var(--ember-600);color:#fff}
.woocommerce .woocommerce-message,
.woocommerce .woocommerce-info{border-top-color:var(--ember)}
.woocommerce .woocommerce-message::before,
.woocommerce .woocommerce-info::before{color:var(--ember)}

/* ------------------------------------------------------------------ Reviews */
.rws-stars{display:inline-flex;gap:2px;line-height:1;font-size:1rem}
.rws-star{color:var(--sand-2)}
.rws-star.is-full{color:var(--flame)}
/* Half star: gold on the left, plain on the right, with a clipped overlay so
   it needs no second glyph. */
.rws-star.is-half{position:relative;color:var(--sand-2)}
.rws-star.is-half::before{content:"\2605";position:absolute;left:0;top:0;color:var(--flame);width:50%;overflow:hidden}

.rws-review{
	background:#fff;border:1px solid var(--line);border-radius:var(--radius);
	padding:1.2rem 1.3rem;display:flex;flex-direction:column;gap:.6rem;
}
.rws-review__head{display:flex;align-items:center;gap:.7rem}
.rws-review__av{
	flex:0 0 40px;width:40px;height:40px;border-radius:50%;
	display:grid;place-items:center;font-weight:700;font-size:1.05rem;color:#fff;
	background:hsl(var(--h,22) 38% 40%);
}
.rws-review__who{display:flex;flex-direction:column;min-width:0;flex:1 1 auto}
.rws-review__who strong{font-size:.95rem;color:var(--ink);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rws-review__who time{font-size:.8rem;color:var(--muted)}
.rws-review__g{flex:0 0 auto;display:grid;place-items:center}
.rws-review__text{margin:0;font-size:.94rem;line-height:1.6;color:#4a4338}
.rws-review__prod{
	margin-top:auto;font-size:.8rem;font-weight:700;color:var(--ember-600);
	display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;
}

.rws-rev-head{display:flex;flex-wrap:wrap;gap:1.25rem;align-items:flex-end;justify-content:space-between;margin-bottom:1.6rem}
.rws-rev-head h2{margin:.2rem 0 0}
.rws-rev-score{display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}
.rws-rev-score strong{font-family:Georgia,serif;font-size:2.1rem;line-height:1;color:var(--ink)}
.rws-rev-score span{font-size:.88rem;color:var(--muted)}
.rws-rev-rail{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}

.rws-rev-summary{
	display:grid;grid-template-columns:auto 1fr;gap:2rem;align-items:center;
	background:var(--sand);border:1px solid var(--line);border-radius:var(--radius);
	padding:1.6rem 1.8rem;margin:0 0 2rem;
}
.rws-rev-summary__score{text-align:center;display:flex;flex-direction:column;gap:.35rem;align-items:center}
.rws-rev-summary__score strong{font-family:Georgia,serif;font-size:3.2rem;line-height:1;color:var(--ink)}
.rws-rev-summary__score .rws-stars{font-size:1.15rem}
.rws-rev-summary__score span{font-size:.85rem;color:var(--muted)}
.rws-rev-summary__bars{display:flex;flex-direction:column;gap:.3rem;min-width:0}
.rws-bar{display:grid;grid-template-columns:1rem 1fr 2.5rem;gap:.6rem;align-items:center;font-size:.82rem;color:var(--muted)}
.rws-bar__track{height:9px;border-radius:5px;background:var(--sand-2);overflow:hidden}
.rws-bar__fill{display:block;height:100%;background:var(--flame)}
.rws-bar__c{text-align:right}
.rws-rev-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem}

@media(max-width:900px){
	.rws-rev-rail{grid-template-columns:repeat(2,1fr)}
	.rws-rev-grid{grid-template-columns:1fr}
}
@media(max-width:640px){
	.rws-rev-rail{grid-template-columns:1fr}
	.rws-rev-summary{grid-template-columns:1fr;gap:1.25rem;padding:1.25rem}
	.rws-rev-head{align-items:flex-start}
}

/* --------------------------------------------------------------- Pagination */
.pagination{display:flex;flex-wrap:wrap;gap:.4rem;margin:2rem 0}
.pagination .page-numbers{
	display:grid;place-items:center;min-width:40px;height:40px;padding:0 .6rem;
	border:1px solid var(--line);border-radius:8px;background:#fff;
	color:var(--ink);font-weight:650;font-size:.9rem;
}
.pagination .page-numbers:hover{border-color:var(--ember);color:var(--ember)}
.pagination .page-numbers.current{background:var(--ember);border-color:var(--ember);color:#fff}

/* ------------------------------------------------------------------- Footer */
.site-footer{background:var(--ink);color:var(--sand-2);padding:3.5rem 0 2rem;margin-top:0}
.footer__grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:2rem;margin-bottom:2.5rem}
.footer__logo{max-height:48px;width:auto;margin-bottom:.9rem}
.site-footer h4{color:var(--cream);font-size:.82rem;letter-spacing:.12em;text-transform:uppercase;font-family:inherit;margin-bottom:.9rem}
.site-footer ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}
.site-footer a{color:var(--sand-2);font-size:.92rem}
.site-footer a:hover{color:var(--flame)}
.site-footer p{font-size:.92rem;color:var(--muted-2)}
.footer__brand{font-family:Georgia,serif;font-size:1.2rem;color:#fff;margin-bottom:.8rem;display:block}
.footer__brand em{font-style:normal;color:var(--ember)}
.footer__bottom{
	border-top:1px solid #2c2d23;padding-top:1.5rem;display:flex;flex-wrap:wrap;
	gap:1rem;justify-content:space-between;font-size:.84rem;color:var(--muted-2);
}
.footer__note{max-width:52rem;font-size:.8rem;line-height:1.6;color:#7d7465;margin-top:1rem}
@media(max-width:860px){
	.footer__grid{grid-template-columns:1fr 1fr;gap:1.75rem}
}
@media(max-width:520px){
	.footer__grid{grid-template-columns:1fr}
}

/* --------------------------------------------------------------- Page entry */
.entry{max-width:52rem}
.entry ul,.entry ol{padding-left:1.2rem;margin:0 0 1rem}
.entry li{margin-bottom:.4rem}
.page-head{background:var(--sand);border-bottom:1px solid var(--line);padding:2.5rem 0 2rem}
.page-head h1{margin:0}
.page-head p{margin:.5rem 0 0;color:var(--muted);max-width:46rem}
