:root{--paper:#fdfdfb;--paper-2:#f6f5f0;--ink:#2b2b29;--muted:#6f6c66;--line:#e4e2d8;--brand:#ef313b;--brand-ink:#d21f29;--accent:var(--brand);--accent-deep:var(--brand-ink);--serif:"Iowan Old Style", "Palatino Linotype", Palatino, "Book Antiqua", Georgia, serif;--sans:system-ui, -apple-system, "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif;--shell:80rem;--measure:40rem;--pad:clamp(1.25rem, 5vw, 4rem);font-family:var(--sans);color-scheme:light}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--paper:#1a1a19;--paper-2:#232220;--ink:#ece9e2;--muted:#a6a29a;--line:#38362f;--brand:#ff6b63;--brand-ink:#ff6b63;color-scheme:dark}.btn-primary,.btn-primary:hover,.btn:hover{color:#1a1a19}.site-header .brand{background:#fdfdfb;border-radius:3px;padding:.3rem .5rem}}*{box-sizing:border-box}body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.65}::selection{background:var(--accent);color:var(--paper)}img{max-width:100%;height:auto;display:block}h1,h2,h3{font-family:var(--serif);color:var(--ink);font-weight:600;line-height:1.2}h1{letter-spacing:-.01em;text-wrap:balance;margin:0 0 .6rem;font-size:clamp(2.1rem,5.5vw,3rem)}h2{margin:0 0 .5rem;font-size:clamp(1.35rem,3vw,1.6rem)}h3{margin:0 0 .25rem;font-size:1.1rem}p{margin:0 0 1rem}a{color:var(--accent);text-underline-offset:2px;text-decoration-thickness:1px}a:hover{color:var(--accent-deep)}.eyebrow{font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin:0 0 .9rem;font-size:.72rem;font-weight:600}.lead{margin:0 0 .45rem;font-size:1.2rem}.j-intro{color:var(--muted);margin:.6rem 0 0}.lead-benefit{font-family:var(--serif);color:var(--accent);font-size:1.2rem;font-style:italic}.meta{color:var(--muted);margin:.2rem 0 .6rem;font-size:.95rem}.note,.trust{color:var(--muted);font-size:.9rem}main{max-width:var(--shell);padding:3rem var(--pad) 5rem;margin:0 auto}main.narrow{max-width:48rem}main :is(p,h2,h3,.eyebrow,.link-list,dl):not(.hero *):not(.card *):not(.lead-wide){max-width:var(--measure)}main.narrow :is(p,h2,h3){max-width:none}.site-header{max-width:var(--shell);padding:1.25rem var(--pad);border-bottom:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:.5rem 2rem;margin:0 auto;display:flex}.site-header .brand{flex:none;display:inline-flex}.site-header .brand img{width:auto;height:2.9rem}.site-header nav{flex-wrap:wrap;align-items:baseline;gap:.35rem 1.1rem;display:flex}.site-header nav a{color:var(--muted);font-size:.92rem;text-decoration:none}.site-header nav a:hover{color:var(--ink)}.site-header nav a[aria-current=page]{color:var(--ink);font-weight:600}@media (width>=46rem){.site-header{flex-wrap:nowrap}.site-header nav{flex:1}.site-header nav .lang{margin-left:auto}}@media (width<=45.99rem){.site-header{display:block}.site-header .brand{margin-bottom:.7rem;display:block}}.site-footer{max-width:var(--shell);padding:1.5rem var(--pad) 2.5rem;border-top:1px solid var(--line);color:var(--muted);margin:4rem auto 0;font-size:.88rem}.site-footer a{color:var(--muted)}.site-footer a:hover{color:var(--ink)}.site-footer p{margin:0 0 .4rem}.footer-nav{flex-wrap:wrap;gap:.35rem 1.1rem;display:flex}section{margin:0 0 3rem}section+section{border-top:1px solid var(--line);padding-top:3rem}.hero{margin:1rem 0 4rem}.hero h1{max-width:16ch}.hero-text{max-width:34rem}.hero-figure{margin:2rem 0 0}.hero-figure img{aspect-ratio:16/9;object-fit:cover;border:1px solid var(--line);border-radius:3px;width:100%}@media (width>=60rem){.hero{grid-template-columns:minmax(0,27rem) 1fr;align-items:center;gap:clamp(2rem,6vw,5rem);margin-block:2rem 5rem;display:grid}.hero-figure{margin:0}.hero-figure img{aspect-ratio:5/6}}.cta-row{flex-wrap:wrap;gap:.8rem;margin:1.5rem 0 1rem;display:flex}.btn{font:inherit;cursor:pointer;-webkit-appearance:none;appearance:none;border:1px solid var(--accent);color:var(--brand-ink);border-color:var(--brand-ink);background:0 0;border-radius:2px;align-self:start;padding:.62rem 1.15rem;font-weight:600;text-decoration:none;transition:background-color .15s,color .15s;display:inline-block}.btn:hover{background:var(--brand-ink);color:#fff}.btn-primary{background:var(--brand-ink);border-color:var(--brand-ink);color:#fff}.btn-primary:hover{background:var(--ink);border-color:var(--ink);color:#fff}.trust{flex-wrap:wrap;align-items:baseline;gap:.15rem .5rem;display:flex}.trust .star{color:var(--brand)}.cards{align-items:stretch;gap:1.25rem;margin:0;padding:0;list-style:none;display:grid}@media (width>=40rem){.cards{grid-template-columns:repeat(2,1fr)}}@media (width>=60rem){.cards{grid-template-columns:repeat(3,1fr);gap:1.5rem}}.card{background:var(--paper-2);border:1px solid var(--line);border-radius:3px;flex-direction:column;padding:1.1rem 1.15rem 1.25rem;display:flex}.card h2,.card h3{text-wrap:balance;font-size:1.05rem;line-height:1.3}.card h2 a,.card h3 a{color:var(--ink);text-decoration:none}.card h2 a:hover,.card h3 a:hover{color:var(--brand)}.card p{margin-bottom:.6rem}.card p:last-child{margin-bottom:0}.card .card-cta{margin-top:auto;padding-top:.5rem}.card--photo{background:var(--paper);padding:0;overflow:hidden}.card-photo{display:block}.card-photo img{aspect-ratio:3/2;object-fit:cover;width:100%}.card--photo .card-body{flex-direction:column;flex:1;padding:1rem 1.1rem 1.2rem;display:flex}.sister{border-top:1px solid var(--line);padding-top:2.5rem}.sister .card--photo{max-width:34rem}.sister .card-body h2{font-size:1.15rem}.prop-hero{max-width:none;margin:1.25rem 0 1.5rem}.prop-hero img{aspect-ratio:3/2;object-fit:cover;border:1px solid var(--line);border-radius:3px;width:100%}.prop-hero-crop img{aspect-ratio:var(--hero-ratio,16 / 7);object-position:var(--hero-pos,center)}@media (width<=800px){.prop-hero-crop img{aspect-ratio:3/2}}.icon{vertical-align:-.15em;flex:none}.facts{grid-template-columns:repeat(auto-fit,minmax(13rem,1fr));gap:0 1.75rem;max-width:none;margin:0 0 1rem;display:grid}.facts>div{border-bottom:1px solid var(--line);align-items:flex-start;gap:.65rem;padding:.65rem 0;display:flex}.facts>div>.icon{color:var(--muted);margin-top:.12rem}.facts>div>div{min-width:0}.facts dt{font-family:var(--sans);letter-spacing:.12em;text-transform:uppercase;color:var(--muted);margin:0;font-size:.72rem}.facts dd{margin:.15rem 0 0}.amenity-list{grid-template-columns:repeat(auto-fit,minmax(14rem,1fr));gap:0 1.75rem;max-width:none;padding:0;list-style:none;display:grid}.amenity-list li{border-bottom:1px solid var(--line);align-items:flex-start;gap:.5rem;padding:.38rem 0;display:flex}.amenity-list .icon{color:var(--brand);margin-top:.12rem}.access-list{max-width:var(--measure);margin:0 0 1rem;padding:0;list-style:none}.access-list li{align-items:flex-start;gap:.5rem;padding:.3rem 0;display:flex}.access-list .icon{color:var(--muted);margin-top:.18rem}.prop-map{aspect-ratio:16/9;border:1px solid var(--line);border-radius:3px;width:100%;max-height:420px;margin:.5rem 0 .4rem;display:block}main section>:is(ul,ol):not(.cards):not(.amenity-list):not(.access-list):not(.journal-grid){max-width:var(--measure);margin:0 0 1rem;padding-left:1.2rem}main section>:is(ul,ol):not(.cards):not(.amenity-list):not(.access-list):not(.journal-grid) li{margin:.35rem 0}.why{margin:1rem 0 3.5rem}.why h1{max-width:16ch}.why .lead{font-family:var(--serif);color:var(--muted);font-style:italic}.why-thesis{max-width:var(--measure);font-size:1.1rem;font-weight:600}.manifesto .lead{max-width:var(--measure)}.staccato{max-width:var(--measure);font-family:var(--serif);color:var(--muted);font-size:1.15rem;line-height:1.5}.staccato-close{letter-spacing:.01em;font-size:1.05rem}.closing{border-top:1px solid var(--line);padding-top:2.5rem}.link-list{margin:0;padding:0;list-style:none}.link-list li{border-bottom:1px solid var(--line);padding:.55rem 0}.link-list li:first-child{border-top:1px solid var(--line)}.j-meta{color:var(--muted);flex-wrap:wrap;align-items:baseline;gap:.5rem .9rem;margin:0 0 .3rem;font-size:.82rem;display:flex}.j-kind{letter-spacing:.1em;text-transform:uppercase;color:var(--brand);font-size:.68rem;font-weight:600}.j-pills{flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 .5rem;display:flex}.j-pills button{font:inherit;cursor:pointer;border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:999px;padding:.32rem .8rem;font-size:.85rem}.j-pills button:hover{color:var(--ink)}.j-pills button:not(.j-pill-base)+.j-pill-base{margin-left:.9rem;position:relative}.j-pills button:not(.j-pill-base)+.j-pill-base:before{content:"";border-left:1px solid var(--line);position:absolute;top:20%;bottom:20%;left:-.75rem}.j-pills button[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.journal-grid{gap:1.75rem 1.5rem;margin:1.5rem 0 0;padding:0;list-style:none;display:grid}@media (width>=40rem){.journal-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=62rem){.journal-grid{grid-template-columns:repeat(3,1fr)}}.jcard{flex-direction:column;display:flex}.jcard[hidden]{display:none}.jcard-media{border:1px solid var(--line);aspect-ratio:3/2;background:var(--paper-2);border-radius:3px;display:block;overflow:hidden}.jcard-media img{object-fit:cover;width:100%;height:100%}.jcard-noimg{height:100%;font-family:var(--serif);color:var(--line);justify-content:center;align-items:center;font-size:3rem;display:flex}.jcard-body{padding:.75rem 0 0}.jcard h2{text-wrap:balance;margin:0 0 .3rem;font-size:1.12rem;line-height:1.3}.jcard h2 a{color:var(--ink);text-decoration:none}.jcard h2 a:hover{color:var(--brand)}.jcard-body p:last-child{color:var(--muted);margin:0;font-size:.95rem}.j-empty{color:var(--muted);margin-top:1.5rem}.post h1{margin-top:.2rem}.post h2{margin-top:2rem}.post img{border-radius:3px}.post ul,.post ol{padding-left:1.2rem}.post li{margin:.3rem 0}.post table{border-collapse:collapse;width:100%;margin:1rem 0}.post th,.post td{text-align:left;border-bottom:1px solid var(--line);padding:.45rem .6rem}.post-foot{border-top:1px solid var(--line);margin-top:3rem;padding-top:1.5rem;font-size:.9rem}.faq dt,.company dt{font-weight:600;font-family:var(--serif);margin-top:1.2rem}.faq dd,.company dd{margin:.3rem 0 0}.company dt{font-family:var(--sans);letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:.8rem;font-size:.8rem}h1.eyebrow,.hero h1.eyebrow,.why h1.eyebrow{max-width:none;margin:0 0 .5rem;font-size:.78rem}.h1-look{font-family:var(--serif);color:var(--ink);letter-spacing:-.01em;text-wrap:balance;margin:0 0 .6rem;font-size:clamp(2.1rem,5.5vw,3rem);font-weight:600;line-height:1.15}.hero .h1-look,.why .h1-look{max-width:16ch}picture{display:contents}.route{background:var(--paper-2);border:1px solid var(--line);border-radius:6px;margin:3rem 0 0;padding:1.5rem 1.5rem 1.25rem}.route-kicker{letter-spacing:.12em;text-transform:uppercase;color:var(--brand);margin:0;font-size:.72rem}.post .route h2{margin:.3rem 0 .4rem;font-size:1.3rem;line-height:1.3}.route-total{color:var(--muted);align-items:center;gap:.4rem;margin:0 0 1.25rem;display:flex}.route-total strong{color:var(--ink)}.post .route-steps{margin:0;padding:0;list-style:none}.post .route-steps li{margin:0}.route-stop{padding-left:1.9rem;font-weight:600;line-height:1.4;position:relative}.route-dot{background:var(--paper);border:2px solid var(--muted);border-radius:50%;width:.7rem;height:.7rem;position:absolute;top:.3rem;left:.3rem}.route-start .route-dot{background:var(--muted)}.route-end .route-dot{background:var(--brand);border-color:var(--brand);width:.9rem;height:.9rem;top:.2rem;left:.2rem}.route-leg{border-left:2px dashed var(--line);flex-wrap:wrap;align-items:center;gap:.35rem .75rem;padding:.65rem 0 .65rem 1.25rem;font-size:.92rem;display:flex;margin-left:.62rem!important}.route-mode{background:var(--paper);border:1px solid var(--line);border-radius:999px;align-items:center;gap:.35rem;padding:.2rem .6rem;display:inline-flex}.route-mode .icon,.route-min{color:var(--muted)}.route-alt{border-top:1px solid var(--line);margin:1.25rem 0 0;padding-top:1rem;font-size:.92rem}.route-alt>div{grid-template-columns:5.5rem 1fr;gap:.75rem;padding:.25rem 0;display:grid}.route-alt dt{margin:0;font-weight:600}.route-alt dd{color:var(--muted);margin:0}@media (width<=480px){.route-alt>div{grid-template-columns:1fr;gap:0}}.route-cta{margin:1.25rem 0 0;font-size:.92rem}.route-cta a{color:var(--brand-ink);font-weight:600;text-decoration:none}.route-cta a:hover{text-decoration:underline}.jcard h3{text-wrap:balance;margin:0;font-size:1.05rem;line-height:1.3}.jcard h3 a{color:var(--ink);text-decoration:none}.jcard h3 a:hover{color:var(--brand)}
