.home-page {
    --home-gold: #d7ab63;
    --home-gold-light: #f1d59a;
    --home-ink: #f5ead3;
    color: var(--home-ink);
    font-family: Georgia, 'Times New Roman', serif;
    background: radial-gradient(circle at 85% 10%, rgba(148, 83, 39, .16), transparent 30rem), #141414;
}

.home-shell { width: min(calc(100% - 2rem), 92rem); margin-inline: auto; }
.home-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    min-height: min(42rem, 80vh);
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(215, 171, 99, .35);
    background: linear-gradient(90deg, rgba(8, 10, 12, .96) 0%, rgba(12, 12, 13, .83) 47%, rgba(14, 13, 13, .4) 100%), url('../images/map_good.jpg') center 45% / cover;
}
.home-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; pointer-events: none; opacity: .18; background: repeating-linear-gradient(115deg, transparent 0 19px, rgba(255, 239, 198, .08) 20px 21px); }
.home-hero::after { content: ''; position: absolute; right: -10rem; bottom: -15rem; width: 38rem; height: 38rem; border: 1px solid rgba(215, 171, 99, .24); border-radius: 50%; box-shadow: 0 0 0 3rem rgba(215, 171, 99, .04), 0 0 0 7rem rgba(215, 171, 99, .025); pointer-events: none; }
.home-hero-content { position: relative; z-index: 1; padding-block: clamp(5rem, 10vw, 9rem); }
.home-eyebrow { color: var(--home-gold-light); font: 700 .75rem ui-monospace, SFMono-Regular, Menlo, Consolas, monospace; letter-spacing: .2em; text-transform: uppercase; }
.home-title { max-width: 12ch; margin: 1rem 0 0; color: #fff4d9; font-family: 'MyCustomFont', Georgia, serif; font-size: clamp(3.25rem, 8vw, 7.5rem); font-weight: 400; line-height: .92; text-wrap: balance; text-shadow: 0 5px 30px #000; }
.home-intro { max-width: 52rem; margin-top: 1.6rem; color: #e0d3bf; font-size: clamp(1.05rem, 1.8vw, 1.25rem); line-height: 1.7; }
.home-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2.1rem; }
.home-action { display: inline-flex; min-height: 3.2rem; align-items: center; justify-content: center; gap: 1.4rem; padding: .7rem 1.3rem; border: 1px solid var(--home-gold); border-radius: .2rem; font: 700 .9rem ui-sans-serif, system-ui, sans-serif; letter-spacing: .02em; transition: background .18s, color .18s, transform .18s; }
.home-action:hover { transform: translateY(-2px); }
.home-action-primary { color: #21180e; background: linear-gradient(135deg, #f0d79d, #d5a052); box-shadow: 0 8px 25px rgba(0, 0, 0, .25); }
.home-action-primary:hover { color: #21180e; background: #ffe1a5; }
.home-action-secondary { color: #f5e6ca; background: rgba(15, 14, 14, .65); }
.home-action-secondary:hover { color: #fff; background: rgba(145, 98, 43, .35); }
.home-features { padding-block: clamp(3.5rem, 6vw, 6rem); }
.home-section-heading { max-width: 52rem; margin-bottom: 2rem; }
.home-section-heading h2 { margin: .6rem 0; color: #f5e7c8; font-family: 'MyCustomFont', Georgia, serif; font-size: clamp(2.3rem, 4.5vw, 4.3rem); font-weight: 400; line-height: 1.05; }
.home-section-heading > p:last-child { color: #c8b89e; font-size: 1.05rem; line-height: 1.6; }
.home-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.2rem; }
.home-feature-card { min-width: 0; overflow: hidden; border: 1px solid rgba(209, 168, 99, .3); border-radius: .35rem; background: linear-gradient(150deg, #2a241e, #1a1a19 70%); box-shadow: 0 12px 25px rgba(0, 0, 0, .18); }
.home-feature-card-lead { grid-column: 1 / -1; display: grid; grid-template-columns: minmax(0, 1.35fr) minmax(0, 1fr); min-height: 25rem; }
.home-feature-image { display: block; width: 100%; height: 15rem; padding: 0; overflow: hidden; border: 0; background: #171715; cursor: zoom-in; }
.home-feature-card-lead .home-feature-image { height: 100%; min-height: 25rem; }
.home-feature-image img { display: block; width: 100%; height: 100%; object-fit: cover; transition: transform .3s ease; }
.home-feature-image:hover img { transform: scale(1.035); }
.home-feature-copy { min-width: 0; padding: clamp(1.2rem, 2vw, 2rem); }
.home-feature-card-lead .home-feature-copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(1.5rem, 4vw, 4rem); }
.home-feature-number { display: block; margin-bottom: .7rem; color: var(--home-gold); font: 700 .75rem ui-monospace, monospace; letter-spacing: .18em; }
.home-feature-copy h3 { margin: 0 0 .65rem; color: #f5dfb4; font-family: 'MyCustomFont', Georgia, serif; font-size: clamp(1.55rem, 2vw, 2.3rem); font-weight: 400; line-height: 1.15; overflow-wrap: anywhere; }
.home-feature-card-lead h3 { font-size: clamp(2rem, 3.5vw, 3.6rem); }
.home-feature-copy p { margin: 0; color: #cfc2ae; font-size: 1rem; line-height: 1.65; overflow-wrap: anywhere; }
.home-feature-card-lead p { font-size: 1.1rem; }
@media (max-width: 950px) { .home-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 640px) { .home-hero { min-height: 0; background-image: linear-gradient(90deg, rgba(8, 10, 12, .9), rgba(8, 10, 12, .76)), url('../images/map_good.jpg'); background-position: 61% center; } .home-hero-content { padding-block: 4.5rem 5rem; } .home-title { font-size: clamp(3rem, 15vw, 5rem); } .home-intro { font-size: 1rem; } .home-actions { flex-direction: column; align-items: stretch; } .home-feature-grid { grid-template-columns: minmax(0, 1fr); } .home-feature-card-lead { display: block; min-height: 0; } .home-feature-card-lead .home-feature-image { height: 15rem; min-height: 0; } .home-feature-card-lead .home-feature-copy { padding: 1.3rem; } }
