:root{--paper:#f5f4ef;--ink:#262e2d;--muted:#69716d;--line:#d9ddd5;--accent:#48635d}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button{font:inherit;color:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}.skip{position:absolute;top:-100px}.skip:focus{top:10px;background:white;padding:12px;z-index:10}header{margin:0 5%;padding:32px 0;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:25px}.brand{font-size:16px;letter-spacing:.025em}.brand span{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:8px}nav{display:flex;gap:28px;font-size:12px}nav a:first-child{border-bottom:1px solid var(--accent);padding-bottom:5px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:10px;line-height:1.7;color:var(--muted)}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em}h1{font-size:clamp(62px,8vw,124px);line-height:1.02;margin:24px 0}h1 em{font-weight:400;color:var(--accent)}.home-intro{padding:70px 10% 68px}.deck{font-family:Georgia,serif;font-size:20px;color:var(--muted);line-height:1.6}.featured{margin:0 5%;display:grid;grid-template-columns:1.55fr 1fr;gap:6%;align-items:center}.cover{display:block;position:relative;overflow:hidden}.cover img{display:block;width:100%;height:auto;transition:transform .5s}.cover:hover img{transform:scale(1.025)}.cover-link{position:absolute;bottom:20px;left:20px;padding:12px 16px;background:var(--paper);font-size:11px}.story-meta h2{font-size:48px;line-height:1.05;margin:24px 0}.story-meta>p:not(.eyebrow){font-family:Georgia,serif;color:var(--muted);line-height:1.8;max-width:350px;font-size:17px}.text-link{display:inline-block;font-size:12px;margin-top:22px;padding-bottom:8px;border-bottom:1px solid var(--accent)}.end-note{margin:100px 10%;padding-top:30px;border-top:1px solid var(--line)}.end-note>p:last-child{font-family:Georgia,serif;font-size:24px;line-height:1.6}.essay-title{padding:48px 10% 55px}.back{font-size:11px;display:block;margin-bottom:48px;color:var(--muted)}.essay-title h1{font-size:clamp(64px,9vw,132px)}.hero{margin:0 5%}.photo{display:block;background:none;border:0;padding:0;width:100%;cursor:zoom-in}.photo img{display:block;width:100%;height:auto}figcaption{display:flex;justify-content:space-between;margin-top:12px;font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.introduction{max-width:700px;padding:100px 24px;margin:auto}.introduction>p:not(.eyebrow){font-family:Georgia,serif;font-size:21px;line-height:1.85}.introduction>p:nth-child(3){color:var(--accent)}.essay-details{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:24px;font-size:10px;color:var(--muted)}.gallery{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:64px 24px;margin:0 10%}.frame{margin:0}.frame.wide{grid-column:1/-1;margin:16px -6.25%}.frame.square{max-width:520px;justify-self:center}.story-end{text-align:center;margin:110px 5%;padding-top:60px;border-top:1px solid var(--line)}.story-end h2{font-size:46px;margin:24px 0}footer{margin:0 5%;padding:28px 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;font-size:10px;color:var(--muted)}dialog{border:0;padding:25px;background:#171c1b;color:#fff;width:100vw;height:100dvh;max-width:none;max-height:none}dialog::backdrop{background:#171c1b}dialog[open]{display:grid;grid-template-columns:50px 1fr 50px;grid-template-rows:40px 1fr 35px;gap:15px}.viewer-bar{grid-column:1/-1;display:flex;justify-content:space-between;font-size:12px;align-items:center}dialog button{background:none;border:1px solid #65736f;padding:10px;cursor:pointer}#view-image{width:100%;height:100%;min-height:0;object-fit:contain}#prev,#next{align-self:center}#view-caption{grid-column:1/-1;text-align:center;font-size:11px;color:#bfc9c5}body:has(dialog[open]){overflow:hidden}@media(max-width:700px){header{padding:24px 0;flex-direction:column;align-items:flex-start;gap:24px}nav{gap:24px}.home-intro{padding:48px 6%}.featured{display:block}.story-meta{padding:28px 2% 0}.story-meta h2{font-size:42px}.end-note{margin:60px 7%}.essay-title{padding:35px 6% 40px}.back{margin-bottom:32px}.introduction{padding:60px 7%}.introduction>p:not(.eyebrow){font-size:19px}.essay-details{flex-direction:column;gap:12px}.gallery{margin:0 5%;display:block}.frame,.frame.wide,.frame.square{margin:0 0 40px;max-width:none}.story-end{margin:65px 5%}.story-end h2{font-size:36px}footer{flex-direction:column;padding:25px 0}dialog{padding:12px}dialog[open]{grid-template-columns:36px 1fr 36px;gap:7px}dialog button{padding:8px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cover img{transition:none}}

/* Photograph-first revision: white canvas, restrained sans serif typography. */
:root{--paper:#fff;--ink:#191919;--muted:#777;--line:#eee;--accent:#222}
body{font-family:Arial,Helvetica,sans-serif}header{max-width:1000px;margin:0 auto;padding:48px 16px 54px;display:flex;flex-direction:column;align-items:flex-start;gap:24px;border:0}.brand{font-size:30px;line-height:1.2;font-weight:700;letter-spacing:-.025em}nav{gap:30px;font-size:12px;flex-wrap:wrap;color:#999}nav a:first-child{border:0;padding:0;color:#222}h1,h2{font-family:Arial,Helvetica,sans-serif;font-weight:400;letter-spacing:-.025em}h1 em{font-style:normal;color:inherit}.story-index{max-width:1200px;margin:0 auto;padding:0 24px 70px}.story-row{display:grid;grid-template-columns:1.7fr 1fr;gap:54px;align-items:center;margin-bottom:58px}.story-row.reverse{grid-template-columns:1fr 1.7fr}.story-row.reverse .placeholder{order:2}.story-row.reverse .story-meta{order:1}.story-meta h1,.story-meta h2{font-size:32px;line-height:1.2;margin:0 0 18px}.story-meta>p:not(.eyebrow){font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.75;color:#555;max-width:340px;margin:0}.text-link{margin-top:22px;border:0;font-size:12px;color:#777}.cover-link{display:none}.placeholder{aspect-ratio:3/2;background:#f0f0f0;display:flex;align-items:center;justify-content:center}.placeholder span{font-size:10px;letter-spacing:.15em;color:#aaa}.pending{display:block;font-size:11px;color:#999;margin-top:20px}.essay-title{max-width:1000px;margin:auto;padding:12px 16px 40px}.essay-title h1{font-size:40px;margin:18px 0 0;line-height:1.2}.back{margin-bottom:30px}.hero{max-width:1200px;margin:0 auto;padding:0 24px}.introduction>p:not(.eyebrow){font-family:Arial,Helvetica,sans-serif;font-size:17px;line-height:1.9;color:#555}.introduction{padding-top:70px;padding-bottom:70px}.story-end h2{font-size:30px}footer{max-width:1200px;margin:0 auto;padding:28px 24px;color:#999}
@media(max-width:700px){header{padding:30px 24px 38px;gap:20px}.brand{font-size:25px}nav{gap:16px;font-size:10px}.story-index{padding:0 20px 35px}.story-row,.story-row.reverse{display:flex;flex-direction:column;align-items:stretch;gap:24px;margin-bottom:48px}.story-row.reverse .placeholder,.story-row.reverse .story-meta{order:initial}.story-meta h1,.story-meta h2{font-size:28px}.story-meta>p:not(.eyebrow){max-width:none}.essay-title{padding:0 24px 32px}.essay-title h1{font-size:34px}.hero{padding:0 20px}footer{margin:0 20px;padding:24px 0}}

.story-meta>a,.story-meta>a:hover,.story-meta>a:focus-visible{text-decoration:none}

/* Futura-like masthead and elegant serif story typography. */
body{font-family:'Jost',Arial,sans-serif}.brand,nav{font-family:'Jost',Arial,sans-serif}.brand{font-weight:700;letter-spacing:.01em}nav{font-weight:400;font-size:13px}
h1,h2,.story-meta>p:not(.eyebrow),.introduction>p:not(.eyebrow),.deck{font-family:'Cormorant Garamond',Georgia,serif}
.story-meta h1,.story-meta h2{font-size:40px;font-weight:500;letter-spacing:-.02em}.story-meta>p:not(.eyebrow){font-size:23px;line-height:1.5;color:#555}.introduction>p:not(.eyebrow){font-size:23px;line-height:1.65}.essay-title h1{font-size:48px;font-weight:500}
@media(max-width:700px){nav{font-size:11px}.story-meta h1,.story-meta h2{font-size:35px}.story-meta>p:not(.eyebrow),.introduction>p:not(.eyebrow){font-size:22px}.essay-title h1{font-size:40px}}

/* Masthead and navigation sizing and interaction. */
header .brand{font-size:36px;text-decoration:none}
header .brand:hover,header .brand:focus-visible{text-decoration:none}
header nav{font-size:15px}
header nav a{color:#999;text-decoration:none;transition:color 200ms ease}
header nav a:hover,header nav a:focus-visible,header nav a[aria-current="page"]{color:#000;text-decoration:none}
header nav a:first-child{color:#999}
header nav a:first-child:hover,header nav a:first-child:focus-visible,header nav a:first-child[aria-current="page"]{color:#000}

header .brand,header nav{font-family:'Plus Jakarta Sans',Arial,sans-serif}

header .brand{font-family:'Jost',Arial,sans-serif;font-weight:600}header nav{font-family:'Jost',Arial,sans-serif;font-weight:400}

.social-link{display:flex;justify-content:center;padding:65px 24px 45px}.social-link a{color:#999;line-height:0;transition:color 200ms ease}.social-link a:hover{color:#000;text-decoration:none}.scroll-top{position:fixed;right:30px;bottom:30px;z-index:20;width:64px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:rgba(242,242,242,.94);color:#aaa;transition:color 200ms ease,background 200ms ease}.scroll-top:hover{color:#666;background:#eee;text-decoration:none}body:has(dialog[open]) .scroll-top{display:none}@media(max-width:700px){.scroll-top{width:52px;height:52px;right:18px;bottom:18px}}

.social-link a,.social-link a:hover{color:#000}.social-link svg{display:block;width:80px;height:80px}

.social-link svg{width:42px;height:42px}

/* Final square photograph stands alone, centered. */
.gallery .frame:last-child.square{grid-column:1 / -1;width:min(100%,520px);max-width:520px;justify-self:center;margin:16px 0 0}
.gallery .frame:last-child.square .photo img{aspect-ratio:1 / 1;object-fit:contain}
@media(max-width:700px){.gallery .frame:last-child.square{margin:0 auto 40px}}

/* Equal-height, uncropped rows: column widths follow image aspect ratios. */
.gallery{display:flex;flex-direction:column;gap:64px}.gallery-row{display:grid;gap:24px;align-items:start;width:100%}.gallery-row .frame{width:100%;min-width:0;margin:0;max-width:none}.gallery-row .photo img{width:100%;height:auto;display:block}.gallery-row.solo-wide{display:block;width:112.5%;margin-left:-6.25%}.gallery-row.solo-square{display:flex;justify-content:center}.gallery .gallery-row.solo-square .frame.square{width:min(100%,520px);margin:0;max-width:520px}
@media(max-width:700px){.gallery{gap:40px}.gallery-row{display:flex;flex-direction:column;gap:40px}.gallery-row.solo-wide{width:100%;margin:0}.gallery-row.solo-square{align-items:center}}

dialog[open]{grid-template-rows:40px 1fr}

#prev,#next{border:0;padding:8px;display:flex;align-items:center;justify-content:center;color:#ccc;transition:color 200ms ease}#prev:hover,#next:hover{color:#fff}#prev svg,#next svg{display:block;flex-shrink:0}

#close{border:0;display:flex;align-items:center;justify-content:center;padding:8px;color:#ccc;transition:color 200ms ease}#close:hover{color:#fff}

/* Bring story heading closer to navigation and enlarge its location label. */
.essay-title .eyebrow{font-size:13px;letter-spacing:.12em}
body:has(.essay-title) header{padding-bottom:29px}
@media(max-width:700px){body:has(.essay-title) header{padding-bottom:13px}}

/* Larger final square photograph, constrained by the gallery width. */
.gallery .gallery-row.solo-square .frame.square{width:min(100%,720px);max-width:720px}

/* Image separates the site masthead from the story heading. */
.hero{max-width:1440px;width:94%;padding:0;margin:8px auto 0}.essay-title{max-width:700px;padding:46px 24px 0}.essay-title h1{margin-top:14px}.introduction{padding-top:20px}
@media(max-width:700px){.hero{width:calc(100% - 40px);margin-top:12px}.essay-title{padding:34px 7% 0}.introduction{padding-top:16px}}

/* Homepage photographs presented as lightly framed prints. */
.story-row{grid-template-columns:2fr 1fr;gap:40px}
.story-row.reverse{grid-template-columns:1fr 2fr}
.story-index .cover{padding:20px;border:1px solid #ccc;background:#fff}
.story-index .cover:hover img{transform:none}
.story-index .placeholder{padding:20px;border:1px solid #ccc;background:linear-gradient(#f0f0f0,#f0f0f0) content-box,#fff}
@media(max-width:700px){.story-index .cover,.story-index .placeholder{padding:12px}.story-row,.story-row.reverse{gap:24px}}


.story-row.reverse .cover{order:2}
@media(max-width:700px){.story-row.reverse .cover{order:initial}}

/* A standalone portrait should not inherit the extra-wide landscape layout. */
.gallery-row.solo-portrait{display:flex;justify-content:center;width:100%;margin:0}
.gallery .gallery-row.solo-portrait .frame{width:min(100%,520px);max-width:520px;margin:0}
@media(max-width:700px){.gallery-row.solo-portrait{align-items:center}}

/* Editorial rows: photographs centred at 80%, and tight 2x2 grids. */
.gallery-row.solo-large{display:block;width:80%;margin:0 auto}
.gallery-grid{display:flex;flex-direction:column;gap:24px}
@media(max-width:700px){.gallery-row.solo-large{width:100%}.gallery-grid{gap:40px}}

/* A quoted passage: same type as the introduction, in italic, over a large faint quote mark. */
.pull-quote{position:relative;margin:64px 0 0;padding:0 0 0 56px;border:0}
.pull-quote::before{content:"\201C";position:absolute;left:-22px;top:-96px;font-family:'Cormorant Garamond',Georgia,serif;font-size:380px;line-height:1;color:#000;opacity:.05;pointer-events:none}
.pull-quote p{position:relative;font-family:'Cormorant Garamond',Georgia,serif;font-style:italic;font-size:22px;line-height:1.65;color:#555;margin:0 0 1em}
.pull-quote footer{display:block;max-width:none;margin:0;padding:0;border:0;text-align:right;font-family:'Cormorant Garamond',Georgia,serif;font-size:21px;color:#555}
.pull-quote footer a{text-decoration:none;border:0}
.pull-quote footer a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.pull-quote{padding-left:32px}.pull-quote::before{font-size:200px;left:-12px;top:-48px}.pull-quote p{font-size:21px}}

/* Squares grouped in pairs, trios or grids share the row like any other photo. */
.gallery .gallery-row:not(.solo-square) .frame.square{grid-column:auto;width:100%;max-width:none;justify-self:stretch;margin:0}
.gallery .gallery-row:not(.solo-square) .frame.square .photo img{aspect-ratio:auto}

/* Links inside story introductions. */
.introduction>p a{border-bottom:1px solid #bbb}
.introduction>p a:hover{text-decoration:none;border-bottom-color:#555}

/* Homepage: covers bleed to the screen edge on their side; the text column keeps its width. */
@media(min-width:701px){
.story-index{max-width:none;padding:0 0 70px}
.story-row{grid-template-columns:minmax(0,1fr) 360px;gap:64px;padding-right:max(24px,calc((100vw - 1000px)/2 + 16px))}
.story-row.reverse{grid-template-columns:360px minmax(0,1fr);padding-right:0;padding-left:max(24px,calc((100vw - 1000px)/2 + 16px))}
.story-index .cover,.story-index .placeholder{padding:0;border:0;background:none}
.story-index .placeholder{background:#f0f0f0}
.story-meta>p:not(.eyebrow){max-width:360px}
}

/* Homepage mosaic: covers sit 5px apart, interlocking with the text blocks. */
@media(min-width:701px){.story-row{margin-bottom:5px}}
/* Each homepage story is a full-width band: cover on one side, text on light grey. */
@media(min-width:701px){.story-row{background:#ebe8e2;margin-bottom:10px}}

/* 5575 Miles: trip overview, day-by-day tiles, day pages. */
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.hero .placeholder{display:flex;aspect-ratio:2/1;width:100%}
.trip-intro{padding-top:70px}
.trip-intro>p.lead{font-family:'Jost',Arial,sans-serif;text-transform:uppercase;font-size:21px;line-height:1.55;letter-spacing:.02em;color:#222}
.trip-map{display:block;max-width:1200px;margin:0 auto 40px;padding:0 24px}
.trip-map img{display:block;width:100%;height:auto;transition:opacity .2s}
.trip-map:hover img{opacity:.85}
.day-grid{max-width:1402px;margin:0 auto;padding:0 24px 40px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:44px}
.day-tile{position:relative;display:block;aspect-ratio:var(--tile-ar,422/402);border-radius:28px;overflow:hidden;background:#ebe8e2;text-decoration:none}
.day-tile:hover{text-decoration:none}
.day-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus,50% 50%)}
.day-tile::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,.45);opacity:0;transition:opacity .25s}
.day-title{position:absolute;left:28px;right:28px;bottom:26px;z-index:1;font-family:'Jost',Arial,sans-serif;font-weight:600;font-size:26px;line-height:1.15;text-transform:uppercase;color:#fff;opacity:0;transition:opacity .25s}
.day-tile:hover::after,.day-tile:focus-visible::after,.day-tile:hover .day-title,.day-tile:focus-visible .day-title{opacity:1}
.day-tile.day-soon::after{display:none}
.day-tile.day-soon .day-title{opacity:1;color:#8a857c;font-size:20px}
.gallery-text{max-width:700px;width:100%;margin:0 auto;padding:0 24px;box-sizing:border-box}
.gallery-text p{font-family:'Cormorant Garamond',Georgia,serif;font-size:22px;line-height:1.65;color:#555;margin:0 0 1em}
.gallery-text p:last-child{margin-bottom:0}
.gallery-text a,.trip-intro a{border-bottom:1px solid #bbb}
.eyebrow a{border-bottom:1px solid #ccc}
.trip-nav{max-width:700px;margin:90px auto 0;padding:0 24px;display:flex;justify-content:space-between;gap:24px;font-family:'Jost',Arial,sans-serif;font-size:14px;text-transform:uppercase;letter-spacing:.04em}
@media(max-width:900px){.day-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}}
@media(max-width:700px){.day-grid{grid-template-columns:1fr}.day-title{font-size:22px}.trip-nav{flex-direction:column}.gallery-text p{font-size:21px}}
@media(hover:none){.day-title{opacity:1}.day-tile::after{opacity:1;background:linear-gradient(transparent 50%,rgba(0,0,0,.5))}}
.cover .placeholder,.cover .placeholder span{text-decoration:none}
.story-index .cover:hover .placeholder span{text-decoration:none}
.trip-nav a,.trip-nav a:first-child{color:#222;border:0;padding:0}
.gallery-video{width:80%;margin:0 auto;aspect-ratio:16/9}
.gallery-video iframe{display:block;width:100%;height:100%;border:0}
@media(max-width:700px){.gallery-video{width:100%}}
/* Back to / Continue to: always side by side, long titles wrap within each half. */
.trip-nav{flex-wrap:nowrap;align-items:flex-start}
.trip-nav a{flex:0 1 45%;line-height:1.5}
.trip-nav a:last-child:not(:first-child){text-align:right}
@media(max-width:700px){.trip-nav{flex-direction:row;font-size:12px;gap:20px}}
/* A photograph with text beside it. */
.gallery-aside{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;width:80%;margin:0 auto}
.gallery-aside .frame{margin:0;width:100%}
.gallery-aside .gallery-text{padding:0;max-width:none}
@media(max-width:700px){.gallery-aside{grid-template-columns:1fr;gap:28px;width:100%}}
.hero>img{display:block;width:100%;height:auto}
.hero-pair{display:grid;gap:24px;align-items:start}.hero-pair>img{display:block;width:100%;height:auto}
@media(max-width:700px){.hero-pair{gap:10px}}

/* Home page story titles: much larger, same typeface. */
.story-meta h1,.story-meta h2{font-size:clamp(48px,4.6vw,68px);line-height:1.05;letter-spacing:-.03em}
@media(max-width:700px){.story-meta h1,.story-meta h2{font-size:46px}}

/* Trip prelude: the trip introduction that opens the first day (Fourteen Days in Japan). */
.trip-prelude{padding-top:70px;padding-bottom:40px}.trip-prelude h2{font-size:clamp(44px,5vw,64px);line-height:1.05;margin:0 0 32px}

/* An explicitly placed square (e.g. a Hasselblad frame) stands alone, centred, at up to 840px as on the old site. */
.gallery-row.solo-square-large{display:flex;justify-content:center}.gallery .gallery-row.solo-square-large .frame{width:min(100%,840px);max-width:840px;margin:0}
.text-page{padding-bottom:20px}.text-page .essay-title{padding-bottom:30px}.page-section{max-width:700px;margin:0 auto;padding:0 24px 40px}.page-section h2{font-size:34px;font-weight:500;margin:40px 0 18px}.page-section p{font-family:'Cormorant Garamond',Georgia,serif;font-size:23px;line-height:1.65;color:#555;margin:0 0 1em}.page-section a{border-bottom:1px solid #bbb}
.page-cards{max-width:700px;margin:30px auto 0;padding:0 24px;display:grid;gap:16px}.page-cards a,.page-cards a:first-child{display:flex;justify-content:space-between;align-items:center;padding:28px 30px;border:1px solid #ddd;color:#222;font-family:'Cormorant Garamond',Georgia,serif;font-size:32px;font-weight:500;text-decoration:none;transition:background .2s}.page-cards a:hover{background:#efeee8}
@media(max-width:700px){.page-section{padding:0 7% 30px}.page-section p{font-size:21px}.page-cards{padding:0 7%}.page-cards a,.page-cards a:first-child{font-size:26px;padding:22px}}
header nav a,header nav a:first-child{color:#999;border:0;padding:0}header nav a[aria-current]{color:#222}
.gallery-heading{max-width:700px;width:100%;margin:30px auto -20px;padding:0 24px;box-sizing:border-box;font-family:'Cormorant Garamond',Georgia,serif;font-size:34px;font-weight:500;color:#222}
.essay-title+.gallery{margin-top:34px}
/* Long text beside a photo: start together, and keep the photo in view while reading. */
.gallery-aside:has(.gallery-text p:nth-child(5)){align-items:start}
@media(min-width:701px){.gallery-aside:has(.gallery-text p:nth-child(5)) .frame{position:sticky;top:24px}}
.page-cards{max-width:1000px;gap:28px}
.page-cards a.has-image{position:relative;display:block;padding:0;border:0;aspect-ratio:3/2;overflow:hidden;background:#111}
.page-cards a.has-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:var(--focus);transition:transform .6s}
.page-cards a.has-image::after{content:"";position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.05),rgba(0,0,0,.35))}
.page-cards a.has-image:hover{background:#111}.page-cards a.has-image:hover img{transform:scale(1.025)}
.page-cards .card-title{position:absolute;inset:0;z-index:1;display:flex;align-items:center;justify-content:center;text-align:center;padding:0 10%;color:#fff;font-family:'Jost',Arial,sans-serif;font-weight:600;font-size:clamp(30px,5vw,58px);line-height:1.1;text-shadow:0 2px 18px rgba(0,0,0,.45)}
.page-after{margin-top:70px}.page-after h2{font-family:'Jost',Arial,sans-serif;font-size:18px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.page-badge{display:block;margin:34px auto 0;width:174px;height:auto}
@media(max-width:700px){.page-cards a.has-image{aspect-ratio:4/3}}
.page-cards a.has-image:has(.sr-only)::after{display:none}
