/* ============================================================
 * House of Millwork — luxury hybrid block theme styling
 * Deep Charcoal Navy + Gold on Ivory. Loaded front + editor.
 * ============================================================ */
:root{
	--hom-ivory:#F5F2EC; --hom-ivory2:#EFEBE1; --hom-navy:#1E242B; --hom-navy-deep:#161B21;
	--hom-char:#222A32; --hom-soft:#52514A; --hom-mute:#8C887D;
	--hom-gold:#C9A24B; --hom-brass:#A98B5D; --hom-brass-l:#C9B287;
	--hom-line:rgba(31,30,27,.14);
	--font-h:'Cormorant Garamond',Georgia,serif;
	--font-b:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
	--font-l:'Jost',Arial,sans-serif;
}

/* ---------- Base ---------- */
html{font-size:17.5px}
body{background:var(--hom-ivory);color:var(--hom-soft);font-family:var(--font-b);font-weight:300;font-size:1.0625rem;line-height:1.8;-webkit-font-smoothing:antialiased}
.hom-main h1,.hom-main h2,.hom-main h3,.hom-main h4{font-family:var(--font-h);color:var(--hom-char);font-weight:500;line-height:1.1}
.screen-reader-text{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);white-space:nowrap}

/* ---------- Layout + fixed rail ---------- */
.hom-layout{min-height:100vh}
.hom-rail{position:fixed;left:0;top:0;width:250px;height:100vh;background:var(--hom-navy);color:#e7e2d6;z-index:40;display:flex;flex-direction:column;justify-content:flex-start;padding:2.4rem 2rem 0;overflow-y:auto}
.hom-rail__logo{display:inline-block}
.hom-rail__logo img,.hom-rail__logo .custom-logo{height:90px;width:auto;filter:brightness(0) invert(1);opacity:.95}
.hom-rail__mk{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.36em;font-size:.54rem;color:var(--hom-brass-l);margin-top:1rem}
.hom-menu{list-style:none;display:flex;flex-direction:column;gap:1.1rem;margin:2.4rem 0 0;padding:0}
.hom-menu a{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.2em;font-size:.8rem;color:#cbc6b9;text-decoration:none;transition:.25s}
.hom-menu a:hover{color:var(--hom-brass-l);padding-left:7px}
.hom-menu .current-menu-item>a{color:var(--hom-brass-l)}
/* Submenu (e.g. Our Lines) — hidden until hover/click */
.hom-menu .sub-menu{list-style:none;margin:.55rem 0 .15rem;padding:0 0 0 1rem;display:none}
.hom-menu .menu-item-has-children>a::after{content:"";display:inline-block;width:6px;height:6px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);margin-left:.6em;vertical-align:middle;opacity:.7;transition:transform .25s}
.hom-menu .menu-item-has-children.is-open>a::after{transform:rotate(-135deg)}
.hom-menu .menu-item-has-children.is-open>.sub-menu{display:block}
@media(hover:hover){.hom-menu .menu-item-has-children:hover>.sub-menu{display:block}.hom-menu .menu-item-has-children:hover>a::after{transform:rotate(-135deg)}}
.hom-menu .sub-menu a{font-size:.72rem;letter-spacing:.16em;color:#a7b0a9;padding:.28rem 0;display:block}
.hom-menu .sub-menu a:hover{color:var(--hom-brass-l);padding-left:5px}
.hom-rail__ct{font-size:.82rem;color:#9a958a;line-height:1.7;border-top:1px solid rgba(255,255,255,.12);padding-top:1.3rem;padding-bottom:2.4rem;margin-top:auto}
.hom-rail__ct b{display:block;font-family:var(--font-h);color:#fff;font-size:1.15rem;font-weight:500;margin-bottom:.3rem}
.hom-rail__mail{color:var(--hom-brass-l)}
.hom-rail__cta{display:block;margin-top:1.3rem;text-align:center;font-family:var(--font-l);font-weight:500;text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;color:var(--hom-navy);background:var(--hom-gold);padding:1rem .9rem;border:1px solid var(--hom-gold);transition:.28s}
.hom-rail__cta:hover{background:transparent;color:var(--hom-gold)}
.hom-rail__toggle{display:none;margin-top:1rem;background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;padding:.6rem .9rem;cursor:pointer}
.hom-main{margin-left:250px}

/* ---------- Content alignment within main ---------- */
.hom-main .entry-content>*{margin-block:0}
.hom-main .entry-content>.alignfull{max-width:none;width:100%;margin-left:0;margin-right:0}
.hom-main .entry-content>:not(.alignfull):not(.alignwide){max-width:760px;margin-inline:auto;padding-inline:clamp(1.4rem,5vw,2rem)}
.hom-pad{padding-inline:clamp(1.4rem,5vw,2rem)}

/* ---------- Shared bits ---------- */
.hom-eb{font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.4em;font-size:.64rem!important;color:var(--hom-brass)!important;font-weight:400}
.hom-section{padding:clamp(4rem,8vw,7rem) clamp(1.5rem,5vw,4.5rem)}
.hom-section--ivory2{background:var(--hom-ivory2)}
.hom-sec-h{text-align:center;max-width:60ch;margin-inline:auto;margin-bottom:clamp(2.2rem,4vw,3.4rem)}
.hom-sec-h h2{font-size:clamp(2.3rem,1.6rem+2.6vw,3.7rem);margin:.4rem 0 0}
.hom-lead{font-size:1.12rem;color:var(--hom-soft)}
.hom-rule{border:0;border-top:1px solid var(--hom-gold);width:62px;margin:1.4rem 0;height:0}

/* Buttons */
.wp-block-button.hom-btn--ltfill .wp-block-button__link,
.wp-block-button.hom-btn--lt .wp-block-button__link,
.wp-block-button.hom-btn--gold .wp-block-button__link,
.wp-block-button.hom-btn--dark .wp-block-button__link{
	font-family:var(--font-l);font-weight:400;text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;
	padding:1.05rem 2.2rem;border-radius:0;border:1px solid;transition:.3s
}
.hom-btn--ltfill .wp-block-button__link{background:var(--hom-ivory);color:var(--hom-char);border-color:var(--hom-ivory)}
.hom-btn--ltfill .wp-block-button__link:hover{background:transparent;color:#fff;border-color:#fff}
.hom-btn--lt .wp-block-button__link{background:transparent;color:#fff;border-color:rgba(255,255,255,.55)}
.hom-btn--lt .wp-block-button__link:hover{background:#fff;color:var(--hom-char);border-color:#fff}
.hom-btn--gold .wp-block-button__link{background:var(--hom-gold);color:var(--hom-navy);border-color:var(--hom-gold)}
.hom-btn--gold .wp-block-button__link:hover{background:transparent;color:var(--hom-gold)}
.hom-btn--dark .wp-block-button__link{background:var(--hom-char);color:var(--hom-ivory);border-color:var(--hom-char)}
.hom-btn--dark .wp-block-button__link:hover{background:transparent;color:var(--hom-char)}

/* ---------- Hero (Cover) ---------- */
.hom-hero{min-height:100vh}
.hom-hero.wp-block-cover{align-items:center}
.hom-hero .wp-block-cover__inner-container{max-width:760px;text-align:center}
.hom-hero h1{color:#fff;font-size:clamp(3rem,2rem+4.6vw,6.4rem);margin:1rem 0 0}
.hom-hero h1 em{font-style:italic;color:var(--hom-brass-l)}
.hom-hero .hom-eb{color:var(--hom-brass-l)!important}
.hom-hero p{color:#ece9e1;font-weight:300;font-size:1.18rem;max-width:50ch;margin-inline:auto}
.hom-hero .hom-rule{margin-inline:auto}
.hom-hero .wp-block-buttons{justify-content:center}

/* ---------- Collections ---------- */
.hom-coll{gap:clamp(1.8rem,3.4vw,3.4rem)!important;margin-top:.5rem}
.hom-c{position:relative;text-align:center;padding:clamp(1.1rem,1.5vw,1.7rem);transition:background .35s ease,box-shadow .35s ease}
.hom-c::after{content:"";position:absolute;inset:0;border:1px solid transparent;transition:border-color .4s ease;pointer-events:none}
.hom-c:hover{background:#FBF9F4;box-shadow:0 26px 56px -38px rgba(34,42,50,.5)}
.hom-c:hover::after{border-color:var(--hom-gold)}
.hom-ci{margin:0 0 1.6rem!important;overflow:hidden}
.hom-ci img{width:100%;aspect-ratio:4/5;object-fit:cover;transition:transform 1s cubic-bezier(.22,.61,.36,1)}
.hom-c:hover .hom-ci img{transform:scale(1.045)}
.hom-t{font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.28em;font-size:.6rem!important;color:var(--hom-brass)!important;margin:0!important}
.hom-c h3{font-size:2.05rem;margin:.5rem 0 .55rem}
.hom-c p{color:var(--hom-mute);font-weight:300;font-size:.97rem;max-width:34ch;margin:0 auto 1.2rem}
.hom-clink a,.hom-clink{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.2em;font-size:.64rem;color:var(--hom-char)}
.hom-clink a{border-bottom:1px solid var(--hom-gold);padding-bottom:.35rem}
.hom-gloss{text-align:center;font-style:italic;color:var(--hom-mute);font-size:.84rem;margin-top:2.2rem!important}

/* ---------- HOM-Commercial line entry ---------- */
.hom-commercial{margin-top:clamp(1.8rem,3vw,3rem);background:var(--hom-navy);color:#cdd1cf;overflow:hidden}
.hom-commercial .wp-block-columns{margin:0;gap:0!important;align-items:stretch}
.hom-cc-img{padding:0!important}
.hom-cc-img figure{margin:0;height:100%}
.hom-cc-img img{width:100%;height:100%;object-fit:cover;min-height:340px;display:block}
.hom-cc-text{padding:clamp(2rem,4vw,3.4rem)!important}
.hom-commercial .hom-eb{color:var(--hom-brass-l)!important}
.hom-commercial h3{color:#fff;font-size:2.2rem;margin:.3rem 0 .6rem}
.hom-commercial p{color:#cdd1cf;max-width:46ch}

/* ---------- Split (consult / craft) ---------- */
.hom-split{gap:clamp(2rem,5vw,5rem)!important;align-items:center}
.hom-split h2{font-size:clamp(2.1rem,1.5rem+2vw,3.2rem)}
.hom-split figure{margin:0}
.hom-split img{width:100%;aspect-ratio:5/4;object-fit:cover}

/* ---------- Solutions for every space ---------- */
.hom-spaces{gap:1rem!important;margin-top:.5rem}
.hom-sp{position:relative;background:var(--hom-navy);border:1px solid rgba(201,162,75,.3);padding:1.3rem!important;min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;transition:.3s;overflow:hidden}
.hom-sp .hom-n{font-family:var(--font-l)!important;font-size:.62rem!important;letter-spacing:.2em;color:var(--hom-gold)!important;margin:0!important}
.hom-sp h3{color:#fff;font-size:1.4rem;margin:.3rem 0 0}
.hom-sp:hover{border-color:var(--hom-gold);transform:translateY(-4px)}

/* ---------- Band (commercial) ---------- */
.hom-band{min-height:72vh}
.hom-band.wp-block-cover{align-items:center}
.hom-band .wp-block-cover__inner-container{max-width:720px;text-align:center}
.hom-band h2{color:#fff;font-size:clamp(2.2rem,1.6rem+2.4vw,3.6rem);margin:.8rem 0}
.hom-band .hom-eb{color:var(--hom-brass-l)!important}
.hom-band p{color:#ece9e1;font-weight:300;max-width:52ch;margin-inline:auto}
.hom-band .wp-block-buttons{justify-content:center}

/* ---------- Services ---------- */
.hom-svc{gap:clamp(1.5rem,3vw,2.6rem)!important;margin-top:.5rem}
.hom-scard{text-align:center;padding-top:1.6rem;border-top:1px solid var(--hom-line);transition:.3s}
.hom-scard:hover{border-color:var(--hom-gold)}
.hom-scard .hom-num{font-family:var(--font-h)!important;font-style:italic;font-size:1.6rem!important;color:var(--hom-gold)!important;margin:0!important}
.hom-scard h3{font-size:1.5rem;margin:.4rem 0 .4rem}
.hom-scard p{color:var(--hom-mute);font-weight:300;font-size:.94rem;margin:0}

/* ---------- Testimonials ---------- */
.hom-stories{gap:clamp(1.6rem,3vw,2.6rem)!important;margin-top:.5rem}
.hom-story{text-align:center;background:#fff;padding:clamp(1.6rem,2.5vw,2.4rem) 1.4rem;box-shadow:0 26px 54px -40px rgba(34,42,50,.4)}
.hom-story .hom-qm{font-family:var(--font-h)!important;font-size:2.6rem!important;color:var(--hom-gold)!important;line-height:.5;margin:0!important}
.hom-story .hom-q{font-family:var(--font-h)!important;font-style:italic;font-size:1.22rem!important;color:var(--hom-char)!important;margin:.8rem 0 1rem!important;line-height:1.5}
.hom-story .hom-cite{font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.16em;font-size:.62rem!important;color:var(--hom-brass)!important;margin:0!important}

/* ---------- Contact ---------- */
.hom-contact{background:var(--hom-navy);color:#cdd1cf}
.hom-contact h2{color:#fff}
.hom-contact .hom-eb{color:var(--hom-brass-l)!important}
.hom-contact .hom-sec-h{text-align:left;margin-inline:0;max-width:60ch}
.hom-contact .hom-lead{color:#cdd1cf}
.hom-off h4{color:var(--hom-brass-l);font-family:var(--font-l);text-transform:uppercase;letter-spacing:.16em;font-size:.68rem;font-weight:500;margin:0 0 .4rem}
.hom-off p{color:#cdd1cf;font-size:.96rem;margin:0 0 1.5rem}
.hom-off a{color:#fff}.hom-off a:hover{color:var(--hom-brass-l)}
.hom-form{background:var(--hom-ivory);padding:clamp(1.6rem,3vw,2.6rem)}
.hom-form h3{color:var(--hom-char);font-size:1.7rem;margin:0}
.hom-form .s{color:var(--hom-mute);font-size:.88rem;margin:.2rem 0 1.3rem;font-weight:300}
.hom-fld{margin-bottom:1rem}
.hom-fld label{display:block;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;color:var(--hom-char);margin-bottom:.4rem}
.hom-fld .req{color:var(--hom-gold)}
.hom-fld input,.hom-fld select{width:100%;padding:.8rem .9rem;border:1px solid #ded7c9;border-radius:2px;background:#fff;font-family:var(--font-b);font-size:.94rem;color:var(--hom-char)}
.hom-fld input:focus,.hom-fld select:focus{outline:none;border-color:var(--hom-gold);box-shadow:0 0 0 3px rgba(201,162,75,.18)}
.hom-frow{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}
.hom-up{display:flex;gap:.55rem;align-items:center;justify-content:center;border:1.5px dashed #d8d2c4;border-radius:2px;background:#fff;padding:1rem;color:var(--hom-char);font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.66rem;cursor:pointer}
.hom-form button{width:100%;justify-content:center;display:inline-flex;gap:.5rem;align-items:center;margin-top:.4rem;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;padding:1.05rem 2rem;border:1px solid var(--hom-gold);background:var(--hom-gold);color:var(--hom-navy);cursor:pointer;transition:.3s}
.hom-form button:hover{background:transparent;color:var(--hom-gold)}
.hom-form .note{font-size:.74rem;color:var(--hom-mute);text-align:center;margin:.8rem 0 0;font-weight:300}

/* ---------- Footer ---------- */
.hom-footer{background:var(--hom-navy-deep);color:#9a958a;padding:3rem 0;text-align:center;border-top:1px solid rgba(201,162,75,.28)}
.hom-footer__inner{max-width:1180px;margin:auto;padding:0 clamp(1.5rem,5vw,4.5rem)}
.hom-fnav{list-style:none;display:flex;gap:1.8rem;justify-content:center;flex-wrap:wrap;margin:0 0 1rem;padding:0}
.hom-fnav a{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;color:#cbc6b9;text-decoration:none}
.hom-fnav a:hover{color:var(--hom-brass-l)}
.hom-rail a,.hom-footer a{text-decoration:none}
.hom-footer__cp{font-size:.74rem;color:#7d786e}

/* ============================================================
 * Sub-pages (Basic / Select / Signature / Commercial / Our Story)
 * ============================================================ */
.hom-page-head{min-height:56vh}
.hom-page-head.wp-block-cover{align-items:center}
.hom-page-head .wp-block-cover__inner-container{max-width:900px;text-align:center}
.hom-page-head .hom-eb{color:var(--hom-brass-l)!important}
.hom-page-head h1{color:#fff;font-size:clamp(2.6rem,1.8rem+3vw,4.6rem);margin:1rem 0 0}
.hom-page-head p{color:#ece9e1;font-weight:300;max-width:54ch;margin-inline:auto}
.hom-page-head .wp-block-buttons{justify-content:center}

.hom-prose{}
.hom-prose h2{font-size:clamp(1.9rem,1.4rem+1.6vw,2.8rem);margin:0 0 .4rem}
.hom-prose h3{font-size:1.5rem;color:var(--hom-char);margin:1.6rem 0 .4rem}
.hom-prose p{margin:0 0 1rem}
.hom-prose .hom-eb{margin-bottom:.4rem}

/* Feature / lineup lists */
.hom-feat-list{list-style:none;margin:1rem 0 0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1.1rem 2.4rem}
.hom-feat-list.is-one-col{grid-template-columns:1fr}
.hom-feat-list li{position:relative;padding-left:1.6rem;color:var(--hom-soft);font-size:.98rem;line-height:1.6}
.hom-feat-list li::before{content:"";position:absolute;left:0;top:.55em;width:8px;height:8px;background:var(--hom-gold);transform:rotate(45deg)}
.hom-feat-list li strong{display:block;font-family:var(--font-h);font-weight:600;color:var(--hom-char);font-size:1.08rem;margin-bottom:.1rem}

/* Spec table */
.hom-spec{margin:1.6rem 0 0}
.hom-spec table{width:100%;border-collapse:collapse;background:#fff;border:1px solid var(--hom-line)}
.hom-spec th,.hom-spec td{text-align:left;vertical-align:top;padding:1rem 1.2rem;border-bottom:1px solid var(--hom-line);font-size:.95rem;line-height:1.6}
.hom-spec tr td:first-child{font-family:var(--font-h);font-weight:600;color:var(--hom-char);width:34%}
.hom-spec tr:last-child td{border-bottom:0}

/* CTA band (sub-page) */
.hom-cta-band{background:var(--hom-navy);color:#cdd1cf;text-align:center}
.hom-cta-band h2{color:#fff}
.hom-cta-band .hom-eb{color:var(--hom-brass-l)!important}
.hom-cta-band p{color:#cdd1cf;max-width:52ch;margin-inline:auto}
.hom-cta-band .wp-block-buttons{justify-content:center}

/* 12 PET colour swatches */
.hom-swatch-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:1.6rem}
.hom-swatch{background:#fff;border:1px solid var(--hom-line);padding:.7rem;margin:0;transition:border-color .3s,transform .3s}
.hom-swatch:hover{border-color:var(--hom-gold);transform:translateY(-3px)}
.hom-swatch img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;margin-bottom:.7rem}
.hom-swatch figcaption span{display:block}
.hom-swatch .chip{aspect-ratio:5/4;border:1px solid rgba(0,0,0,.08);margin-bottom:.7rem}
.hom-swatch .chip.gloss{background-image:linear-gradient(135deg,rgba(255,255,255,.5),rgba(255,255,255,0) 45%)}
.hom-swatch .code{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.14em;font-size:.58rem;color:var(--hom-gold)}
.hom-swatch .name{font-family:var(--font-h);font-size:1.05rem;color:var(--hom-char);line-height:1.2;margin-top:.1rem}
.hom-swatch .fin{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.56rem;color:var(--hom-mute);margin-top:.2rem}

/* 6 finish cards (editable image blocks) */
.hom-finish-row{gap:1.4rem!important;margin-top:1.6rem}
.hom-finish-row+.hom-finish-row{margin-top:1.4rem!important}
.hom-finish{background:#fff;border:1px solid var(--hom-line);overflow:hidden;transition:border-color .3s,transform .3s}
.hom-finish:hover{border-color:var(--hom-gold);transform:translateY(-4px)}
.hom-finish .hom-finish-img{margin:0;aspect-ratio:4/3;overflow:hidden;background:#ece7db}
.hom-finish .hom-finish-img img{width:100%;height:100%;object-fit:cover;display:block}
.hom-finish-body{padding:1.4rem 1.5rem}
.hom-finish-meta{font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.1em;font-size:.6rem!important;color:var(--hom-mute)!important;margin:0 0 .2rem!important}
.hom-finish h3{font-size:1.5rem;margin:0 0 .3rem}
.hom-finish-turn{color:var(--hom-gold)!important;font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.1em;font-size:.6rem!important;margin:0!important}

/* Legal / privacy page */
.hom-legal-head{text-align:center}
.hom-legal-head h1{color:#fff;font-size:clamp(2.4rem,1.6rem+3vw,4.2rem);margin:.6rem 0 .4rem}
.hom-legal-head .hom-eb{color:var(--hom-brass-l)!important}
.hom-legal-head .hom-date{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.16em;font-size:.66rem;color:#cdd1cf;margin:0}
.hom-legal h2{font-size:1.5rem;margin-top:2.4rem}
.hom-legal h2:first-of-type{margin-top:0}
.hom-legal ul{margin:.4rem 0 1.1rem 1.2rem}
.hom-legal li{margin-bottom:.5rem;color:var(--hom-soft)}
.hom-legal li::marker{color:var(--hom-gold)}
.hom-legal a{color:var(--hom-gold)}

@media(max-width:1024px){.hom-feat-list{grid-template-columns:1fr}.hom-swatch-grid{grid-template-columns:repeat(2,1fr)}.hom-finish-grid{grid-template-columns:1fr}}

/* ============================================================
 * Campaign landing page (distraction-free, no rail)
 * ============================================================ */
.hom-lp{background:var(--hom-ivory)}
.hom-lp-bar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.7rem clamp(1.2rem,5vw,3rem);background:rgba(245,242,236,.96);backdrop-filter:blur(8px);border-bottom:1px solid var(--hom-line)}
.hom-lp-logo img{height:48px;width:auto}
.hom-lp-call{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.72rem;color:var(--hom-navy);border:1px solid var(--hom-navy);padding:.6rem 1.1rem;border-radius:2px;transition:.25s;text-decoration:none;white-space:nowrap}
.hom-lp-call:hover{background:var(--hom-navy);color:#fff}
.hom-lp-main .entry-content>*{max-width:none}
.hom-lp-foot{background:var(--hom-navy-deep);color:#9a958a;text-align:center;padding:1.6rem 1.2rem;font-size:.8rem}
.hom-lp-foot a{color:var(--hom-brass-l)}

/* Hero with form */
.hom-lp-hero{position:relative;overflow:hidden;background:var(--hom-navy)}
.hom-lp-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.5}
.hom-lp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,rgba(18,24,30,.9),rgba(18,24,30,.6));z-index:1}
.hom-lp-hero__inner{position:relative;z-index:2;max-width:1200px;margin:auto;padding:clamp(2.2rem,5vw,4rem) clamp(1.2rem,5vw,3rem);display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4vw,3.5rem);align-items:center}
.hom-lp-copy .eyebrow{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.3em;font-size:.64rem;color:var(--hom-brass-l)}
.hom-lp-copy h1{color:#fff;font-family:var(--font-h);font-weight:500;font-size:clamp(2.3rem,1.6rem+2.6vw,3.8rem);line-height:1.08;margin:.8rem 0}
.hom-lp-copy h1 em{font-style:italic;color:var(--hom-brass-l)}
.hom-lp-copy .sub{color:#e6e9e2;font-weight:300;font-size:1.12rem;max-width:46ch;margin-bottom:1.4rem}
.hom-lp-ticks{list-style:none;margin:0;padding:0;display:grid;gap:.55rem}
.hom-lp-ticks li{position:relative;padding-left:1.6rem;color:#dfe3da;font-size:.97rem}
.hom-lp-ticks li::before{content:"";position:absolute;left:0;top:.5em;width:8px;height:8px;background:var(--hom-gold);transform:rotate(45deg)}
.hom-lp-stars{margin-top:1.2rem;color:var(--hom-gold);letter-spacing:.15em;font-size:.95rem}
.hom-lp-stars span{color:#cdd4cd;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.1em;font-size:.64rem;margin-left:.5rem}

/* Form card */
.hom-lp-form{background:#fff;border-radius:8px;padding:clamp(1.5rem,3vw,2.2rem);box-shadow:0 40px 80px -34px rgba(0,0,0,.55)}
.hom-lp-form h2{color:var(--hom-navy);font-family:var(--font-h);font-weight:600;font-size:1.7rem;margin:0}
.hom-lp-form .fs{color:var(--hom-mute);font-size:.9rem;margin:.2rem 0 1.1rem;font-weight:300}
.hom-lp-fld{margin-bottom:.8rem}
.hom-lp-fld label{display:block;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.09em;font-size:.62rem;color:var(--hom-navy);margin-bottom:.32rem}
.hom-lp-fld .req{color:var(--hom-gold)}
.hom-lp-fld input,.hom-lp-fld select{width:100%;padding:.8rem .85rem;border:1px solid #ded7c9;border-radius:4px;background:var(--hom-ivory);font-family:var(--font-b);font-size:.95rem;color:var(--hom-char)}
.hom-lp-fld input:focus,.hom-lp-fld select:focus{outline:none;border-color:var(--hom-gold);background:#fff;box-shadow:0 0 0 3px rgba(201,162,75,.18)}
.hom-lp-frow{display:grid;grid-template-columns:1fr 1fr;gap:.7rem}
.hom-lp-submit{width:100%;margin-top:.4rem;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;padding:1.1rem 1.5rem;border:0;border-radius:4px;background:var(--hom-gold);color:var(--hom-navy);font-weight:500;cursor:pointer;transition:.25s}
.hom-lp-submit:hover{background:var(--hom-navy);color:#fff}
.hom-lp-form .note{font-size:.74rem;color:var(--hom-mute);text-align:center;margin:.8rem 0 0}
.hom-lp-form .note a{color:var(--hom-gold)}

/* Trust strip */
.hom-lp-trust{background:#fff;border-bottom:1px solid var(--hom-line)}
.hom-lp-trust__in{max-width:1100px;margin:auto;display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;padding:1.2rem clamp(1.2rem,5vw,3rem)}
.hom-lp-trust__in div{text-align:center;flex:1;min-width:130px}
.hom-lp-trust__in b{display:block;font-family:var(--font-h);font-size:1.5rem;color:var(--hom-navy)}
.hom-lp-trust__in span{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.6rem;color:var(--hom-brass)}

/* Layouts */
.hom-lp-sec{max-width:1200px;margin:auto;padding:clamp(3rem,6vw,5rem) clamp(1.2rem,5vw,3rem)}
.hom-lp-sec__h{text-align:center;max-width:56ch;margin:0 auto clamp(2rem,4vw,3rem)}
.hom-lp-sec__h .eyebrow{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.28em;font-size:.64rem;color:var(--hom-brass)}
.hom-lp-sec__h h2{font-family:var(--font-h);color:var(--hom-char);font-weight:600;font-size:clamp(2rem,1.4rem+2vw,3rem);margin:.4rem 0 0}
.hom-lp-row{gap:1.5rem!important}
.hom-lp-row+.hom-lp-row{margin-top:1.5rem!important}
.hom-lp-card{background:#fff;border:1px solid var(--hom-line);border-radius:6px;overflow:hidden;display:flex;flex-direction:column;transition:border-color .3s,transform .3s,box-shadow .3s}
.hom-lp-card:hover{border-color:var(--hom-gold);transform:translateY(-4px);box-shadow:0 26px 54px -38px rgba(34,42,50,.5)}
.hom-lp-card__img{margin:0;aspect-ratio:4/3;overflow:hidden;background:#ece7db}
.hom-lp-card__img img{width:100%;height:100%;object-fit:cover;display:block}
.hom-lp-card__b{padding:1.4rem 1.5rem;display:flex;flex-direction:column;flex:1}
.hom-lp-card__tag{font-family:var(--font-l)!important;text-transform:uppercase;letter-spacing:.14em;font-size:.6rem!important;color:var(--hom-brass)!important;margin:0!important}
.hom-lp-card h3{font-family:var(--font-h);color:var(--hom-char);font-weight:600;font-size:1.4rem;margin:.25rem 0 .5rem}
.hom-lp-card ul{list-style:none;margin:0 0 1rem;padding:0}
.hom-lp-card li{font-size:.9rem;color:var(--hom-soft);padding:.15rem 0 .15rem .95rem;position:relative}
.hom-lp-card li::before{content:"";position:absolute;left:0;top:.6em;width:5px;height:5px;background:var(--hom-gold);transform:rotate(45deg)}
.hom-lp-card__price{font-family:var(--font-h)!important;color:var(--hom-navy)!important;font-size:1.5rem!important;margin:auto 0 0!important}
.hom-lp-card__price small{font-size:.7rem;color:var(--hom-mute);font-family:var(--font-b);letter-spacing:0}
.hom-lp-cta{margin-top:.9rem!important}
.hom-lp-cta .wp-block-button__link{display:flex;width:100%;align-items:center;justify-content:center;gap:.4rem;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.12em;font-size:.68rem;padding:.85rem 1rem;border-radius:3px;background:var(--hom-navy);color:#fff;border:0;transition:.25s}
.hom-lp-cta .wp-block-button__link:hover{background:var(--hom-gold);color:var(--hom-navy)}
.hom-lp-fine{text-align:center;color:var(--hom-mute);font-size:.82rem;font-style:italic;margin-top:1.8rem}

/* Final CTA */
.hom-lp-final{background:var(--hom-navy);color:#dfe3da;text-align:center}
.hom-lp-final__in{max-width:760px;margin:auto;padding:clamp(3rem,6vw,5rem) clamp(1.2rem,5vw,3rem)}
.hom-lp-final h2{color:#fff;font-family:var(--font-h);font-weight:600;font-size:clamp(2rem,1.4rem+2vw,3rem);margin:.4rem 0 .8rem}
.hom-lp-final .eyebrow{font-family:var(--font-l);text-transform:uppercase;letter-spacing:.28em;font-size:.64rem;color:var(--hom-brass-l)}
.hom-lp-final a.btn{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.2rem;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;padding:1.1rem 2.2rem;border-radius:4px;background:var(--hom-gold);color:var(--hom-navy);text-decoration:none;transition:.25s}
.hom-lp-final a.btn:hover{background:#fff}

@media(max-width:900px){
	.hom-lp-hero__inner{grid-template-columns:1fr}
	.hom-lp-grid{grid-template-columns:1fr;max-width:460px;margin-inline:auto}
	.hom-lp-trust__in b{font-size:1.3rem}
}

/* ---------- Contact Form 7 compatibility ---------- */
.wpcf7-form-control-wrap{display:block}
.wpcf7 p{margin:0}
.wpcf7-not-valid-tip{color:#b23b3b;font-family:var(--font-b);font-size:.76rem;margin-top:.25rem;text-transform:none;letter-spacing:0;font-weight:400}
.wpcf7-response-output{margin:1rem 0 0!important;border:1px solid var(--hom-line)!important;border-radius:4px;padding:.75rem .95rem!important;font-family:var(--font-b);font-size:.85rem}
.wpcf7-spinner{margin:.7rem auto 0;display:block}
.hom-cf7-submit{width:100%;display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:var(--font-l);text-transform:uppercase;letter-spacing:.14em;font-size:.78rem;padding:1.05rem 1.5rem;border:0;border-radius:4px;background:var(--hom-gold);color:var(--hom-navy);cursor:pointer;transition:.25s}
.hom-cf7-submit:hover{background:var(--hom-navy);color:#fff}

/* ---------- Reveal animation ---------- */
.hom-reveal{opacity:0;transform:translateY(28px);transition:opacity 1s cubic-bezier(.22,.61,.36,1),transform 1s cubic-bezier(.22,.61,.36,1)}
.hom-reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.hom-reveal{opacity:1;transform:none;transition:none}}
/* Always show reveal elements inside the block editor (front-end JS doesn't run there). */
.editor-styles-wrapper .hom-reveal{opacity:1!important;transform:none!important}

/* ---------- Responsive ---------- */
@media(max-width:1024px){
	.hom-rail{position:sticky;top:0;width:auto;height:auto;flex-direction:column;padding:0;overflow:visible;border-bottom:1px solid rgba(201,162,75,.28)}
	.hom-rail__top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.5rem;padding:.7rem 1.3rem}
	.hom-rail__logo{order:1;margin:0}
	.hom-rail__logo img,.hom-rail__logo .custom-logo{height:50px}
	.hom-rail__mk,.hom-rail__ct{display:none}
	.hom-rail__toggle{order:2;display:flex;align-items:center;justify-content:center;width:46px;height:40px;padding:0;margin:0;border:0;background:transparent;color:#fff;font-size:0;cursor:pointer}
	.hom-rail__toggle::before{content:"";width:24px;height:1.5px;background:currentColor;box-shadow:0 -7px 0 currentColor,0 7px 0 currentColor}
	.hom-rail.is-open .hom-rail__toggle{color:var(--hom-gold)}
	.hom-rail__nav{order:3;flex-basis:100%;width:100%;display:none}
	.hom-rail.is-open .hom-rail__nav{display:block;border-top:1px solid rgba(255,255,255,.1)}
	.hom-rail__nav .hom-menu{flex-direction:column;gap:0;margin:0;padding:.2rem 1.3rem .7rem}
	.hom-rail__nav .hom-menu li{border-bottom:1px solid rgba(255,255,255,.08)}
	.hom-rail__nav .hom-menu li:last-child{border-bottom:0}
	.hom-rail__nav .hom-menu a{display:block;padding:1rem 0}
	.hom-rail__nav .hom-menu a:hover{padding-left:6px}
	.hom-main{margin-left:0}
}

/* Editor niceties */
.editor-styles-wrapper{background:var(--hom-ivory)}
