/*
Theme Name: Bramleyhall Child
Template: generatepress
Version: 1.0.0
*/
:root{
  --bh-paper:#F3EDE2; --bh-ink:#3A3128; --bh-ox:#6E2B2B; --bh-brass:#A9853C;
  --bh-muted:#87796A; --bh-line:#D8CCB8; --bh-radius:0px;
}
body{background:var(--bh-paper);color:var(--bh-ink);font-family:'PT Serif',serif;}
h1,h2,h3,.bh-disp{font-family:'Italiana',serif;font-weight:400;}
html body h1,html body h2,html body h3,html body h4{font-family:'Italiana',serif!important;}
.bh-wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
.bh-section{padding:78px 0;}
.bh-eyebrow{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:var(--bh-brass);margin:0 0 12px;}
.bh-h2{font-size:clamp(30px,3.6vw,48px);text-align:center;margin:0 0 10px;}
.bh-orn{text-align:center;color:var(--bh-brass);font-size:20px;margin:6px 0 40px;letter-spacing:.6em;}
/* hide gp footer */
footer.site-info,.site-footer{display:none!important;}
/* gp flex content container would place sections side by side - force block flow */
#content.site-content{display:block!important;}
#content.site-content > *{width:100%;float:none;max-width:none;}
/* hero */
.bh-hero{text-align:center;padding:96px 24px 84px;background:linear-gradient(var(--bh-paper), #EDE4D3);border-bottom:1px solid var(--bh-line);}
.bh-hero .est{font-size:11px;letter-spacing:.44em;text-transform:uppercase;color:var(--bh-ox);margin:0 0 20px;}
.bh-hero h1{font-size:clamp(44px,6vw,84px);line-height:1.04;margin:0 0 18px;}
.bh-hero .sub{color:var(--bh-muted);font-size:17px;max-width:54ch;margin:0 auto 8px;line-height:1.85;font-style:italic;}
.bh-btn{display:inline-block;margin-top:30px;padding:15px 44px;border:1px solid var(--bh-ox);color:var(--bh-ox)!important;font-size:12px;letter-spacing:.26em;text-transform:uppercase;text-decoration:none;font-family:'PT Serif',serif;}
.bh-btn:hover{background:var(--bh-ox);color:var(--bh-paper)!important;}
/* double border frame utility */
.bh-frame{border:1px solid var(--bh-line);outline:1px solid var(--bh-line);outline-offset:5px;}
/* catalogue grid */
.bh-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:26px;}
.bh-card{background:#FBF7EE;border:1px solid var(--bh-line);padding:14px 14px 22px;text-decoration:none;color:var(--bh-ink);display:block;position:relative;text-align:center;transition:.25s;}
.bh-card:hover{box-shadow:0 12px 30px rgba(58,49,40,.14);transform:translateY(-3px);}
.bh-card .no{font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--bh-brass);}
.bh-card img{width:100%;aspect-ratio:3/4;object-fit:cover;margin:12px 0 14px;filter:sepia(.12) saturate(.9);}
.bh-card h3{font-size:21px;margin:0 0 6px;line-height:1.25;}
.bh-card .price{color:var(--bh-muted);font-size:13px;font-style:italic;}
.bh-card .price s{margin-right:8px;opacity:.55;}
/* category plates */
.bh-plates{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;}
.bh-plate{text-decoration:none;color:var(--bh-ink);display:block;text-align:center;}
.bh-plate img{width:100%;aspect-ratio:3/4;object-fit:cover;border:1px solid var(--bh-line);filter:sepia(.15);}
.bh-plate h3{font-size:20px;margin:14px 0 2px;}
.bh-plate span{font-size:10px;letter-spacing:.26em;text-transform:uppercase;color:var(--bh-brass);}
/* provenance */
.bh-story{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.bh-story img{width:100%;aspect-ratio:4/5;object-fit:cover;border:1px solid var(--bh-line);outline:1px solid var(--bh-line);outline-offset:6px;}
.bh-story p{color:var(--bh-muted);line-height:1.95;font-size:15.5px;}
/* services strip */
.bh-services{background:#EDE4D3;border-top:1px solid var(--bh-line);border-bottom:1px solid var(--bh-line);}
.bh-services .row{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;text-align:center;}
.bh-services h3{font-size:20px;margin:8px 0;}
.bh-services p{color:var(--bh-muted);font-size:14px;line-height:1.75;}
.bh-services .ic{color:var(--bh-ox);font-size:24px;}
/* reviews as letters */
.bh-reviews{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;}
.bh-rev{background:#FBF7EE;border:1px solid var(--bh-line);padding:30px;position:relative;}
.bh-rev::before{content:"\2740";position:absolute;top:12px;right:16px;color:var(--bh-ox);opacity:.5;font-size:18px;}
.bh-rev .stars{color:var(--bh-brass);letter-spacing:.24em;font-size:12px;}
.bh-rev p{font-style:italic;font-size:15.5px;line-height:1.8;margin:14px 0;}
.bh-rev .who{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:var(--bh-muted);}
/* faq */
.bh-faq{max-width:740px;margin:0 auto;}
.bh-faq details{border-bottom:1px solid var(--bh-line);padding:18px 4px;}
.bh-faq summary{cursor:pointer;font-family:'Italiana',serif;font-size:22px;list-style:none;display:flex;justify-content:space-between;}
.bh-faq summary::after{content:"+";color:var(--bh-ox);}
.bh-faq details[open] summary::after{content:"\2013";}
.bh-faq p{color:var(--bh-muted);line-height:1.8;padding-top:10px;margin:0;}
/* footer */
.bh-footer{background:var(--bh-ink);color:#B8AC9B;padding:60px 0 36px;font-size:14px;}
.bh-footer .cols{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:40px;}
.bh-footer h4{color:#F3EDE2;font-family:'PT Serif',serif;font-size:11px;letter-spacing:.28em;text-transform:uppercase;margin:0 0 16px;}
.bh-footer a{color:#B8AC9B;text-decoration:none;line-height:2.15;display:inline-block;}
.bh-footer a:hover{color:#E5C87B;}
.bh-footer .brand{font-family:'Italiana',serif;font-size:32px;color:#F3EDE2;}
.bh-footer .base{border-top:1px solid rgba(255,255,255,.14);margin-top:42px;padding-top:20px;font-size:12px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;}
@media(max-width:960px){.bh-cards{grid-template-columns:repeat(2,1fr);}.bh-plates{grid-template-columns:repeat(2,1fr);}.bh-story{grid-template-columns:1fr;}.bh-reviews{grid-template-columns:1fr;}.bh-services .row{grid-template-columns:1fr;}.bh-footer .cols{grid-template-columns:1fr 1fr;}}

/* --- brand buttons (woo) --- */
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.single_add_to_cart_button,
.wc-block-components-button,body .woocommerce-message .button{
  background:var(--bh-ox)!important;color:#F3EDE2!important;border:1px solid var(--bh-ox)!important;border-radius:0!important;
  font-family:'PT Serif',serif!important;font-size:13px!important;letter-spacing:.22em!important;text-transform:uppercase!important;padding:16px 38px!important;
}
.woocommerce a.button:hover,.woocommerce button.button:hover,.single_add_to_cart_button:hover,
.wc-block-components-button:hover{background:transparent!important;color:var(--bh-ox)!important;}
.woocommerce .quantity input{border:1px solid var(--bh-line)!important;border-radius:0!important;}
