@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&family=Source+Serif+4:opsz,wght@8..60,600;8..60,700&display=swap");:root{--surface-page:#f9fbfc;--surface-card:#fff;--line-soft:#d7e4e7;--text-primary:#17363b;--text-secondary:#476267;--brand:#0f7f87;--brand-strong:#0b6f76;--accent:#5ba66c;--focus-ring:rgba(15,127,135,0.35);--radius-md:14px;--radius-lg:20px}*{box-sizing:border-box;margin:0;padding:0}body,html{min-height:100%}body{font-family:Plus Jakarta Sans,sans-serif;background:var(--surface-page);color:var(--text-primary);line-height:1.6;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:"Source Serif 4",serif;line-height:1.2}a{color:var(--brand);text-decoration:none}a:focus-visible,a:hover{color:var(--brand-strong)}img{width:100%;display:block}p{margin:0}hr{border:0;border-top:1px solid var(--line-soft)}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:999px;border:1px solid transparent;padding:.74rem 1.05rem;font-size:.82rem;font-weight:800;text-transform:uppercase;letter-spacing:.07em;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease}.btn:focus-visible,a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.btn-primary{color:#f3fdff;background:var(--brand);border-color:#0a6870;box-shadow:0 10px 16px rgba(15,127,135,.24)}.btn-primary:focus-visible,.btn-primary:hover{background:var(--brand-strong);transform:translateY(-1px)}.post-back-link{display:inline-flex;align-items:center;grid-gap:.38rem;gap:.38rem;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin-bottom:.7rem;color:#0f676f;font-size:.9rem;font-weight:700;line-height:1.2;border-bottom:1px solid rgba(15,103,111,.28);padding-bottom:.12rem}.post-back-link:before{content:"\2190";font-size:.92rem;line-height:1}.post-back-link:focus-visible,.post-back-link:hover{color:#0c5b62;border-color:rgba(12,91,98,.55)}.posts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));grid-gap:1rem;gap:1rem;margin-top:1.1rem}.card{background:var(--surface-card);border:1px solid rgba(18,87,93,.14);border-radius:var(--radius-lg);box-shadow:0 15px 28px rgba(19,84,90,.08)}.post-card{overflow:hidden;display:flex;flex-direction:column}.post-thumb{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:#edf4f5}.post-thumb-generated{--route-hue:185;background:radial-gradient(circle at 85% 15%,hsla(0,0%,100%,.24),transparent 42%),radial-gradient(circle at 18% 76%,hsla(0,0%,100%,.16),transparent 45%),linear-gradient(135deg,hsl(var(--route-hue),63%,44%),hsl(calc(var(--route-hue) + 34),66%,28%))}.post-thumb-generated:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,hsla(0,0%,100%,.08),transparent 50%),repeating-linear-gradient(-45deg,hsla(0,0%,100%,.05),hsla(0,0%,100%,.05) 2px,transparent 0,transparent 10px);mix-blend-mode:screen}.route-visual{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;justify-content:flex-end;grid-gap:.48rem;gap:.48rem;padding:.95rem;color:#f4feff}.route-kicker{border:1px solid hsla(0,0%,100%,.45);padding:.15rem .5rem;font-size:.63rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}.route-kicker,.route-pair{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;border-radius:999px}.route-pair{display:inline-flex;align-items:center;grid-gap:.4rem;gap:.4rem;padding:.22rem .54rem;background:rgba(9,25,28,.25);border:1px solid hsla(0,0%,100%,.28)}.route-flag{line-height:1;font-size:.95rem}.route-country{font-size:.8rem;letter-spacing:.04em}.route-country,.route-destination{text-transform:uppercase;font-weight:800}.route-destination{font-size:1.06rem;line-height:1.2;letter-spacing:.01em}.post-thumb img{transition:transform .26s ease}.post-thumb:focus-visible img,.post-thumb:hover img{transform:scale(1.03)}.post-thumb-generated .route-visual,.post-thumb-generated:after{transition:transform .26s ease}.post-thumb-generated:focus-visible .route-visual,.post-thumb-generated:hover .route-visual{transform:translateY(-2px)}.post-thumb-generated:focus-visible:after,.post-thumb-generated:hover:after{transform:scale(1.03)}.post-content{padding:.95rem;display:grid;grid-gap:.6rem;gap:.6rem}.post-date{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;padding:.22rem .55rem;border-radius:999px;background:#ecf6f6;color:#3f656b;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;font-weight:700}.post-title-preview{margin:0;color:#16383d;font-size:1.18rem;letter-spacing:-.01em}.post-excerpt{color:var(--text-secondary);line-height:1.7}.post-link{width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;margin-top:.2rem;color:#0f727a;font-weight:800;letter-spacing:.01em;border-bottom:1px solid rgba(15,114,122,.34);padding-bottom:.1rem}.post-link:focus-visible,.post-link:hover{border-color:#0f727a}.post-page-shell{width:min(860px,calc(100% - 2rem));margin:2rem auto 0}.card-page{padding:1rem}.post-header{margin-bottom:.8rem}.post-title{margin:0 0 .72rem;font-size:clamp(1.8rem,3.6vw,2.6rem);letter-spacing:-.02em;color:#13373c}.post-cover-link{display:block;margin-bottom:.8rem}.post-cover-media{display:block;position:relative;width:100%;aspect-ratio:16/9;border-radius:14px;overflow:hidden}.post-disclosure{font-size:.88rem;color:#60797d;line-height:1.6;margin-bottom:1rem}.post-body{color:#2f4c51}.post-body>div{display:grid;grid-gap:1rem;gap:1rem}.post-body p{line-height:1.95}.post-body h2,.post-body h3{color:#12363b;margin-top:.5rem}.post-body ol,.post-body ul{margin:.2rem 0 .2rem 1.2rem;color:#325156;display:grid;grid-gap:.45rem;gap:.45rem}.post-body li{line-height:1.65}.post-body pre{background:#f0f8f9;border:1px solid #d3e4e7;padding:.9rem;border-radius:12px;overflow-x:auto}.post-body blockquote{border-left:4px solid #5cae76;padding-left:.8rem;color:#416066;margin:.5rem 0}.post-cta-row{margin-top:1.3rem;display:flex;justify-content:flex-start}@media (max-width:980px){.posts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:720px){.posts{grid-template-columns:1fr}.post-page-shell{width:min(860px,calc(100% - 1.1rem));margin-top:1.3rem}.card-page{padding:.85rem;border-radius:16px}.post-title{font-size:clamp(1.45rem,7vw,2.2rem)}}