/* Three complete links lead to the details of each format. */
.home-page .home-formats{margin-top:0}
.home-page .intro{display:block;padding:0;max-width:780px}
.home-page .intro h1{font-size:clamp(2rem,3.6vw,3.5rem);line-height:1.12;margin:12px 0 16px;letter-spacing:-.04em}
.home-page .intro-description{max-width:650px;font-size:1rem;line-height:1.6}
.home-format-grid{gap:16px;margin-top:28px}
.home-format-grid article{padding:0;background:var(--paper);border:1px solid var(--line);border-radius:10px;overflow:hidden}
.home-format-grid .home-format-paid{background:#f0f4e9;border-color:#87a38b}
.home-format-link{display:grid;grid-template-columns:minmax(0,1fr) 108px;flex:1;color:var(--ink);text-decoration:none;min-height:208px}
.home-format-copy{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:22px 18px;min-width:0}
.home-format-grid .eyebrow{font-size:.625rem;line-height:1.5;letter-spacing:.065em;color:var(--muted);margin:0}
.home-format-grid h2{font-size:1.25rem;font-weight:600;line-height:1.25;letter-spacing:-.025em;color:var(--green-dark);margin:0}
.home-format-grid p:not(.eyebrow){font-size:.8125rem;line-height:1.5;color:var(--muted);margin:0}
.home-format-next{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding-top:8px;margin-top:auto;font-size:.75rem;font-weight:600;line-height:1.5;color:var(--green-dark)}
.home-format-image{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 50%;border-left:1px solid var(--line)}
.home-format-link:hover .home-format-next{text-decoration:underline;text-underline-offset:4px}
.home-format-link:focus-visible{outline:3px solid var(--red);outline-offset:-4px}
.home-format-grid article:focus-within{border-color:var(--red)}
.home-image-credit{font-size:.6875rem;color:var(--muted);line-height:1.5;margin-top:12px}
.home-shortcuts{display:flex;flex-wrap:wrap;gap:0 28px;padding-top:12px;margin-top:12px}
.home-shortcuts a{display:inline-flex;align-items:center;min-height:44px;font-size:.8125rem;color:var(--green-dark);text-underline-offset:4px}
.home-section,.home-reading{margin-top:56px}
.home-page .section-heading{margin-bottom:20px}
.home-page .section-heading h2,.home-page .practical-intro h2{font-size:clamp(1.5rem,2.6vw,2rem);line-height:1.2}
.home-page .section-heading .eyebrow,.home-page .practical-intro .eyebrow{font-size:.6875rem;margin-bottom:8px}
.home-page .duration-links{margin-top:0;gap:14px}
.home-page .duration-links a{padding:22px;border-top:2px solid var(--green);gap:10px}
.home-page .duration-links strong{font-size:1.5rem}
.home-page .duration-links a>span:not(.duration-action){font-size:.875rem;line-height:1.5;margin:0}
.home-page .duration-links .duration-action{font-size:.8125rem;padding-top:12px;margin-top:auto}
.home-bundle-link{display:inline-flex;align-items:center;min-height:44px;margin-top:14px;color:var(--green-dark);font-size:.8125rem;line-height:1.6;text-underline-offset:4px}
.home-booking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.home-booking-card{display:flex;flex-direction:column;align-items:flex-start;padding:22px;border:1px solid var(--line);border-radius:8px;min-width:0;background:white}
.home-booking-card .eyebrow{font-size:.625rem;letter-spacing:.05em;line-height:1.5;color:var(--muted);margin-bottom:12px}
.home-booking-card h3{font-size:1.125rem;line-height:1.35;letter-spacing:-.02em;margin-bottom:10px}
.home-booking-card>p:not(.eyebrow){font-size:.875rem;line-height:1.6;color:var(--muted);margin-bottom:12px}
.home-booking-card>a{display:inline-flex;align-items:center;gap:12px;min-height:44px;margin-top:auto;color:var(--green-dark);font-size:.8125rem;font-weight:500;text-underline-offset:4px}
.home-booking-note,.home-page .partner-note{font-size:.75rem;line-height:1.6;color:var(--muted);margin-top:12px}
.home-personal{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:24px 0;margin-top:28px;border-block:1px solid var(--line)}
.home-personal h2{font-size:1.25rem;line-height:1.35;margin-bottom:8px;letter-spacing:-.02em}
.home-personal p{font-size:.875rem;line-height:1.6;color:var(--muted);max-width:720px}
.home-personal>a{flex-shrink:0;min-height:44px;font-size:.875rem}
.home-reading-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.home-reading-link{display:flex;flex-direction:column;color:var(--ink);text-decoration:none;min-width:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:white}
.home-reading-link img{display:block;width:100%;height:160px;object-fit:cover}
.home-reading-copy{display:flex;flex-direction:column;gap:8px;padding:20px}
.home-reading-copy strong{font-size:1.125rem;font-weight:600;line-height:1.35;letter-spacing:-.02em}
.home-reading-copy>span{font-size:.8125rem;color:var(--muted);line-height:1.5}
.home-reading-link:hover strong{text-decoration:underline;text-underline-offset:4px}
.home-place-links{display:flex;justify-content:flex-start;flex-wrap:wrap;gap:0 20px;margin-top:16px}
.home-place-links>span{flex-basis:100%;font-size:.75rem;line-height:1.6;color:var(--muted)}
.home-place-links a{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:.8125rem;color:var(--green-dark);text-underline-offset:4px}
.home-page .practical-section{margin:48px 0 0;gap:36px}
.home-page .practical-list summary{font-size:.9375rem;padding:18px 0;overflow-wrap:anywhere}
.home-page .practical-list summary>span{flex-shrink:0}
.home-page .practical-list details[open] summary>span{transform:none;font-size:0}
.home-page .practical-list details[open] summary>span::after{content:"−";font-size:1.5rem;line-height:1}
.home-page .practical-list details>p{font-size:.9375rem}
.home-page .partner-invitation{background:none;border-inline:0;border-radius:0;padding:24px 0;margin:40px 0}
.home-page .partner-invitation .primary-cta{white-space:normal}
.home-page a:focus-visible{outline:3px solid var(--red);outline-offset:4px}
.home-page .home-format-link:focus-visible{outline-offset:-4px}
@media(min-width:801px) and (max-width:1150px){
 .home-format-link{grid-template-columns:minmax(0,1fr) 80px;min-height:240px}
 .home-format-copy{padding:18px 14px}
 .home-format-grid h2{font-size:1.125rem}
}
@media(max-width:800px){
 .home-format-grid{grid-template-columns:1fr;gap:12px;margin-top:24px}
 .home-format-link{grid-template-columns:minmax(0,1fr) 120px;min-height:144px}
 .home-format-copy{padding:18px 20px;gap:8px}
 .home-format-grid h2{font-size:1.1875rem}
 .home-section,.home-reading{margin-top:40px}
 .home-booking-grid{grid-template-columns:1fr}
 .home-booking-card{padding:20px}
 .home-personal{align-items:flex-start;flex-direction:column;gap:12px}
 .home-reading-grid{grid-template-columns:1fr;gap:12px}
 .home-reading-link{display:grid;grid-template-columns:minmax(0,1fr) 120px}
 .home-reading-link img{grid-column:2;grid-row:1;height:100%;min-height:132px}
 .home-reading-copy{grid-column:1;grid-row:1;padding:20px}
 .home-page .practical-section{grid-template-columns:1fr;gap:20px}
}
@media(max-width:600px){
 .home-page .intro h1{font-size:2rem;margin:10px 0 12px}
 .home-page .intro-description{font-size:.875rem}
 .home-format-link{grid-template-columns:minmax(0,1fr) 96px;min-height:144px}
 .home-format-copy{padding:16px 14px}
 .home-format-grid h2{font-size:1.0625rem}
 .home-format-grid p:not(.eyebrow){font-size:.75rem}
 .home-format-next{font-size:.6875rem;gap:8px;padding-top:4px}
 .home-shortcuts{display:grid;gap:0;margin-top:8px;padding-top:4px}
 .home-page .duration-links a{padding:18px 20px;gap:8px}
 .home-page .duration-links .duration-action{padding-top:10px}
 .home-reading-link{grid-template-columns:minmax(0,1fr) 96px}
 .home-reading-copy{padding:16px}
 .home-reading-copy strong{font-size:1rem}
 .home-page .section-heading{gap:12px;flex-wrap:wrap}
 .home-page .partner-invitation{margin:32px 0}
}
@media(forced-colors:active){.home-format-grid article,.home-format-grid .home-format-paid,.home-reading-link{border-color:CanvasText}}
