/* Shared reference-style UI (home + inner pages). Solid colours only. */
:root{--cr:#faf6ee;--cr2:#f1e9d8;--serif:'Cormorant Garamond','Playfair Display',Georgia,serif}
.hm-sec{padding:84px 0}
.hm-serif{font-family:var(--serif);font-weight:700;letter-spacing:-.005em;line-height:1.08;color:var(--navy)}
.hm-orn{color:var(--gold);font-size:1.5rem;display:inline-block;margin-bottom:10px}
.hm-eyebrow{display:block;color:var(--gold-dk);font-size:.74rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;margin-bottom:12px}

/* cards (shared) */
.hc{display:flex;flex-direction:column;background:var(--white);border:1.5px solid var(--gray-200);border-radius:14px;overflow:hidden;box-shadow:0 2px 10px rgba(11,30,52,.07);color:inherit;min-width:0;transition:transform .3s ease,box-shadow .3s ease,opacity .6s ease}
.hc:hover,.hc.reveal.visible:hover{transform:translateY(-6px);box-shadow:0 16px 36px rgba(11,30,52,.16)}
.hc-ph{position:relative;aspect-ratio:3/2;background:var(--gray-100);overflow:hidden}
.hc-ph img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block;border-radius:0}
.hc-ph.contain{background:var(--cr2)}
.hc-ph.contain img{object-fit:contain}
.hc-body{flex:1;display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:16px 18px 18px}
.hc-body h3{font-family:var(--display);font-size:1rem;font-weight:800;line-height:1.35;color:var(--navy);margin:0}
.hc-body p{margin:5px 0 0;font-size:.82rem;line-height:1.5;color:var(--gray-600)}
.hc-body i{flex:0 0 auto;margin-top:3px;width:30px;height:30px;border-radius:50%;background:var(--cr);color:var(--gold-dk);display:flex;align-items:center;justify-content:center;font-size:.72rem;transition:background .25s,color .25s}
.hc:hover .hc-body i{background:var(--gold);color:var(--navy)}
.hc-row{display:flex;flex-wrap:wrap;justify-content:center;gap:24px}
.hc-row>*{flex:0 0 calc((100% - 72px)/4)}
@media(max-width:1000px){.hc-row>*{flex-basis:calc((100% - 24px)/2)}}
@media(max-width:600px){.hc-row>*{flex-basis:100%}}

.hm-head{text-align:center;max-width:780px;margin:0 auto 42px}
.hm-head h2{font-size:clamp(2.2rem,4.6vw,3.4rem);margin:0 0 12px}
.hm-head p{margin:0;font-size:1.02rem;line-height:1.7;color:var(--gray-600)}
.hm-more{text-align:center;margin-top:40px}
.hm-btn{display:inline-flex;align-items:center;gap:8px;padding:13px 34px;border-radius:50px;font-size:.92rem;font-weight:700;transition:background .25s,color .25s,transform .25s}
.hm-btn.gold{background:var(--gold);color:var(--navy)}.hm-btn.gold:hover{background:var(--gold-dk);color:var(--white);transform:translateY(-2px)}
.hm-btn.line{border:1.5px solid var(--gold-dk);color:var(--gold-dk);background:transparent}.hm-btn.line:hover{background:var(--gold);border-color:var(--gold);color:var(--navy);transform:translateY(-2px)}

@media(max-width:600px){.hm-sec{padding:52px 0}.hm-head{margin-bottom:30px}.hm-head h2{font-size:clamp(1.9rem,9vw,2.4rem)}}
