.mtp-home{--green:#0A3D34;--green-deep:#072b25;--cream:#F7F3ED;--cream-deep:#EFE7DB;--ink:#1C1C1A;--ink-soft:#55534E;--rule:#DFD8CC;--gold:#B08542;--white:#fff;--serif:"Spectral",Georgia,serif;--sans:"Public Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--s1:.5rem;--s2:1rem;--s3:1.5rem;--s4:2rem;--s5:3rem;--s6:4.5rem;--wrap:1240px;--tap:44px;--radius:2px;font-family:var(--sans);color:var(--ink);line-height:1.6;font-size:16px;background:var(--white)}
.mtp-home *,.mtp-home *::before,.mtp-home *::after{box-sizing:border-box}
.mtp-home img{max-width:100%;height:auto;display:block}
.mtp-home a{color:inherit;text-decoration:none}
.mtp-home h1,.mtp-home h2,.mtp-home h3{font-family:var(--serif);font-weight:500;line-height:1.15;margin:0;letter-spacing:.01em;padding:0}
.mtp-home p{margin:0}
.mtp-home .wrap{max-width:var(--wrap);margin:0 auto;padding:0 var(--s3)}
.mtp-home :focus-visible{outline:3px solid var(--gold);outline-offset:3px}
.mtp-home section{padding:var(--s5) 0;margin:0}
@media(min-width:760px){.mtp-home section{padding:var(--s6) 0}}
.mtp-home .btn{display:inline-flex;align-items:center;justify-content:center;min-height:var(--tap);padding:.85rem 1.6rem;font-family:var(--sans);font-weight:700;font-size:.8rem;letter-spacing:.09em;text-transform:uppercase;border-radius:var(--radius);border:1.5px solid transparent;transition:background-color .18s,color .18s,border-color .18s}
.mtp-home .btn-primary{background:var(--green);color:var(--white);border-color:var(--green)}
.mtp-home .btn-primary:hover{background:var(--green-deep);border-color:var(--green-deep);color:var(--white)}
.mtp-home .btn-ghost{background:rgba(255,255,255,.10);color:var(--white);border-color:rgba(255,255,255,.85)}
.mtp-home .btn-ghost:hover{background:var(--white);color:var(--green)}
.mtp-home .btn-outline{background:transparent;color:var(--green);border-color:var(--green)}
.mtp-home .btn-outline:hover{background:var(--green);color:var(--white)}
.mtp-home .hero{position:relative;background:var(--cream-deep);padding:0}
.mtp-home .hero img{width:100%;display:block;object-fit:cover;object-position:center -9px;height:auto;aspect-ratio:16/9;min-height:clamp(380px,46vh,460px);max-height:min(92vh,900px)}
@media(max-width:520px){.mtp-home .hero img{aspect-ratio:1080/1180;min-height:0;max-height:66vh;object-position:center -30px}}
.mtp-home .hero-tx{position:absolute;left:0;right:0;bottom:0;color:#fff;padding:var(--s4) var(--s3) var(--s3);background:linear-gradient(to top,rgba(18,26,22,.80) 0%,rgba(18,26,22,.50) 40%,rgba(18,26,22,.14) 72%,rgba(18,26,22,0) 100%)}
@media(min-width:701px){.mtp-home .hero-tx{padding:var(--s5) var(--s3) var(--s4)}}
.mtp-home .hero-in{max-width:var(--wrap);margin:0 auto}
.mtp-home .hero h1{color:#fff;font-size:clamp(2.1rem,6.4vw,3.9rem);max-width:16ch;margin-bottom:var(--s2);text-shadow:0 1px 14px rgba(10,16,12,.62),0 1px 3px rgba(10,16,12,.45)}
.mtp-home .hero h1 em{font-style:italic;color:var(--cream)}
.mtp-home .hero-cta{display:flex;flex-wrap:wrap;gap:var(--s2)}
.mtp-home .trust{background:var(--green);color:var(--cream)}
.mtp-home .trust ul{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:.35rem var(--s4);margin:0;padding:.85rem var(--s3);font-size:.82rem;letter-spacing:.03em}
.mtp-home .trust li{display:flex;align-items:center;gap:.45rem}
.mtp-home .trust svg{flex:none;opacity:.85}
.mtp-home .sec-head{text-align:center;max-width:60ch;margin:0 auto var(--s3)}
@media(min-width:760px){.mtp-home .sec-head{margin-bottom:var(--s4)}}
.mtp-home .sec-head h2{font-size:clamp(1.7rem,4.2vw,2.5rem);margin-bottom:var(--s1)}
.mtp-home .sec-head p{color:var(--ink-soft);margin:0}
.mtp-home .ladder{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem}
@media(min-width:760px){.mtp-home .ladder{gap:var(--s3)}}
.mtp-home .lad{display:flex;flex-direction:column}
.mtp-home .lad-fig{position:relative;aspect-ratio:4/5;overflow:hidden;border-radius:var(--radius);background:var(--cream-deep)}
.mtp-home .lad-fig img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}
.mtp-home .lad:hover .lad-fig img{transform:scale(1.045)}
.mtp-home .lad-in{padding-top:.55rem}
.mtp-home .lad h3{font-size:.92rem;line-height:1.2;margin-bottom:.12rem}
@media(min-width:560px){.mtp-home .lad h3{font-size:1.12rem}}
.mtp-home .lad .from{font-size:.74rem;letter-spacing:.06em;font-weight:700;color:var(--green);display:block}
.mtp-home .lad .cnt{font-size:.7rem;line-height:1.3;color:var(--ink-soft);margin-top:.15rem;display:block}
@media(min-width:560px){.mtp-home .lad .cnt{font-size:.74rem}}
@media(min-width:760px){.mtp-home .lad{position:relative;aspect-ratio:4/5;border-radius:var(--radius);overflow:hidden;background:var(--green)}.mtp-home .lad-fig{position:absolute;inset:0;aspect-ratio:auto;border-radius:var(--radius)}.mtp-home .lad-fig::after{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(7,43,37,.90) 6%,rgba(7,43,37,.30) 52%,rgba(7,43,37,.02) 82%)}.mtp-home .lad-in{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:var(--s3);color:#fff;display:flex;flex-direction:column}.mtp-home .lad h3{font-size:1.4rem;margin-bottom:.1rem;color:#fff}.mtp-home .lad .from{font-size:.78rem;letter-spacing:.11em;text-transform:uppercase;color:var(--cream)}.mtp-home .lad .cnt{font-size:.82rem;color:rgba(255,255,255,.84);margin-top:.28rem}}
.mtp-home .grid{display:grid;gap:var(--s3) var(--s2);grid-template-columns:repeat(2,1fr)}
@media(min-width:900px){.mtp-home .grid{grid-template-columns:repeat(4,1fr);gap:var(--s4) var(--s3)}}
.mtp-home .card{display:flex;flex-direction:column}
.mtp-home .card-media{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--cream);border-radius:var(--radius);margin-bottom:.75rem}
.mtp-home .card-media img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.mtp-home .card:hover .card-media img{transform:scale(1.04)}
.mtp-home .tag{position:absolute;top:.55rem;left:.55rem;z-index:2;background:rgba(255,255,255,.95);color:var(--green);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .55rem;border-radius:var(--radius)}
.mtp-home .tag-canvas{background:var(--green);color:#fff}
.mtp-home .card h3{font-size:1.04rem;line-height:1.25;margin-bottom:.15rem}
.mtp-home .scr{font-family:var(--serif);font-style:italic;font-size:.92rem;color:var(--ink-soft);margin:0 0 .5rem;line-height:1.4}
.mtp-home .buy{margin-top:auto;padding-top:.55rem;border-top:1px solid var(--rule);display:flex;justify-content:space-between;align-items:baseline;gap:.5rem}
.mtp-home .price{font-weight:700;font-size:.9rem}
.mtp-home .fmt{font-size:.74rem;color:var(--ink-soft)}
.mtp-home .stars{display:flex;align-items:center;gap:.28rem;font-size:.78rem;color:var(--ink-soft);margin-top:.35rem}
.mtp-home .stars span[aria-hidden]{color:var(--gold);letter-spacing:.06em}
.mtp-home .more{text-align:center;margin-top:var(--s4)}
.mtp-home .sarah{background:var(--cream)}
.mtp-home .sarah-in{display:grid;gap:var(--s4);align-items:center;grid-template-columns:1fr}
@media(min-width:900px){.mtp-home .sarah-in{grid-template-columns:.85fr 1.15fr;gap:var(--s6)}}
.mtp-home .sarah img{border-radius:var(--radius);aspect-ratio:1/1;object-fit:cover;object-position:center top;width:100%}
.mtp-home .sarah h2{font-size:clamp(1.7rem,4vw,2.4rem);margin-bottom:var(--s2)}
.mtp-home .sarah p{color:var(--ink-soft);margin:0 0 var(--s2);max-width:56ch}
.mtp-home .sarah .sig{font-family:var(--serif);font-style:italic;font-size:1.6rem;color:var(--green);margin:var(--s2) 0 var(--s3)}
.mtp-home .sarah-links{display:flex;flex-wrap:wrap;gap:var(--s2)}
.mtp-home .reviews{background:var(--green);color:#fff}
.mtp-home .reviews .sec-head h2{color:#fff}
.mtp-home .reviews .sec-head p{color:rgba(255,255,255,.82)}
.mtp-home .rev-grid{display:grid;gap:var(--s3);grid-template-columns:1fr}
@media(min-width:800px){.mtp-home .rev-grid{grid-template-columns:repeat(3,1fr)}}
.mtp-home .rev{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.16);padding:var(--s3);border-radius:var(--radius);display:flex;flex-direction:column}
.mtp-home .rev blockquote{margin:0 0 var(--s2);font-family:var(--serif);font-size:1.16rem;line-height:1.5;color:#fff}
.mtp-home .rev-who{display:flex;align-items:center;gap:.7rem;margin-bottom:.85rem}
.mtp-home .rev-thumb{width:58px;height:58px;flex:none;object-fit:cover;border-radius:50%;background:#fff;border:3px solid #fff;box-shadow:0 2px 12px rgba(0,0,0,.22)}
.mtp-home .rev .who{font-size:.82rem;color:rgba(255,255,255,.75);margin:0;line-height:1.35}
.mtp-home .rev .who b{display:block;color:#fff;font-weight:700;font-size:.86rem}
.mtp-home .rev a{margin-top:auto;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;font-weight:700;color:var(--cream);border-bottom:1px solid rgba(247,243,237,.45);display:inline-flex;align-items:center;min-height:var(--tap);align-self:flex-start}
.mtp-home .rev a:hover{color:#fff;border-color:#fff}
.mtp-home .wall{background:var(--cream);text-align:center}
.mtp-home .wall-in{max-width:52ch;margin:0 auto}
.mtp-home .wall h2{font-size:clamp(1.6rem,4vw,2.3rem);margin-bottom:var(--s1)}
.mtp-home .wall p{color:var(--ink-soft);margin:0 0 var(--s3)}
.mtp-home .wall .note{font-size:.82rem;color:var(--ink-soft);margin:var(--s2) 0 0}
@media(prefers-reduced-motion:reduce){.mtp-home *,.mtp-home *::before,.mtp-home *::after{transition-duration:.01ms !important;animation-duration:.01ms !important}.mtp-home .card:hover .card-media img,.mtp-home .lad:hover .lad-fig img{transform:none}}
/* Woodmart opens <main class="wd-content-layout content-layout-wrapper container"> in header.php,
   which caps width and adds gutters. Unconstrain it, but only on the new homepage. */
body.mtp-home-active main.wd-content-layout,body.mtp-home-active main.container{max-width:none;width:100%;padding-left:0;padding-right:0;margin-left:0;margin-right:0}
body.mtp-home-active .wd-page-content,body.mtp-home-active .main-page-wrapper{padding-top:0;padding-bottom:0}
body.mtp-home-active .mtp-home{width:100%;max-width:none}

/* snippet-47 override. Snippet 47 forces EB Garamond on every heading with
   !important, site-wide. Scoped counter-override so only the new homepage is
   affected; at launch, snippet 47 itself gets its fonts swapped and this goes. */
.mtp-home h1,.mtp-home h2,.mtp-home h3,.mtp-home h4,.mtp-home h5,.mtp-home h6{font-family:var(--serif)!important;font-weight:500!important}
.mtp-home .scr,.mtp-home .rev blockquote,.mtp-home .sarah .sig{font-family:var(--serif)!important}
.mtp-home,.mtp-home p,.mtp-home a,.mtp-home span,.mtp-home li,.mtp-home div,.mtp-home button{font-family:var(--sans)}
.mtp-home .btn,.mtp-home .price,.mtp-home .fmt,.mtp-home .from,.mtp-home .cnt,.mtp-home .tag,.mtp-home .stars,.mtp-home .who{font-family:var(--sans)!important}

/* list reset. Woodmart sets li{margin-bottom:10px} globally and
   li:last-child{margin-bottom:0}, so in a centred flex row the LAST item
   sits 5px lower than its siblings. Reset inside the homepage only. */
.mtp-home ul,.mtp-home ol{margin:0;padding:0;list-style:none}
.mtp-home li{margin:0;padding:0;list-style:none}
.mtp-home .trust ul{padding:.85rem var(--s3)}

/* mtp-price-inherit: mtp_from_price() returns WooCommerce markup, and the
   .woocommerce-Price-amount span inside carries Woodmart's green price
   colour. On the dark scrim of the desktop tiles that made the number
   invisible while the word "From" stayed cream. Inherit instead, so it
   follows .from in BOTH the light mobile layout and the dark overlay. */
.mtp-home .lad .from *{color:inherit!important}

/* mtp-flush-hero: Woodmart puts 40px of padding-top on .wd-content-layout for
   every page. That is right for interior pages, but on the homepage it shows
   as a white band between the header rule and the hero, which is meant to
   butt straight up against it. Scoped to the homepage only. */
body.mtp-home-active .wd-content-layout,
body.mtp-home-active .wd-content-area,
body.mtp-home-active .entry-content{padding-top:0!important;margin-top:0!important}

/* mtp-hero-cta-mobile ------------------------------------------------------
   Phones: the two hero buttons sit SIDE BY SIDE instead of stacking, and the
   whole copy block moves down by trimming the space beneath it.

   flex:1 1 0 gives them equal halves; nowrap stops 'SEE THE LAST SUPPER'
   breaking onto two lines inside its own button. Type and padding come down
   so the longer label still fits at 360px. */
@media (max-width:520px){
	.mtp-home .hero-tx{padding:1.4rem 1.1rem .85rem}
	.mtp-home .hero-cta{flex-wrap:nowrap;gap:.55rem}
	.mtp-home .hero-cta .btn{
		flex:1 1 0;
		min-width:0;
		min-height:42px;
		padding:.7rem .45rem;
		font-size:11.5px;
		letter-spacing:.03em;
		white-space:nowrap;
	}
	/* pull the headline and paragraph in a little so the block reads tighter */
	.mtp-home .hero h1{margin-bottom:.6rem}
	.mtp-home .hero p{margin-bottom:.85rem}
}
/* smallest phones: one more notch down so nothing clips */
@media (max-width:359px){
	.mtp-home .hero-cta .btn{font-size:10.5px;padding:9px 4px;letter-spacing:.02em}
}
