:root {
  --sans: 'Hiragino Sans', 'Hiragino Kaku Gothic ProN', 'Yu Gothic', Meiryo, sans-serif;
  --muted: #58666a;
}
body {font-size:16px;line-height:1.95;letter-spacing:.015em}
.shell {max-width:1200px}
.section-space {padding-block:112px}
.eyebrow {font-size:12px;letter-spacing:.12em;line-height:1.7}
.jp-title {line-height:1.65;letter-spacing:.025em}
.text-link,.button {font-size:15px;line-height:1.7;min-height:48px}
.text-link {gap:32px;max-width:100%}
.source-note,.source-link,.archive-label {font-size:13px;line-height:1.85}
.source-note,.source-link {letter-spacing:0}
.site-header {gap:24px}
.desktop-nav {gap:25px;font-size:14px;letter-spacing:0;white-space:nowrap}
.header-contact {font-size:14px;gap:18px;white-space:nowrap}
.site-menu>a {font-family:var(--sans);font-size:23px}
.site-menu small {font-size:12px}
.footer-links {font-size:14px;gap:24px}
.footer-note,.footer-note>span:first-child {font-size:12px}
.footer-note {line-height:1.8}
.round-link {font-size:14px;flex-shrink:0}
.page-title {padding-block:85px 65px}
.page-title h1 {font-size:clamp(34px,4vw,54px);line-height:1.6}
.page-intro {font-size:18px;line-height:1.95;max-width:38em}
.section-heading h2+p {font-size:16px;line-height:1.95}
.corporate-hero {grid-template-columns:46% 54%;min-height:632px;height:calc(100svh - 88px);max-height:920px}
.corporate-hero-copy {padding:35px 8% 76px 12%;justify-content:center}
.corporate-hero-copy>.eyebrow {font-family:var(--sans);font-size:13px;letter-spacing:.12em;margin-bottom:24px}
.corporate-hero h1 {font-size:clamp(39px,4vw,62px);line-height:1.5;letter-spacing:.015em}
.corporate-hero-lead {font-size:16px;line-height:2;margin:24px 0 8px;letter-spacing:0;max-width:29em}
.corporate-hero-copy>.text-link {font-size:15px;width:240px;margin:0;padding-block:13px}
.hero-purpose {left:12%;bottom:22px;font-size:13px}
.hero-purpose>a {border:0;padding:0;font-size:13px}
.stage-caption {left:32px;top:28px}
.stage-caption>span {font-size:11px}
.stage-caption strong {font-size:15px}
.stage-toggle {font-size:16px;padding:16px 20px;left:32px;right:32px;bottom:26px;gap:16px}
.stage-blueprint {inset:0 0 112px}
.blueprint-overline {font:13px/1.7 var(--sans);left:32px;top:26px;letter-spacing:.04em}
.layer-buttons {left:32px;right:32px;top:66px;gap:10px}
.layer-buttons button {font-size:16px;padding:13px 16px;min-width:0;line-height:1.6}
.layer-buttons small {font-size:11px;letter-spacing:.04em}
.layer-buttons span {top:31px;right:12px;font-size:19px}
.blueprint-orbit {top:49%;opacity:.5}
.layer-detail {left:32px;right:32px;bottom:17px;padding:20px 24px}
.layer-detail>.eyebrow {font-size:11px}
.layer-detail h2 {font-size:29px;line-height:1.55;margin:12px 0}
.layer-detail p {font-size:15px;line-height:1.85}
.layer-detail a {font-size:15px;min-height:40px;margin-top:8px}
.blueprint-note {font-size:11px;left:32px;bottom:-8px;right:20px;line-height:1.5}
.audience-routes>a {font-size:16px;padding:24px 28px;line-height:1.7}
.audience-routes span {font-size:11px;letter-spacing:.08em}
.audience-routes b {top:34px}
.corporate-intro .intro-heading {grid-template-columns:1fr 1fr;gap:22px 9%}
.corporate-intro .jp-title {font-size:38px;line-height:1.65}
.intro-heading>p:last-child {font-size:17px;line-height:2;max-width:29em}
.discipline-grid {gap:40px;margin-top:64px}
.discipline-grid h3 {font:500 22px/1.65 var(--sans);margin:36px 0 18px;min-height:0}
.discipline-grid>a>div {font-size:16px;line-height:1.95}
.discipline-grid b {font-size:14px;margin-top:24px}
.discipline-grid>a>p {font-size:11px}
.discipline-grid>a>span {font-size:56px;color:#d6d7cf}
.stay-editorial {padding:90px 0 85px;background:#e9e9e2}
.stay-editorial-heading {display:grid;grid-template-columns:1fr 1fr;gap:22px 9%;align-items:center;margin-bottom:54px}
.stay-editorial-heading>.eyebrow {grid-column:1/-1}
.stay-editorial-heading>.jp-title {font-size:42px}
.stay-editorial-heading>p:last-child {font-size:17px;line-height:2}
.stay-editorial-grid {display:grid;grid-template-columns:1.25fr 1fr;gap:7%;align-items:start}
.stay-editorial-grid>a>div {position:relative;overflow:hidden;background:#d4d6d0}
.stay-main>div {aspect-ratio:1.28}
.stay-secondary {margin-top:95px}
.stay-secondary>div {aspect-ratio:.94}
.stay-editorial-grid img {transition:transform .8s}
.stay-editorial-grid a:hover img {transform:scale(1.035)}
.stay-editorial-grid a>div>span {position:absolute;bottom:22px;right:22px;background:var(--paper);padding:11px 18px;font-size:14px}
.stay-editorial-grid a>p {font:11px/1.6 Arial;letter-spacing:.14em;margin-top:25px}
.stay-editorial-grid h3 {font:500 25px/1.6 var(--serif);margin:13px 0 8px}
.stay-editorial-grid a>span {font-size:14px;color:var(--muted)}
.stay-editorial-footer {display:flex;align-items:center;justify-content:space-between;gap:35px;margin-top:65px;padding-top:32px;border-top:1px solid var(--line)}
.stay-editorial-footer>p {font-size:16px;line-height:1.95}
.editorial-band {padding-block:78px}
.editorial-band h2 {font-size:clamp(36px,4.5vw,58px);line-height:1.65}
.editorial-band p:not(.eyebrow) {font-size:17px;line-height:2}
.founder-feature {gap:9%;grid-template-columns:1fr 1fr}
.founder-portrait {height:540px}
.founder-text .jp-title {font-size:38px}
.founder-text blockquote {font-size:24px;line-height:1.85}
.person-credit {font-size:14px}
.founder-text>p:not(.eyebrow):not(.person-credit) {font-size:16px;line-height:2;max-width:29em}
.founder-text .text-link,.founder-text .source-link {font-size:15px}
.founder-text .source-link {font-size:12px}
.investor-feature {min-height:415px}
.investor-teaser {padding:42px 9%;justify-content:center}
.investor-teaser .eyebrow {font-size:12px}
.investor-teaser h3 {font-size:36px;line-height:1.65}
.investor-teaser>p:not(.eyebrow) {font-size:14px;line-height:1.9}
.investor-teaser .text-link {font-size:15px;gap:16px}
.investor-teaser small {font-size:12px;line-height:1.8}
.home-stories .section-heading {align-items:center}
.story-rows a {grid-template-columns:1fr 3fr;gap:12px 35px;padding-block:32px}
.story-rows a>span {font-size:13px}
.story-rows h3 {font:500 25px/1.65 var(--sans)}
.story-rows p {font-size:13px;line-height:1.8}
.recruit-feature {grid-template-columns:1.15fr 1fr;min-height:500px}
.recruit-copy {padding:55px 10%}
.recruit-copy h2 {font-size:44px;line-height:1.65}
.recruit-copy p:not(.eyebrow) {font-size:16px;line-height:2}
.recruit-copy .button {font-size:15px;max-width:none}
.brand-gateway p:not(.eyebrow) {font-size:16px}
.brand-gateway .text-link {font-size:15px;min-width:0;gap:24px}
.mission-grid p:not(.eyebrow),.context-grid p,.brand-pair p,.tech-feature p:not(.eyebrow):not(.source-note),.tech-work p,.tech-work li,.member-editorials p:not(.eyebrow):not(.person-credit),.field-story p:not(.eyebrow),.career-intro>div>p:not(.eyebrow),.culture-grid p,.business-row p:not(.eyebrow),.owner-grid p:not(.eyebrow),.statement-copy p:not(.eyebrow),.hotel-story p:not(.eyebrow),.contact-grid p {font-size:17px;line-height:2}
.tech-feature>div>.source-note,.tech-work .source-note,.tech-flow-section .source-note {font-size:13px;line-height:1.85}
.tech-flow {gap:32px}
.tech-flow h3 {font:500 21px/1.65 var(--sans)}
.tech-flow p {font-size:16px;line-height:1.95}
.related-story p:not(.eyebrow) {font-size:17px;max-width:40em;line-height:2}
.related-story .source-note {font-size:13px!important}
.related-story h2 {font-size:34px}
.member-editorials {gap:64px}
.member-editorials h3 {font-size:30px;line-height:1.7}
.member-editorials .text-link {font-size:15px}
.article-layout {grid-template-columns:220px minmax(0,1fr);gap:9%;max-width:1100px}
.article-layout aside>a {font-size:14px;line-height:1.9}
.article-body {max-width:38em}
.article-body h2 {font-size:34px;line-height:1.65}
.article-body p {font-size:18px;line-height:2.05}
.article-body .eyebrow {font-size:12px}
.archive-bottom p {font-size:14px;line-height:1.9}
.archive-bottom .text-link {font-size:15px;max-width:100%}
.culture-grid h3 {font:500 25px/1.7 var(--sans)}
.career-anchor>a {font-size:15px}
.job-filter button,.filters button {font-size:15px;min-height:44px}
.job-count,.job-list p {font-size:14px}
.job-list h3 {font:500 25px/1.6 var(--sans)}
.job-list>a>span {font-size:12px}
.job-list b {font-size:14px}
.job-list+.source-note {font-size:13px;line-height:1.9}
.profile-table dt,.profile-table dd {font-size:16px}
.profile-table dd span,.profile-table small {font-size:14px}
.profile-table .text-link {font-size:15px}
.owner-details dt,.owner-details small {font-size:14px}
.owner-details dd {font-size:17px}
.business-row .service-tags {font-size:14px!important}
.business-cycle b {font-size:17px}
.business-cycle p {font-size:14px}
.hotel-caption p,.hotel-caption>span {font-size:14px}
.hotel-caption h3 {font-size:31px}
.location-label {font-size:12px}
.directory-note p {font-size:14px;line-height:1.9}
.directory-note .text-link {font-size:15px}
.hotel-detail-head>p:last-child,.back-link {font-size:15px}
.booking-box p,.booking-box .button {font-size:16px}
.booking-box small {font-size:12px;line-height:1.8}
.hotel-story .source-note {font-size:13px!important}
.gallery-image span {font-size:13px}
summary,.career-faq summary {font-size:16px;line-height:1.8;min-height:76px}
details>p,.career-faq details p {font-size:16px;line-height:2}
.contact-grid .text-link {font-size:15px}
.guest-guide {margin-top:80px;padding:48px;background:#e8ebe4}
.guest-guide h2 {font-size:32px;margin:18px 0 28px}
.guest-guide dl {display:grid;grid-template-columns:110px minmax(0,1fr);margin:0}
.guest-guide dt,.guest-guide dd {padding:19px 0;margin:0;border-top:1px solid var(--line);font-size:16px}
.guest-guide dt {font-size:14px;color:var(--muted)}
.guest-guide .source-note {margin-top:25px}
.arrival-section {padding:75px 0;background:#e8ebe4}
.arrival-heading {max-width:680px}
.arrival-heading h2 {font-size:36px;margin:18px 0 25px}
.arrival-heading>p:not(.eyebrow) {font-size:17px}
.arrival-steps {list-style:none;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin:42px 0 30px}
.arrival-steps li {border-top:1px solid var(--line);padding-top:22px}
.arrival-steps span {font:35px/1.2 Georgia;color:var(--blue)}
.arrival-steps h3 {font:500 22px/1.6 var(--sans);margin:18px 0 12px}
.arrival-steps p {font-size:16px;line-height:1.95}
.arrival-section .text-link {margin-bottom:18px}
.archive-reading {padding-top:40px;margin-top:40px;border-top:1px solid var(--line)}
.archive-reading h3 {font-size:24px;margin:20px 0}
.portfolio-link {margin-top:45px;border-top:1px solid var(--line);padding-top:28px;display:flex;justify-content:space-between;align-items:center;gap:30px}
.portfolio-link p {font-size:16px;max-width:38em}
@media(max-width:1100px) {
  .site-header {padding-inline:24px;gap:18px}
  .desktop-nav {gap:16px;font-size:13px}
  .brand {width:120px}
  .header-contact {font-size:13px;padding-inline:12px;gap:10px}
  .corporate-hero-copy {padding-left:9%;padding-right:6%}
  .corporate-hero h1 {font-size:40px}
  .hero-purpose {left:9%}
  .corporate-hero-lead {font-size:15px}
  .layer-buttons span {display:none}
  .discipline-grid {gap:28px}
  .discipline-grid h3 {font-size:21px}
  .brand-gateway {flex-wrap:wrap}
  .brand-gateway>div {width:100%}
  .brand-gateway .text-link {margin-right:20px}
}
@media(max-width:900px) {
  .desktop-nav {display:none}
  .site-header,.site-header.is-scrolled {height:72px}
  .header-contact {margin-left:auto}
  .menu-button {display:block}
  .corporate-hero {min-height:670px;height:auto;grid-template-columns:44% 56%}
  .corporate-hero h1 {font-size:31px}
  .corporate-hero-copy {padding:35px 8% 85px}
  .corporate-hero-lead br {display:none}
  .layer-detail {padding:20px;left:22px;right:22px}
  .layer-detail h2 {font-size:26px}
  .layer-detail p {font-size:15px;white-space:normal}
  .layer-detail p br {display:none}
  .layer-buttons {left:22px;right:22px;flex-wrap:nowrap}
  .layer-buttons button {font-size:15px;padding:12px 10px}
  .layer-buttons small {font-size:10px}
  .blueprint-overline {left:22px;font-size:12px}
  .stage-toggle {left:22px;right:22px;font-size:14px;gap:10px}
  .blueprint-note {left:22px;font-size:10px}
  .audience-routes>a {font-size:14px;padding-inline:18px;padding-right:35px}
  .audience-routes span {font-size:10px;letter-spacing:.03em}
  .corporate-intro .intro-heading {grid-template-columns:1fr;gap:24px}
  .corporate-intro .jp-title {font-size:36px}
  .intro-heading>p:last-child {max-width:35em}
  .discipline-grid {grid-template-columns:1fr;gap:30px}
  .discipline-grid>a {display:grid;grid-template-columns:1fr 1fr;gap:10px 35px}
  .discipline-grid>a>span {display:none}
  .discipline-grid>a>p {grid-column:1;margin:0}
  .discipline-grid h3 {grid-column:1;margin:0}
  .discipline-grid>a>div {grid-column:2;grid-row:1/4}
  .discipline-grid b {margin-top:10px}
  .founder-feature,.recruit-feature {grid-template-columns:1fr 1fr;gap:6%}
  .founder-text .jp-title {font-size:30px}
  .founder-portrait {height:500px}
  .founder-text blockquote {font-size:21px}
  .founder-text p br {display:none}
  .investor-teaser {padding:32px 8%}
  .investor-teaser h3 {font-size:30px}
  .home-stories .section-heading {display:block}
  .home-stories .section-heading>.text-link {margin-top:20px}
  .recruit-feature {gap:0}
  .recruit-copy {padding:42px 8%}
  .recruit-copy h2 {font-size:36px}
  .article-layout {grid-template-columns:160px minmax(0,1fr);gap:6%}
  .article-body h2 {font-size:29px}
  .article-body p {font-size:17px}
  .tech-flow {grid-template-columns:1fr 1fr}
  .culture-grid {grid-template-columns:1fr;gap:30px}
  .tech-feature,.tech-work,.field-story,.career-intro,.business-row {gap:6%}
  .arrival-steps {gap:25px}
}
@media(max-width:600px) {
  body {font-size:16px;letter-spacing:0}
  .shell {width:calc(100% - 44px)}
  .section-space {padding-block:72px}
  .site-header,.site-header.is-scrolled {padding-inline:20px;gap:12px}
  .brand {width:112px}
  .header-contact {font-size:12px;padding:8px 0;border:0;gap:6px}
  .eyebrow {font-size:11px;letter-spacing:.1em}
  .jp-title {font-size:29px;line-height:1.7}
  .page-title {padding-block:52px 40px}
  .page-title h1 {font-size:32px;margin-top:20px}
  .page-intro {font-size:16px;line-height:1.95;margin-top:23px}
  .page-intro br,main p:not(.eyebrow) br {display:none}
  .text-link {font-size:15px;gap:20px}
  .corporate-hero {display:block;min-height:0;height:auto;max-height:none}
  .corporate-hero-copy {display:block;padding:36px 22px 29px}
  .corporate-hero-copy>.eyebrow {font-size:12px;margin-bottom:20px}
  .corporate-hero h1 {font-size:clamp(27px,8.4vw,42px);line-height:1.65;white-space:normal}
  .corporate-hero h1 br:nth-of-type(2) {display:none}
  .corporate-hero-lead {font-size:16px;line-height:1.95;margin-top:20px;max-width:24em}
  .corporate-hero-copy>.text-link {font-size:15px;width:228px;margin-top:3px}
  .hero-purpose {position:static;display:block;margin-top:22px}
  .hero-purpose>a {font-size:13px;padding:0;border:0}
  .corporate-stage {height:560px}
  .stage-caption {left:22px;top:24px}
  .stage-caption>span {font-size:11px}
  .stage-caption strong {font-size:14px}
  .stage-toggle {left:22px;right:22px;bottom:24px;font-size:15px;padding:15px;gap:12px}
  .stage-toggle .toggle-icon {width:32px;height:32px}
  .stage-blueprint {bottom:116px}
  .blueprint-overline {left:22px;top:23px;font-size:12px}
  .layer-buttons {left:22px;right:22px;top:60px;gap:7px}
  .layer-buttons button {font-size:16px;padding:11px 9px;min-width:0}
  .layer-buttons small {font-size:10px;letter-spacing:0}
  .layer-detail {left:22px;right:22px;bottom:12px;padding:18px 19px}
  .layer-detail h2 {font-size:26px;line-height:1.6}
  .layer-detail p {font-size:15px;line-height:1.9}
  .layer-detail a {font-size:14px;margin-top:8px}
  .blueprint-note {font-size:10px;line-height:1.6;bottom:-12px}
  .audience-routes {grid-template-columns:1fr;padding-inline:22px}
  .audience-routes>a {font-size:16px;padding:19px 30px 19px 0;border:0;border-bottom:1px solid var(--line)}
  .audience-routes>a:first-child {border-left:0}
  .audience-routes span {font-size:10px;margin-bottom:6px}
  .audience-routes b {right:0;top:26px}
  .corporate-intro .jp-title {font-size:30px}
  .intro-heading>p:last-child {font-size:16px;line-height:2}
  .discipline-grid {margin-top:40px;gap:32px}
  .discipline-grid>a {display:block;padding-top:23px}
  .discipline-grid h3 {font-size:22px;margin:20px 0 14px}
  .discipline-grid>a>div {font-size:16px;line-height:1.95}
  .discipline-grid b {font-size:14px;margin-top:19px}
  .stay-editorial {padding-block:65px}
  .stay-editorial-heading {grid-template-columns:1fr;gap:18px;margin-bottom:30px}
  .stay-editorial-heading>.jp-title {font-size:34px}
  .stay-editorial-heading>p:last-child {font-size:16px}
  .stay-editorial-grid {grid-template-columns:1fr;gap:36px}
  .stay-main>div {aspect-ratio:1.1}
  .stay-secondary {margin-top:0;margin-left:12%}
  .stay-secondary>div {aspect-ratio:1}
  .stay-editorial-grid h3 {font-size:22px}
  .stay-editorial-grid a>div>span {font-size:13px;bottom:15px;right:15px}
  .stay-editorial-footer {display:block;margin-top:35px}
  .stay-editorial-footer>p {font-size:15px;max-width:22em}
  .stay-editorial-footer .text-link {margin-top:12px}
  .editorial-band {padding-block:60px}
  .editorial-band h2 {font-size:34px}
  .editorial-band p:not(.eyebrow) {font-size:16px}
  .founder-feature {grid-template-columns:1fr;gap:34px}
  .founder-portrait {height:380px}
  .founder-text .jp-title {font-size:32px}
  .founder-text blockquote {font-size:22px}
  .founder-text>p:not(.eyebrow):not(.person-credit) {font-size:16px;line-height:2}
  .founder-text .eyebrow {font-size:11px}
  .investor-feature {grid-template-columns:1fr;min-height:0}
  .investor-feature>div:first-child {height:260px}
  .investor-teaser {padding:30px 23px}
  .investor-teaser h3 {font-size:31px}
  .investor-teaser .eyebrow {font-size:11px}
  .investor-teaser small {font-size:12px}
  .home-stories .section-heading h2+p {font-size:16px}
  .story-rows a {display:block;padding:27px 27px 27px 0}
  .story-rows a>span {font-size:12px}
  .story-rows h3 {font-size:22px;margin-block:15px}
  .story-rows p {font-size:13px}
  .story-rows b {right:0}
  .recruit-feature {grid-template-columns:1fr}
  .recruit-image {height:300px}
  .recruit-copy {padding:38px 22px 45px}
  .recruit-copy h2 {font-size:37px}
  .recruit-copy p:not(.eyebrow) {font-size:16px}
  .brand-gateway .text-link {font-size:15px;max-width:100%}
  .contact-band {padding:55px 22px;gap:30px}
  .contact-band h2 {font-size:36px}
  .round-link {font-size:13px;width:150px;height:150px}
  .site-footer {padding-inline:22px}
  .footer-top {display:block}
  .footer-top p {margin-top:18px;font-size:16px}
  .footer-links {display:grid;grid-template-columns:1fr 1fr;gap:20px 15px;font-size:14px}
  .footer-note {font-size:11px;gap:15px}
  .footer-note>span:first-child {font-size:11px}
  .mission-grid p:not(.eyebrow),.context-grid p,.brand-pair p,.tech-feature p:not(.eyebrow):not(.source-note),.tech-work p,.tech-work li,.member-editorials p:not(.eyebrow):not(.person-credit),.field-story p:not(.eyebrow),.career-intro>div>p:not(.eyebrow),.culture-grid p,.business-row p:not(.eyebrow),.owner-grid p:not(.eyebrow),.statement-copy p:not(.eyebrow),.hotel-story p:not(.eyebrow),.contact-grid p {font-size:16px;line-height:2}
  .tech-flow {grid-template-columns:1fr;gap:32px}
  .tech-flow article {position:relative;padding:24px 0 0 52px}
  .tech-flow span {position:absolute;left:0;top:29px;font-size:29px}
  .tech-flow h3 {font-size:21px;margin:0 0 12px}
  .tech-flow p {font-size:16px}
  .tech-flow-section .source-note {font-size:12px}
  .related-story p:not(.eyebrow) {font-size:16px}
  .related-story h2 {font-size:29px}
  .member-editorials {grid-template-columns:1fr;gap:24px}
  .member-editorials h3 {font-size:27px}
  .member-editorials .text-link {font-size:15px}
  .article-layout {grid-template-columns:1fr;gap:38px}
  .article-layout aside {position:static}
  .article-layout aside>a {font-size:14px}
  .article-body h2 {font-size:28px}
  .article-body p {font-size:17px;line-height:2.05}
  .archive-label {font-size:13px;line-height:1.9}
  .archive-bottom p {font-size:14px}
  .culture-grid h3 {font-size:24px}
  .career-anchor>a {font-size:14px}
  .job-list>a {grid-template-columns:1fr;gap:14px}
  .job-list b {grid-column:1;font-size:14px}
  .job-list h3 {font-size:23px}
  .job-list p {font-size:14px}
  .job-filter button {font-size:14px;padding:10px 15px}
  .job-list+.source-note {font-size:13px}
  .job-list~.text-link {font-size:15px}
  .profile-table {grid-template-columns:82px minmax(0,1fr)}
  .mission-grid {grid-template-columns:minmax(0,1fr)}
  .mission-grid h2 {font-size:clamp(42px,13vw,67px)}
  .profile-table dt {font-size:14px}
  .profile-table dd {font-size:16px}
  .profile-table .text-link {font-size:14px;width:auto;max-width:100%;gap:12px}
  .business-cycle {gap:5px}
  .business-cycle b {font-size:15px}
  .business-cycle span {font-size:11px}
  .business-cycle p {font-size:13px}
  .hotel-story,.faq {grid-template-columns:1fr;gap:38px}
  .directory-note p {font-size:14px;max-width:100%}
  .directory-note .text-link {font-size:15px;min-width:0}
  .booking-box {padding:26px}
  .booking-box .button {font-size:15px;gap:15px}
  .hotel-detail-head h1 {font-size:clamp(31px,8.7vw,48px)}
  .guest-guide {padding:28px 22px;margin-top:50px}
  .guest-guide h2 {font-size:27px}
  .guest-guide dl {grid-template-columns:1fr}
  .guest-guide dt {padding:18px 0 5px}
  .guest-guide dd {padding:0 0 18px;border:0}
  .arrival-section {padding-block:60px}
  .arrival-heading h2 {font-size:29px}
  .arrival-heading>p:not(.eyebrow) {font-size:16px}
  .arrival-steps {grid-template-columns:1fr;gap:30px;margin-block:32px 25px}
  .arrival-steps li {position:relative;padding:23px 0 0 48px}
  .arrival-steps span {position:absolute;left:0;top:25px;font-size:28px}
  .arrival-steps h3 {font-size:21px;margin:0 0 12px}
  .portfolio-link {display:block}
  .portfolio-link .text-link {margin-top:15px}
}
@media(prefers-reduced-motion:reduce) {
  .stay-editorial-grid img {transition:none}
}
