.blog-page{display:flex;flex-direction:column;flex:1 1;background:var(--bg);overflow-x:hidden}@media (min-width:760px){.shell:has(.blog-page){max-width:1080px}}.blog-wrap{width:100%;max-width:1000px;margin:0 auto;padding:0 18px 32px}.blog-hero{background:#fff;border-bottom:1px solid var(--line);padding:22px 18px 18px}.blog-hero-inner{width:100%;max-width:1000px;margin:0 auto}.blog-hero h1{margin:0 0 8px;font-size:24px;line-height:1.5;font-weight:800;color:var(--ink);letter-spacing:-.3px}.blog-hero p{margin:0;font-size:15px;line-height:1.8;color:var(--muted)}.blog-eyebrow{display:inline-flex;align-items:center;gap:6px;font-size:12.5px;font-weight:700;color:var(--primary);margin-bottom:6px}.blog-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}.blog-chips a{display:inline-flex;align-items:center;gap:6px;min-height:44px;padding:10px 15px;border-radius:0;border:1px solid var(--line);background:#fff;color:var(--muted);font-size:13.5px;font-weight:500;white-space:nowrap}.blog-chips a.on,.blog-chips a:hover{border-color:var(--tint-strong);color:var(--primary-dark)}.blog-chips a.on{background:var(--tint);font-weight:700}.blog-chips a .count{font-size:12px;color:var(--faint)}.post-grid{display:grid;grid-template-columns:1fr;grid-gap:14px;gap:14px;margin-top:16px}@media (min-width:640px){.post-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}@media (min-width:980px){.post-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}.post-card{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);border-radius:0;box-shadow:var(--shadow-card);overflow:hidden}.post-card,.post-card h2 a,.post-card h3 a{color:inherit}.post-card h2 a:after,.post-card h3 a:after{content:"";position:absolute;inset:0}.post-card h2 a:focus-visible,.post-card h3 a:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.post-card:hover{border-color:var(--tint-strong);color:inherit}.post-cover{display:block;width:100%;height:168px;object-fit:cover;background:var(--line-soft)}.post-cover-empty{display:flex;align-items:center;justify-content:center;width:100%;height:168px;background:linear-gradient(135deg,var(--tint) 0,var(--tint-strong) 100%);color:var(--primary-dark);font-size:19px;font-weight:800;letter-spacing:-.4px}.post-card-body{display:flex;flex-direction:column;gap:8px;padding:14px 15px 15px;flex:1 1}.post-card h2,.post-card h3{font-size:15.5px;line-height:1.75;font-weight:700;color:var(--ink)}.post-card h2,.post-card h3,.post-excerpt{margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.post-excerpt{font-size:13.5px;line-height:1.85;color:var(--muted)}.post-meta{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:auto;padding-top:4px;font-size:12px;color:var(--faint)}.post-meta .dot:before{content:"·";margin:0 2px}.post-card.featured{grid-column:1/-1}@media (min-width:640px){.post-card.featured{flex-direction:row}.post-card.featured .post-cover,.post-card.featured .post-cover-empty{width:46%;height:auto;min-height:230px;flex:0 0 46%}.post-card.featured .post-card-body{padding:20px 22px;justify-content:center;gap:10px}.post-card.featured h2{font-size:20px;-webkit-line-clamp:3}.post-card.featured .post-excerpt{font-size:14.5px}}.blog-pager{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:22px}.blog-pager a,.blog-pager span{display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;padding:10px 16px;border-radius:0;font-size:13.5px;font-weight:700}.blog-pager a{background:#fff;border:1px solid var(--line);color:var(--primary)}.blog-pager a:hover{border-color:var(--tint-strong)}.blog-pager span{color:var(--muted);font-weight:500}.breadcrumb{padding:12px 0 2px;font-size:12.5px;color:var(--faint)}.breadcrumb ol{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin:0;padding:0;list-style:none}.breadcrumb li{gap:4px;max-width:100%}.breadcrumb a,.breadcrumb li{display:inline-flex;align-items:center}.breadcrumb a{justify-content:center;min-height:44px;min-width:44px;color:var(--muted);padding:4px 6px;margin-inline:-6px}.breadcrumb a:hover{color:var(--primary)}.breadcrumb li+li:before{content:"›";color:var(--faint-2);-webkit-margin-end:2px;margin-inline-end:2px}.breadcrumb .current{color:var(--ink);font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:60vw}.post-article{background:#fff;border:1px solid var(--line);border-radius:0;box-shadow:var(--shadow-card);padding:18px 16px 22px;margin-top:10px}@media (min-width:760px){.post-article{padding:30px 34px 34px}}.post-article>h1{margin:0 0 12px;font-size:23px;line-height:1.65;font-weight:800;color:var(--ink);letter-spacing:-.3px;overflow-wrap:anywhere}@media (min-width:760px){.post-article>h1{font-size:29px}}.byline{display:flex;gap:8px;padding-bottom:14px;border-bottom:1px solid var(--line-soft);font-size:12.5px;color:var(--muted)}.byline,.byline .who{flex-wrap:wrap;align-items:center}.byline .who{display:inline-flex;color:var(--ink);font-weight:700}.byline a{display:inline-flex;align-items:center;min-height:44px}.byline .sep:before{content:"·"}.post-hero-img{display:block;width:100%;height:auto;max-height:420px;object-fit:cover;border-radius:0;margin:16px 0 4px;background:var(--line-soft)}.toc{margin:18px 0 6px;background:var(--bg);border:1px solid var(--line);border-radius:0;padding:14px 16px}.toc h2{margin:0 0 6px;font-size:13.5px;font-weight:700;color:var(--ink)}.toc ol{margin:0;padding:0;list-style:none;counter-reset:toc}.toc li{counter-increment:toc}.toc li.lvl-3{-webkit-padding-start:16px;padding-inline-start:16px}.toc a{display:flex;align-items:center;gap:8px;min-height:44px;padding:6px 0;font-size:13.5px;line-height:1.7;color:var(--primary);overflow-wrap:anywhere}.toc a:before{content:counter(toc) ".";color:var(--faint);font-size:12px;flex:0 0 auto}.post-body{max-width:72ch;margin-top:14px;font-size:16px;line-height:1.9;color:var(--ink);overflow-wrap:anywhere}.post-body p{margin:0 0 16px}.post-body h2{margin:30px 0 10px;font-size:19px;font-weight:800}.post-body h2,.post-body h3{line-height:1.7;color:var(--ink);scroll-margin-top:16px}.post-body h3{margin:22px 0 8px;font-size:16.5px;font-weight:700}.post-body ol,.post-body ul{margin:0 0 16px;-webkit-padding-start:22px;padding-inline-start:22px}.post-body li{margin-bottom:8px}.post-body blockquote{margin:18px 0;padding:12px 16px;-webkit-border-start:3px solid var(--primary);border-inline-start:3px solid var(--primary);background:var(--tint);border-radius:0;color:var(--primary-dark);font-size:15px}.post-body blockquote p:last-child{margin-bottom:0}.post-body code{unicode-bidi:embed;padding:1px 6px;font-size:.9em;overflow-wrap:anywhere}.post-body code,.post-body pre{direction:ltr;background:var(--gray-bg);border-radius:0}.post-body pre{padding:12px 14px;overflow-x:auto;margin:0 0 16px}.post-body img{display:block;max-width:100%;height:auto;border-radius:0;margin:16px 0}.post-body a{color:var(--primary);text-decoration:underline;text-underline-offset:3px}.post-body table{width:100%;border-collapse:collapse;font-size:14px}.post-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px;padding-top:16px;border-top:1px solid var(--line-soft)}.post-tags a{display:inline-flex;align-items:center;min-height:44px;padding:6px 12px;border-radius:0;background:var(--bg);border:1px solid var(--line);color:var(--muted);font-size:12.5px}.faq{margin-top:24px}.faq h2{margin:0 0 10px;font-size:17px;font-weight:800;color:var(--ink)}.faq details{background:#fff;border:1px solid var(--line);border-radius:0;margin-bottom:10px;overflow:hidden}.faq details[open]{border-color:var(--tint-strong)}.faq summary{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:48px;padding:12px 15px;font-size:14.5px;font-weight:700;color:var(--ink);cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";flex:0 0 auto;font-size:18px;font-weight:700;color:var(--primary)}.faq details[open] summary:after{content:"−"}.faq summary:focus-visible{outline:2px solid var(--primary);outline-offset:-2px}.faq .answer{padding:0 15px 14px;font-size:14.5px;line-height:1.9;color:var(--muted)}.booking-card{margin-top:24px;background:var(--tint);border:1px solid var(--tint-strong);border-radius:0;padding:16px}.booking-card h2{margin:0 0 4px;font-size:16.5px;font-weight:800;color:var(--primary-dark)}.booking-card .lead{margin:0 0 12px;font-size:13px;color:var(--primary-dark);opacity:.85}.booking-list{display:grid;grid-template-columns:1fr;grid-gap:10px;gap:10px}@media (min-width:720px){.booking-list{grid-template-columns:repeat(2,minmax(0,1fr))}}.booking-item{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:64px;background:#fff;border:1px solid var(--line);border-radius:0;padding:12px 14px;color:inherit}.booking-item:hover{border-color:var(--primary);color:inherit}.booking-item .info{display:flex;flex-direction:column;gap:3px;min-width:0}.booking-item .name{font-size:14px;font-weight:700;color:var(--ink);overflow-wrap:anywhere}.booking-item .where{font-size:12px;color:var(--faint);overflow-wrap:anywhere}.booking-item .price{flex:0 0 auto;text-align:center;font-size:13.5px;font-weight:800;color:var(--primary);white-space:nowrap}.booking-item .price small{display:block;font-size:11px;font-weight:500;color:var(--faint)}.author-box{display:flex;align-items:flex-start;gap:12px;margin-top:24px;background:#fff;border:1px solid var(--line);border-radius:0;box-shadow:var(--shadow-card);padding:16px}.author-avatar,.author-avatar-empty{flex:0 0 auto;width:56px;height:56px;border-radius:0;object-fit:cover}.author-avatar-empty{display:flex;align-items:center;justify-content:center;background:var(--tint);color:var(--primary-dark);font-size:20px;font-weight:800}.author-box .name{font-size:15px;font-weight:700;color:var(--ink)}.author-box .name a{display:inline-flex;align-items:center;min-height:44px}.author-box .role{font-size:12.5px;color:var(--faint);margin-top:2px}.author-box .bio{margin:8px 0 0;font-size:13.5px;line-height:1.85;color:var(--muted)}.author-box .links{display:flex;flex-wrap:wrap;gap:12px;margin-top:8px}.author-box .links a{display:inline-flex;align-items:center;min-height:44px;font-size:13px;font-weight:700}.archive-head{display:flex;align-items:flex-start;gap:14px}.blog-section{margin-top:26px}.blog-section>h2{margin:0;font-size:16px;font-weight:800;color:var(--ink)}.blog-empty{display:flex;flex-direction:column;align-items:center;gap:8px;margin-top:18px;padding:36px 24px;background:#fff;border:1px solid var(--line);border-radius:0;text-align:center;color:var(--muted);font-size:13.5px}.blog-empty b{color:var(--ink);font-size:14.5px}.blog-back{display:inline-flex;align-items:center;gap:6px;min-height:44px;font-size:13.5px;font-weight:700;color:var(--primary)}