.home-page { --home-bg:#f5f3ec; --home-ink:#233c33; --home-muted:#58675e; --home-line:#d4d9ce; --home-panel:#eceee4; --home-accent:#365a42; background:var(--home-bg); color:var(--home-ink); }
html[data-theme="dark"] .home-page { --home-bg:#141d19; --home-ink:#efeee3; --home-muted:#b1bfb2; --home-line:#3a493e; --home-panel:#1d2a22; --home-accent:#d0dfaf; }
.home-page main.container { max-width:1240px; padding:0 32px!important; }
.home-page .navbar { background:var(--home-bg)!important; border-color:var(--home-line)!important; padding:20px 0; }
.home-page .navbar .container { max-width:1240px; padding:0 32px; }
.home-page .navbar-brand { font-weight:750; letter-spacing:-1px; color:var(--home-ink); margin-right:26px; }
.home-page .nav-link { color:var(--home-muted); font-size:13px; }
.home-page .nav-link:hover { color:var(--home-ink); }
.home-page .navbar .btn { color:var(--home-ink); border-color:var(--home-line); white-space:nowrap; }
.home-content a { color:inherit; text-decoration:none; }
.home-content a:focus-visible { outline:3px solid var(--home-accent); outline-offset:6px; }
.home-hero { display:grid; grid-template-columns:1.25fr 1fr; gap:64px; align-items:center; padding:68px 0 70px; }
.home-eyebrow { font-size:10px; font-weight:700; letter-spacing:1.8px; margin:0 0 22px; color:var(--home-muted); }
.home-intro .home-eyebrow { display:flex; align-items:center; gap:9px; }
.home-eyebrow span { width:7px; height:7px; background:var(--home-accent); border-radius:50%; }
.home-intro h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(40px,4.3vw,62px); line-height:1.12; letter-spacing:-2.3px; font-weight:400; margin:0 0 25px; }
.home-intro h1 em { color:var(--home-accent); }
.home-description { color:var(--home-muted); font-size:16px; line-height:1.85; max-width:465px; margin:0 0 28px; }
.home-content .home-primary { background:var(--home-accent); color:var(--home-bg); padding:15px 22px; display:inline-flex; align-items:center; gap:32px; font-size:14px; font-weight:600; border-radius:4px; transition:transform .2s; }
.home-primary:hover { transform:translateY(-2px); }
.home-note { color:var(--home-muted); font-size:11px; margin:20px 0 0; }
.home-photo { height:475px; position:relative; margin:0; overflow:hidden; border-radius:5px 80px 5px 5px; background:#324639; }
.home-photo img { height:100%; width:100%; object-fit:cover; object-position:center 48%; }
.home-photo::after { content:''; position:absolute; inset:55% 0 0; background:linear-gradient(transparent,rgba(8,24,16,.8)); pointer-events:none; }
.home-photo figcaption { position:absolute; bottom:26px; left:28px; right:28px; color:#fff; z-index:1; }
.home-photo figcaption>span { font-size:9px; letter-spacing:2px; display:block; margin-bottom:6px; }
.home-photo figcaption a { display:flex; justify-content:space-between; font-family:Georgia,serif; font-size:24px; }
.home-explore { border-top:1px solid var(--home-line); padding:40px 0 56px; scroll-margin-top:24px; }
.home-section-heading { display:flex; justify-content:space-between; align-items:end; gap:20px; margin-bottom:28px; }
.home-section-heading .home-eyebrow,.home-more .home-eyebrow,.home-about .home-eyebrow { margin-bottom:12px; }
.home-content h2 { font-family:Georgia,'Times New Roman',serif; font-size:32px; letter-spacing:-.7px; font-weight:400; margin:0; }
.home-section-note { font-size:12px; color:var(--home-muted); padding-bottom:4px; }
.home-destinations { display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--home-line); border-radius:5px; overflow:hidden; }
.home-destination { padding:26px; transition:background .2s; }
.home-destination+.home-destination { border-left:1px solid var(--home-line); }
.home-destination:hover { background:var(--home-panel); }
.home-card-top { display:flex; justify-content:space-between; align-items:center; margin-bottom:28px; }
.home-card-top i { font-size:27px; color:var(--home-accent); }
.home-card-top>span { color:var(--home-muted); font-size:9px; letter-spacing:1.2px; }
.home-destination h3 { font-size:20px; font-family:Georgia,serif; margin:0 0 12px; }
.home-destination p { font-size:13px; line-height:1.85; color:var(--home-muted); margin:0 0 26px; }
.home-card-link { display:flex; justify-content:space-between; align-items:center; font-weight:650; font-size:12px; }
.home-more { display:grid; grid-template-columns:1fr 1.35fr; gap:90px; padding:15px 0 58px; }
.home-more>div>p:last-child { color:var(--home-muted); font-size:14px; line-height:1.8; margin-top:18px; max-width:290px; }
.home-notebook-links a { display:flex; justify-content:space-between; align-items:center; gap:15px; padding:17px 0; border-bottom:1px solid var(--home-line); }
.home-notebook-links a:first-child { padding-top:0; }
.home-notebook-links strong { font-size:14px; font-weight:600; display:block; }
.home-notebook-links small { display:block; font-size:12px; color:var(--home-muted); margin-top:5px; }
.home-notebook-links a:hover strong { text-decoration:underline; text-underline-offset:4px; }
.home-about { background:var(--home-panel); display:flex; align-items:center; gap:28px; padding:32px; border-radius:5px; scroll-margin-top:30px; }
.home-monogram { border:1px solid var(--home-line); border-radius:50%; width:76px; height:76px; display:grid; place-items:center; flex-shrink:0; font:italic 32px Georgia,serif; }
.home-about h2 { font-size:27px; }
.home-about p:last-child { color:var(--home-muted); font-size:13px; line-height:1.8; margin:12px 0 0; max-width:680px; }
.home-back { margin-left:auto; flex-shrink:0; font-size:11px; }
.home-page main>hr { border-color:var(--home-line); opacity:1; margin:38px 0 0; }
.home-page main>footer { color:var(--home-muted); font-size:11px; padding:24px 0!important; }
@media (max-width:1100px) { .home-hero { gap:35px; } .home-intro h1 { font-size:48px; } .home-page .navbar-brand { margin-right:12px; } .home-page .nav-link { font-size:12px; } }
@media (max-width:767px) { .home-page main.container,.home-page .navbar .container { padding-left:22px!important; padding-right:22px!important; } .home-hero { grid-template-columns:1fr; gap:30px; padding:40px 0; } .home-intro h1 { font-size:clamp(37px,8vw,54px); letter-spacing:-1.5px; } .home-photo { height:330px; border-top-right-radius:65px; } .home-description { font-size:15px; } .home-section-heading { display:block; } .home-section-note { display:none; } .home-destinations { grid-template-columns:1fr; } .home-destination+.home-destination { border-left:0; border-top:1px solid var(--home-line); } .home-card-top { margin-bottom:18px; } .home-destination p { margin-bottom:18px; } .home-more { grid-template-columns:1fr; gap:25px; } .home-about { flex-wrap:wrap; gap:18px; padding:25px; } .home-monogram { display:none; } .home-back { margin:0; } .home-content h2 { font-size:29px; } }
@media (prefers-reduced-motion:reduce) { .home-content a { transition:none; } }
