/* 01 — a window onto life. Warm light, precise information, unhurried movement. */
.window.refined{--field-line:#718477;--section-space:clamp(64px,8vw,124px)}
.window.refined :is(.eyebrow,.ui-eyebrow,.hero-overline,.photo-index,.inner-marker){font-size:12px;line-height:1.6}
.window.refined :is(.small-label,.hero-services>a em,.hero-services>a small,.feature-folio,.project-caption>span,.ui-choice-no,.ui-section-label){font-size:12px}
.window.refined :is(.hero-services>a em,.small-label){font-size:14px}
.window.refined :is(.ui-primary-nav,.ui-section-nav a,.ui-related-link,.ui-interest-option,.ui-menu-toggle,.ui-field,.ui-close){font-size:14px}
.window.refined :is(.ui-image-note,.prototype-note,.section-footnote,.career-examples,.ui-field-hint,.ui-field small,.ui-privacy-note,.ui-draft-help){font-size:13px;line-height:1.8}
.window.refined :is(.feature-copy>p,.ui-explorer-copy>p,.project-principles p,.support-system article p,.crew-roles p,.partner-sequence article>p){font-size:16px}
.window.refined :is(.photo,.ui-gallery-photo,.film){background-color:#dde1d7}
.window.refined .ui-header[data-scrolled=true]{box-shadow:0 6px 24px #24372e05}
.window.refined .ui-field :is(input,textarea,select){border-color:var(--field-line);scroll-margin-block:100px 24px}
.window.refined .ui-field>span{font-size:12px}
.window.refined .ui-field :is(input,textarea)[aria-invalid=true]{border:2px solid #994732}
.window.refined :is(a,button,summary,input,textarea,select):focus-visible{outline:2px solid currentColor;outline-offset:5px}
.window.refined :is(h2,h3,[tabindex='-1']):focus{outline:none}
.window.refined .ui-dialog-top #contact-title{scroll-margin-top:20px}
.window.refined .ui-gallery-photo .ui-photo-zoom{font-size:13px}
.window.refined .ui-dialog :is(input,textarea,select){font-size:16px}
.window.refined .ui-menu-toggle{letter-spacing:.05em}
.window.refined .ui-section-nav{min-height:58px}
.window.refined .ui-section-nav a{min-height:54px}
.window.refined .mobile-break{display:none}

/* An immediate statement of the company, after the approved photographic opening. */
.window.refined .company-intro{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:8%;padding-block:42px 0}
.window.refined .company-intro>p{font:clamp(20px,2.1vw,30px)/1.9 var(--serif);letter-spacing:.035em}
.window.refined .company-intro>span{font-size:16px;line-height:2;color:var(--muted);max-width:31em}
.window.refined .visual-belief{padding-block:78px 52px}
.window.refined .belief-editorial h2{margin-bottom:24px}
.window.refined .life-pillars{border-block:1px solid var(--line);display:grid;grid-template-columns:1.2fr repeat(4,1fr);gap:24px;align-items:center;padding-block:26px;margin-bottom:var(--section-space)}
.window.refined .life-pillars>p{font-size:14px;line-height:1.8;color:var(--muted)}
.window.refined .life-pillars>span{display:flex;align-items:center;gap:15px;font:clamp(19px,2vw,25px)/1.6 var(--serif)}
.window.refined .life-pillars small{font:12px Arial,sans-serif;color:var(--muted)}
.window.refined .businesses{padding-bottom:0}
.window.refined .business-role{font-size:14px!important;letter-spacing:.1em;margin-bottom:14px;color:var(--accent)}
.window.refined .feature-copy h3{margin-bottom:22px}
.window.refined .feature-copy .feature-folio{margin-bottom:18px}
.window.refined .feature-copy .business-keywords{font-size:13px;line-height:1.9;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);color:var(--muted)}
.window.refined .business-feature{margin-top:88px;gap:7%}
.window.refined .business-feature .feature-image>.photo{height:auto;aspect-ratio:1.35}
.window.refined .feature-2{margin-top:100px}
.window.refined .feature-3{margin-top:100px}
.window.refined .life-film{margin-block:var(--section-space)}

/* Relationships share the page's paper, typography and quiet editorial rhythm. */
.window.refined .connection-map{position:relative;display:grid;grid-template-columns:.9fr 2fr;gap:0 6%;padding:36px 0 0;border-top:1px solid var(--line)}
.window.refined .connection-origin{grid-row:1/3;align-self:start;padding-top:2px;min-width:0}
.window.refined .connection-origin>span{font:12px/1.7 var(--sans);letter-spacing:.12em;color:var(--muted)}
.window.refined .connection-origin>p{font:clamp(22px,2vw,29px)/1.8 var(--serif);margin-top:18px}
.window.refined .connection-origin strong{display:block;font-weight:400}
.window.refined .connection-places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px}
.window.refined .connection-map a{position:relative;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) 24px;gap:6px 12px;padding:0 0 28px;color:var(--ink)}
.window.refined .connection-map :is(a>span,a>small){grid-column:1;font-size:14px;line-height:1.85}
.window.refined .connection-map a>strong{grid-column:1;font:clamp(25px,2.4vw,34px)/1.5 var(--serif);font-weight:400;letter-spacing:0}
.window.refined .connection-map a>small{color:var(--muted);font-size:16px;max-width:28em}
.window.refined .connection-map .connection-crew{padding:24px 0 28px;border-block:1px solid var(--line)}
.window.refined .connection-map .connection-next{grid-column:2;grid-row:1/4;align-self:center;justify-self:end;font:22px/1 var(--sans);color:var(--muted);transition:transform 180ms}
.window.refined .company-ecosystem .ecosystem-caption{margin-top:24px;color:var(--muted);font-size:14px;line-height:1.9;text-align:left}
@media(hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .window.refined .connection-map a:hover{color:var(--accent)}
 .window.refined .connection-map a:hover .connection-next{transform:translateX(3px)}
}

/* Selected desires: the image stays primary; the supporting action becomes concrete. */
.window.refined .experience-support{border-left:2px solid #8a9d80;padding-left:18px;margin-block:22px!important;font-size:15px!important;line-height:1.9}
.window.refined .experience-support>span{display:block;font-size:12px;letter-spacing:.05em;color:var(--muted);margin-bottom:5px}
.window.refined .ui-explorer-copy{padding-block:0}
.window.refined .ui-explorer-copy h3{line-height:1.7}
.window.refined .ui-explorer-copy .ui-related-link{min-height:44px}
.window.refined .ui-explorer-copy>.ui-contact-button{margin-top:12px}
.window.refined .choice-doors{display:grid;grid-template-columns:.8fr 1.6fr;gap:8%;padding-block:68px 100px;border-top:1px solid var(--line)}
.window.refined .choice-links>*{width:100%;display:grid;grid-template-columns:1fr 44px;gap:8px 24px;padding:24px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;color:var(--ink)}
.window.refined .choice-links span{font-size:13px;color:var(--muted);grid-column:1}
.window.refined .choice-links strong{font:clamp(18px,1.9vw,26px)/1.7 var(--serif);grid-column:1}
.window.refined .choice-links i{grid-column:2;grid-row:1/3;align-self:center;justify-self:center;font:27px Arial,sans-serif;transition:transform 180ms}
.window.refined .choice-links>:hover i{transform:translate(3px,-3px)}
.window.refined .choice-links>:hover strong{color:var(--accent)}

/* Open Living: three readable layers, aligned with the surrounding essay. */
.window.refined .living-layers{display:grid;grid-template-columns:1fr 1.25fr;align-items:start;gap:8%;padding-bottom:var(--section-space)}
.window.refined .layer-heading>p:last-child{margin-top:28px;line-height:2}
.window.refined .layer-diagram{min-width:0;border-top:1px solid var(--line)}
.window.refined .layer-diagram article{padding:26px 0 29px;border-bottom:1px solid var(--line)}
.window.refined .layer-diagram span{font:12px/1.8 var(--sans);letter-spacing:.09em;color:var(--muted)}
.window.refined .layer-diagram h3{font:clamp(24px,2vw,28px)/1.7 var(--serif);margin-block:10px 12px}
.window.refined .layer-diagram p{font-size:16px;line-height:2;max-width:30em;color:var(--muted)}

/* Care Stay: wishes lead to a practical conversation. */
.window.refined .stay-story{display:grid;grid-template-columns:1fr 1.15fr;gap:9%;padding-block:var(--section-space) 40px}
.window.refined .stay-story h2{font-size:clamp(27px,3.1vw,44px)}
.window.refined .stay-story>div>p:last-child{margin-top:24px}
.window.refined .wish-path{position:relative;border-left:1px solid #a7b9a0;padding-left:36px}
.window.refined .wish-path p{position:relative;font-size:16px;line-height:1.9;margin:0;padding-bottom:32px}
.window.refined .wish-path p:last-child{padding-bottom:0}
.window.refined .wish-path p:before{content:'';width:9px;height:9px;position:absolute;left:-41px;top:8px;background:var(--paper);border:1px solid var(--accent);border-radius:50%}
.window.refined .wish-path span{display:block;color:var(--muted);font:12px/1.7 Arial,sans-serif;letter-spacing:.13em;margin-bottom:8px}
.window.refined .wish-path strong{display:block;font:23px/1.7 var(--serif);margin-bottom:10px}
.window.refined .visual-support>article{border-bottom:1px solid var(--line)}
.window.refined .visual-support article p{line-height:2}
.window.refined .visual-steps li{position:relative}
.window.refined .visual-steps .step-no{font-size:15px}
.window.refined .visual-steps h4{font-size:20px}
.window.refined .visual-steps p{font-size:16px;line-height:1.9}

/* Life Crew: distinguish care delivery from participation. */
.window.refined .crew-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.window.refined .crew-roles article{border-bottom:1px solid var(--line)}
.window.refined .crew-roles .photo{aspect-ratio:4/3}
.window.refined .crew-roles article>div{padding:26px 0 28px}
.window.refined .crew-roles .eyebrow{margin-bottom:13px}
.window.refined .crew-roles h3{font:28px/1.6 var(--serif);margin-bottom:16px}
.window.refined .crew-roles p{line-height:2}
.window.refined .crew-roles :is(.text-link,.ui-contact-button){margin-top:22px;min-height:52px;max-width:100%}
.window.refined .crew-roles .ui-contact-button{font-size:14px;gap:20px}
.window.refined .origin-about{padding-block:var(--section-space)}
.window.refined .origin-about .photo{height:auto;aspect-ratio:1.3}
.window.refined .origin-about .text-link{margin-top:25px}
.window.refined .join-paths{display:grid;grid-template-columns:.8fr 1.3fr;gap:8%;padding-block:var(--section-space) 40px}
.window.refined .join-path-options article{border-top:1px solid var(--line);padding-block:28px}
.window.refined .join-path-options article>span{font:12px/1.7 Arial,sans-serif;letter-spacing:.1em;color:var(--muted)}
.window.refined .join-path-options h3{font:26px/1.7 var(--serif);margin-block:15px}
.window.refined .join-path-options p{font-size:16px;line-height:2}
.window.refined .join-path-options .text-link{margin-top:15px}
.window.refined .partner-bridge{padding:30px 35px;background:#edf0e9;border-block:1px solid #c3cfbe;margin-block:0 70px;text-align:center}
.window.refined .partner-bridge p{font:clamp(18px,2.4vw,30px)/1.9 var(--serif)}
.window.refined .partner-bridge p>span{margin-inline:2vw;color:#75896b;font-family:Arial,sans-serif}
.window.refined .partner-bridge>span{display:block;font-size:14px;color:var(--muted);margin-top:12px}

/* Media boxes reserve space before any network response. */
.window.refined .film>picture{display:block;position:absolute;inset:0;width:100%;height:100%}
.window.refined .film>picture>.film-poster{display:block;width:100%;height:100%;object-fit:cover}
.window.refined .film[data-film]>figcaption{font-size:12px;line-height:1.7;text-shadow:0 1px 4px #0008}
.window.refined .film[data-film]>button[data-video-toggle]{min-height:44px;font-size:14px}
.window.refined .film[data-video-state=unavailable] [data-video-toggle]{border-color:#fff}

@media(min-width:1000px){
 .window.refined .ui-header-contact{min-width:132px}
 .window.refined .connection-map{max-width:1260px;margin-inline:auto}
 .window.refined .company-ecosystem .connection-map{margin-top:42px}
}
@media(max-width:1100px){
 .window.refined .ui-header{padding-inline:26px;gap:16px}
 .window.refined .ui-header-actions{gap:18px}
 .window.refined .connection-map{grid-template-columns:.8fr 1.7fr;gap:0 5%;padding:30px 0 0}
 .window.refined .connection-places{gap:22px}
 .window.refined .crew-roles{gap:22px}
 .window.refined .crew-roles h3{font-size:25px}
 .window.refined .life-pillars{gap:16px}
 .window.refined .life-pillars>span{gap:10px}
}
@media(max-width:800px){
 .window.refined{--space:26px}
 .window.refined .ui-header{height:70px;padding-inline:20px;gap:12px}
 .window.refined .ui-header-actions{gap:15px}
 .window.refined .ui-header-contact{display:inline-flex;min-height:44px;padding:9px 13px;font-size:14px;gap:10px}
 .window.refined .ui-header-contact>span{display:none}
 .window.refined .ui-menu-toggle{min-width:44px;width:44px;height:44px;padding:10px;justify-content:center}
 .window.refined .ui-menu-toggle>span:first-child{display:none}
 .window.refined .ui-brand>span{font-size:25px}
 .window.refined .ui-brand img{width:33px;height:29px}
 .window.refined .ui-section-nav{position:relative;top:auto;min-height:58px;padding-inline:26px}
 .window.refined .ui-section-nav a{font-size:14px}
 .window.refined .company-intro{grid-template-columns:1fr;gap:18px;padding-top:32px}
 .window.refined .company-intro>span{font-size:16px}
 .window.refined .life-pillars{grid-template-columns:1fr 1fr;gap:15px 28px;padding-block:24px}
 .window.refined .life-pillars>p{grid-column:1/-1;margin-bottom:2px}
 .window.refined .life-pillars>p br{display:none}
 .window.refined .life-pillars>span{font-size:22px}
 .window.refined .connection-map{grid-template-columns:1fr;padding:30px 0 0}
 .window.refined .connection-origin{grid-row:auto;margin-bottom:32px}
 .window.refined .connection-origin>p{font-size:26px;line-height:1.7;margin-top:10px}
 .window.refined .connection-origin strong{display:inline}
 .window.refined .connection-map a>strong{font-size:31px}
 .window.refined .living-layers,.window.refined .stay-story,.window.refined .join-paths{grid-template-columns:1fr;gap:35px}
 .window.refined .layer-diagram{width:100%}
 .window.refined .crew-roles{grid-template-columns:1fr}
 .window.refined .crew-roles article{display:grid;grid-template-columns:1fr 1fr;gap:30px;align-items:start;padding-block:24px}
 .window.refined .crew-roles article>div{padding:0 0 24px}
 .window.refined .crew-roles .photo{aspect-ratio:4/5}
 .window.refined .choice-doors{grid-template-columns:1fr;gap:26px;padding-block:50px 70px}
 .window.refined .choice-doors h2 br{display:none}
 .window.refined .choice-doors .eyebrow{margin-bottom:15px}
 .window.refined .partner-bridge p>span{margin-inline:10px}
}
@media(max-width:600px){
 .window.refined{--space:22px;--section-space:68px}
 /* Keep the home's interior, all three people and the landscape in the frame. */
 .window.refined .hero-window .hero-photo{aspect-ratio:2/1;height:auto}
 .window.refined .hero-window .hero-photo img{width:100%;height:auto;object-fit:contain;object-position:center;transform:none;scale:1;translate:none}
 .window.refined .mobile-break{display:block}
 .window.refined .company-intro{padding-top:32px}
 .window.refined .company-intro>p{font-size:22px;line-height:1.9;letter-spacing:.025em}
 .window.refined .visual-belief{padding-block:52px 35px}
 .window.refined .life-pillars{margin-bottom:68px}
 .window.refined .businesses>.section-heading{margin-bottom:34px}
 .window.refined .business-feature,.window.refined .feature-2,.window.refined .feature-3{margin-top:55px;display:flex;flex-direction:column;gap:24px}
 .window.refined .business-feature .feature-image{width:100%}
 .window.refined .business-feature .feature-image>.photo{height:auto;aspect-ratio:1.35}
 .window.refined .business-feature .feature-copy{max-width:none;width:100%;padding:0}
 .window.refined .feature-copy h3{font-size:30px;line-height:1.65;margin-bottom:19px;max-width:none}
 .window.refined .feature-copy>p{font-size:16px;line-height:2}
 .window.refined .feature-copy .feature-folio{margin-bottom:16px}
 .window.refined .feature-copy .business-keywords{margin-top:18px;font-size:13px;line-height:2}
 .window.refined .feature-copy>.text-link{margin-top:17px;min-height:48px}
 .window.refined .connection-map{padding:28px 0 0}
 .window.refined .connection-origin{margin-bottom:30px}
 .window.refined .connection-origin>p{font-size:24px;line-height:1.8;margin-top:14px}
 .window.refined .connection-origin strong{display:block}
 .window.refined .connection-places{grid-template-columns:1fr;gap:0;border-top:1px solid var(--line)}
 .window.refined .connection-map a{padding:24px 0 26px;gap:5px 16px;border-bottom:1px solid var(--line)}
 .window.refined .connection-map a>strong{font-size:29px;line-height:1.6}
 .window.refined .connection-map a>span{font-size:14px;line-height:1.9}
 .window.refined .connection-map a>small{font-size:16px;line-height:1.9}
 .window.refined .connection-map .connection-crew{padding:24px 0 26px;border-top:0}
 .window.refined .connection-map .connection-next{font-size:22px}
 .window.refined .explore-section{padding-block:54px}
 .window.refined .ui-explorer-tabs{gap:0}
 .window.refined .ui-explorer-tabs>button{min-height:58px;font-size:14px}
 .window.refined .ui-explorer-copy{padding-top:25px}
 .window.refined .experience-support{margin-block:20px!important;font-size:15px!important}
 .window.refined .life-film{gap:30px;margin-block:68px}
 .window.refined .life-film>.film{height:auto;aspect-ratio:4/5;max-height:none}
 .window.refined .film[data-film]:has(video[data-video-src*='niigata']){height:auto;aspect-ratio:4/3;min-height:0}
 .window.refined .crew-stories>.film{height:auto;min-height:0;aspect-ratio:4/5}
 .window.refined .film[data-film]>figcaption{left:13px;bottom:17px;font-size:12px;max-width:calc(100% - 82px)}
 .window.refined .film[data-film]>button[data-video-toggle]{right:12px;bottom:12px;min-width:44px}
 .window.refined .project{padding-top:68px}
 .window.refined .project-heading{margin-bottom:30px}
 .window.refined .project-caption>p{font-size:19px}
 .window.refined .project-caption>small{font-size:12px}
 .window.refined .living-layers{padding-bottom:68px}
 .window.refined .living-layers{gap:30px}
 .window.refined .layer-diagram article{padding:24px 0 27px}
 .window.refined .layer-diagram h3{font-size:24px}
 .window.refined .layer-diagram p{font-size:16px;line-height:2}
 .window.refined .layer-diagram p br{display:none}
 .window.refined .stay-story{padding-block:60px 10px}
 .window.refined .wish-path{padding-left:26px;margin-left:5px}
 .window.refined .wish-path p:before{left:-31px}
 .window.refined .wish-path strong{font-size:21px}
 .window.refined .crew-roles article{display:block;padding-block:0 28px}
 .window.refined .crew-roles .photo{aspect-ratio:1.35}
 .window.refined .crew-roles article>div{padding:22px 0 0}
 .window.refined .crew-roles h3{font-size:28px}
 .window.refined .crew-roles :is(.text-link,.ui-contact-button){margin-top:18px}
 .window.refined .join-paths{padding-block:60px 8px;gap:30px}
 .window.refined .join-path-options h3{font-size:23px}
 .window.refined .partner-bridge{padding:26px 18px;margin-bottom:55px;text-align:left}
 .window.refined .partner-bridge p{font-size:20px}
 .window.refined .partner-bridge p>span{display:block;line-height:1.5;transform:rotate(90deg);width:1em;margin:8px 0}
 .window.refined .choice-links>*{padding-block:22px;gap:8px 15px}
 .window.refined .choice-links strong{font-size:19px}
 .window.refined .ui-dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px)}
 .window.refined .ui-dialog-top{gap:12px;padding-inline:18px}
 .window.refined .ui-field small{font-size:12px}
 .window.refined .ui-contact .ui-dialog-top p{font-size:13px;letter-spacing:.02em}
 .window.refined .ui-interest-option>span{font-size:14px}
 .window.refined .ui-gallery-grid .ui-gallery-caption{font-size:14px}
 .window.refined .prototype-note{font-size:12px;padding-block:18px 24px}
}
@media(max-width:360px){
 .window.refined{--space:18px}
 .window.refined .ui-header{padding-inline:14px;gap:8px}
 .window.refined .ui-header-actions{gap:8px}
 .window.refined .ui-brand>span{font-size:22px}
 .window.refined .ui-brand img{width:28px;height:26px}
 .window.refined .ui-header-contact{padding-inline:10px;font-size:13px}
 .window.refined .feature-copy h3{font-size:27px}
 .window.refined .company-intro>p{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
 .window.refined *{scroll-behavior:auto!important}
 .window.refined :is(a,button,img,.arrow,.choice-links i,.connection-next){transition:none!important}
}

/* Anchor destinations clear the actual sticky navigation once, without double offsets. */
html:has(body.window.refined){scroll-padding-top:98px}
html:has(body.window.refined .ui-section-nav){scroll-padding-top:156px}
.window.refined section[id]{scroll-margin-top:0}
@media(max-width:800px){
 html:has(body.window.refined),html:has(body.window.refined .ui-section-nav){scroll-padding-top:86px}
}
@media(max-width:600px){
 .window.refined .hero-services>a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:88px}
 .window.refined .hero-services>a span:not(.arrow){font-size:16px;line-height:1.6}
 .window.refined .hero-services>a em{font-size:12px;line-height:1.5}
.window.refined .hero-services .arrow{display:none}
}

/* 01 interaction polish: preserve geometry, imagery and the paper-like surfaces. */
.window.refined{--muted:#606d64;--jv-feedback-time:250ms;--jv-feedback-ease:ease-out}
.window.refined .ui-primary-nav>a{min-height:44px;display:inline-flex;align-items:center}
.window.refined .footer-meta>a{min-height:44px;display:inline-flex;align-items:center}
.window.refined .ui-action:not(.ui-action-primary){border-color:var(--field-line)}
.window.refined .ui-lightbox .ui-action{border-color:#93a398}
.window.refined .ui-interest-option input:not(:checked)+span{border-color:var(--field-line)}
.window.refined :is(button,a,summary){touch-action:manipulation}
.window.refined .ui-dialog{overscroll-behavior:contain}

/* Text links keep their original borders. No pseudo-elements replace image gradients. */
.window.refined :is(.text-link,.ui-related-link,.ui-primary-nav>a,.ui-section-nav a,.ui-menu-secondary,.footer nav a,.footer-meta>a,.hero-next){
 background-image:linear-gradient(currentColor,currentColor);
 background-repeat:no-repeat;background-position:left bottom;background-size:0% 1px;
}
.window.refined :is(.text-link,.ui-related-link,.ui-primary-nav>a,.ui-section-nav a,.ui-menu-secondary,.footer nav a,.footer-meta>a,.hero-next):is(:hover,:focus-visible){background-size:100% 1px}

@media(prefers-reduced-motion:no-preference){
 .window.refined .jv-lift{
  transition:transform var(--jv-feedback-time) var(--jv-feedback-ease),box-shadow var(--jv-feedback-time) var(--jv-feedback-ease),color var(--jv-feedback-time) var(--jv-feedback-ease),background-color var(--jv-feedback-time) var(--jv-feedback-ease),border-color var(--jv-feedback-time) var(--jv-feedback-ease),background-size var(--jv-feedback-time) var(--jv-feedback-ease);
 }
 .window.refined .jv-lift:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px) scale(.995);box-shadow:0 1px 4px #24372e0a}
 .window.refined :is(.text-link,.ui-related-link,.ui-primary-nav>a,.ui-section-nav a,.ui-menu-secondary,.footer nav a,.footer-meta>a,.hero-next){
  transition:background-size 250ms ease-out,color 250ms ease-out,border-color 250ms ease-out,transform 250ms ease-out,box-shadow 250ms ease-out;
 }
 .window.refined :is(.photo>img,.ui-gallery-photo>img,.feature-image img){transition:transform 300ms ease-out}
 .window.refined :is(.arrow,.ui-contact-button>span,.ui-related-link>span,.choice-links i,.connection-next){transition:transform 250ms ease-out}
}
@media(prefers-reduced-motion:no-preference) and (hover:hover) and (pointer:fine){
 .window.refined .jv-lift:not(:disabled):not([aria-disabled=true]):hover{transform:translateY(-2px);box-shadow:0 7px 20px #24372e12}
 .window.refined .jv-lift:not(:disabled):not([aria-disabled=true]):active{transform:translateY(1px) scale(.995);box-shadow:0 1px 4px #24372e0a}
 /* A nested control owns its feedback; the surrounding card does not move twice. */
 .window.refined .jv-lift:has(.jv-lift:is(:hover,:active)){transform:none;box-shadow:none}
}

/* A two-color ring stays legible on ivory, dark buttons and photographs. */
.window.refined :is(a,button,summary,input,textarea,select):focus-visible{
 outline:2px solid #faf9f5;outline-offset:2px;box-shadow:0 0 0 5px #365e48!important;
}
.window.refined :is(.ui-section-nav a,.ui-explorer-tabs button):focus-visible{
 outline:2px solid currentColor;outline-offset:-5px;box-shadow:none!important;
}
.window.refined .ui-interest-option input:focus-visible+span{outline:2px solid #faf9f5;outline-offset:2px;box-shadow:0 0 0 5px #365e48}
.window.refined :is(h2,h3,main)[tabindex='-1']:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
.window.refined :is(button,a,summary){scroll-margin-block:110px 28px}
.window.refined .ui-section-nav~main :is(button,a,summary){scroll-margin-top:170px}
@media(max-width:800px){.window.refined :is(button,a,summary){scroll-margin-top:90px}}
@media(prefers-reduced-motion:reduce){
 .window.refined :is(.jv-lift,.choice-links i,.connection-next){transform:none!important;transition:none!important;animation:none!important}
 .window.refined :is(.text-link,.ui-related-link,.ui-primary-nav>a,.ui-section-nav a,.ui-menu-secondary,.footer nav a,.footer-meta>a,.hero-next){transition:none!important}
}
@media(forced-colors:active){
 .window.refined :is(a,button,summary,input,textarea,select):focus-visible,
 .window.refined .ui-interest-option input:focus-visible+span{outline:2px solid Highlight;box-shadow:none!important}
 .window.refined :is(.text-link,.ui-related-link,.ui-primary-nav>a,.ui-section-nav a,.ui-menu-secondary,.footer nav a,.footer-meta>a,.hero-next):is(:hover,:focus-visible){text-decoration:underline}
}
/* A shared visual vocabulary: home, stay and the people who deliver care. */
.window.refined .jv-icon{display:block;width:28px;height:28px;flex:none;color:var(--accent)}
.window.refined .jv-business-atlas{display:grid;grid-template-columns:.85fr 1.8fr;gap:7%;padding:40px 0 44px;margin:0;border-block:1px solid var(--line);background:none}
.window.refined .jv-business-atlas figcaption>.eyebrow{display:block;margin-bottom:23px}
.window.refined .jv-business-atlas figcaption>p{font:clamp(25px,2.35vw,35px)/1.8 var(--serif);margin:0}
.window.refined .jv-atlas-note{display:block;margin-top:25px;color:var(--muted);font-size:15px;line-height:2}
.window.refined .jv-atlas-network{min-width:0}
.window.refined .jv-atlas-places{display:grid;grid-template-columns:1fr 1fr;gap:30px}
.window.refined .jv-atlas-place{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;padding:12px 8px;position:relative}
.window.refined .jv-atlas-place>.jv-icon{width:62px;height:62px;margin-bottom:18px;stroke-width:1.1}
.window.refined .jv-atlas-label{font-size:12px;color:var(--muted);letter-spacing:.04em}
.window.refined .jv-atlas-place>strong{font:clamp(23px,2.3vw,33px)/1.7 var(--serif);letter-spacing:-.01em;display:flex;align-items:center;gap:13px}
.window.refined .jv-atlas-place>strong>span{font:18px/1 var(--sans)}
.window.refined .jv-atlas-place>small{font-size:14px;line-height:1.9;margin-top:4px;color:var(--muted);text-wrap:balance}
.window.refined .jv-atlas-place.jv-service-3{width:100%;margin-inline:auto}
.window.refined .jv-atlas-place.jv-service-3>.jv-icon{width:58px;height:58px;margin-bottom:12px}
.window.refined .jv-atlas-connection{position:relative;height:80px;margin:4px 0 8px;color:var(--muted)}
.window.refined .jv-diagram-lines{display:block;width:100%;height:100%;stroke:#718477;stroke-width:1.1}
.window.refined .jv-atlas-connection>span{position:absolute;top:20px;left:50%;transform:translateX(-50%);padding:4px 12px;background:var(--paper);font-size:12px;line-height:1.8;white-space:nowrap;text-align:center}
.window.refined .jv-service-entry>.jv-icon{grid-column:1;grid-row:1/3;width:28px;height:28px;align-self:center}
.window.refined .hero-services>a.jv-service-entry{grid-template-columns:36px minmax(0,1fr) 20px;gap:2px 15px}
.window.refined .hero-services>a.jv-service-entry>span:not(.arrow){grid-column:2;font-size:17px}
.window.refined .hero-services>a.jv-service-entry>em{grid-column:2}
.window.refined .hero-services>a.jv-service-entry>.arrow{grid-column:3;grid-row:1/3}
.window.refined .life-pillars>span{display:flex;align-items:center;gap:17px}
.window.refined .life-pillars .jv-icon{width:32px;height:32px}
.window.refined .jv-business-feature .feature-folio{display:flex;align-items:center;gap:14px}
.window.refined .jv-business-feature .feature-folio>.jv-icon{width:29px;height:29px}
.window.refined .business-feature.jv-business-feature .feature-image>.photo{height:auto;aspect-ratio:3/2}
.window.refined .business-feature.feature-1.jv-business-feature .feature-image>.photo{aspect-ratio:1672/941}
.window.refined .jv-business-feature .feature-image img{object-position:center;object-fit:contain}
.window.refined .jv-photo-caption{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:15px;font-size:12px;line-height:1.8;color:var(--muted)}
.window.refined .jv-photo-caption>span{font-size:20px}
.window.refined .jv-business-steps{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px;padding:22px 0;margin:24px 0 8px;border-block:1px solid var(--line)}
.window.refined .jv-business-steps>li{display:flex;flex-direction:column;align-items:flex-start;gap:12px;font-size:13px;line-height:1.7;min-width:0}
.window.refined .jv-business-steps .jv-icon{width:30px;height:30px}
.window.refined .ui-menu-link>.jv-menu-role{display:flex;align-items:center;gap:12px;line-height:1.7}
.window.refined .jv-menu-role .jv-icon{width:25px;height:25px}
.window.refined .breadcrumb [aria-current=page]{display:flex;align-items:center;gap:10px;line-height:1.6;color:var(--ink)}
.window.refined .breadcrumb .jv-icon{width:20px;height:20px}
.window.refined .ui-section-label{display:flex;align-items:center;gap:10px;letter-spacing:.04em}
.window.refined .ui-section-label .jv-icon{width:22px;height:22px}
.window.refined .related.photo-related a>div>small{display:flex;align-items:center;gap:10px;line-height:1.7;text-transform:none;letter-spacing:.04em}
.window.refined .related.photo-related .jv-icon{width:23px;height:23px}
.window.refined .jv-diagram{margin:0;padding:28px 0;border-block:1px solid var(--line);background:none;min-width:0}
.window.refined .jv-place-sequence,.window.refined .jv-stay-parts{display:grid;grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr) 16px minmax(0,1fr);align-items:start;gap:8px;text-align:center}
.window.refined :is(.jv-place-sequence,.jv-stay-parts)>div{min-width:0}
.window.refined :is(.jv-place-sequence,.jv-stay-parts) .jv-icon{width:48px;height:48px;margin:0 auto 21px;stroke-width:1.2}
.window.refined :is(.jv-place-sequence,.jv-stay-parts)>span{padding-top:12px;font-size:19px;color:var(--muted)}
.window.refined .jv-diagram h3{font:16px/1.8 var(--serif);margin:0 0 9px;text-wrap:balance}
.window.refined .jv-diagram p{font-size:14px;color:var(--muted);line-height:1.9;margin:0}
.window.refined .jv-living-diagram>figcaption{font-size:14px;line-height:1.9;text-align:center;margin-top:24px;color:var(--muted)}
.window.refined .jv-care-branch{display:grid;grid-template-columns:30px 38px minmax(0,1fr);gap:13px;align-items:start;margin-top:18px;padding-top:15px}
.window.refined .jv-care-line{width:30px;height:48px;stroke:#718477;stroke-width:1.4;align-self:start;margin-top:-18px}
.window.refined .jv-care-branch>.jv-icon{width:36px;height:36px}
.window.refined .jv-care-branch h3{font-size:20px;margin-bottom:9px}
.window.refined .jv-care-branch p br{display:none}
.window.refined .jv-stay-diagram .jv-atlas-connection{height:40px;transform:rotate(180deg);margin:20px 0 10px}
.window.refined .jv-stay-diagram>figcaption{text-align:center}
.window.refined .jv-stay-diagram>figcaption>strong{font:25px/1.7 var(--serif);display:block;margin-bottom:16px}
.window.refined .jv-crew-diagram{max-width:880px;margin:0 auto 60px;padding:26px 0 30px}
.window.refined .jv-crew-diagram>figcaption{display:flex;justify-content:center;align-items:center;gap:22px}
.window.refined .jv-crew-diagram>figcaption>.jv-icon{width:60px;height:60px;stroke-width:1.2}
.window.refined .jv-crew-diagram>figcaption strong{font:32px/1.7 var(--serif)}
.window.refined .jv-crew-destinations{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.window.refined .jv-crew-destinations>*{display:flex;flex-direction:column;align-items:center;text-align:center;gap:15px;min-width:0;font-size:14px;line-height:1.7;padding:10px 0}
.window.refined .jv-crew-destinations .jv-icon{width:45px;height:45px;stroke-width:1.2}
.window.refined .inner-cover.jv-service-cover{height:auto;aspect-ratio:3/2;max-width:1180px}
.window.refined .jv-service-cover>img{object-position:50% 50%}
@media(hover:hover) and (pointer:fine){
 .window.refined .jv-atlas-place:hover strong,.window.refined .jv-crew-destinations>a:hover>span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}
}
@media(max-width:1000px){
 .window.refined .jv-business-atlas{grid-template-columns:1fr 1.7fr;gap:5%}
 .window.refined .jv-atlas-places{gap:16px}
 .window.refined .hero-services>a.jv-service-entry{gap:2px 10px}
}
@media(max-width:800px){
 .window.refined .jv-business-atlas{grid-template-columns:1fr;gap:32px;padding:30px 0}
 .window.refined .jv-business-atlas>figcaption{display:grid;grid-template-columns:1fr 1fr;gap:12px 28px;align-items:center}
 .window.refined .jv-business-atlas figcaption>.eyebrow{grid-column:1/-1;margin:0}
 .window.refined .jv-atlas-note{margin:0;font-size:14px}
 .window.refined .jv-atlas-network{max-width:600px;width:100%;margin:auto}
 .window.refined .ui-section-nav{position:sticky;top:70px;min-height:48px;padding-inline:22px;gap:20px}
 .window.refined .ui-section-nav a{min-height:48px;padding-block:12px 10px;font-size:13px}
 .window.refined .ui-section-nav>div{gap:22px;min-width:0;flex:1}
 .window.refined .ui-section-label{display:none}
 html:has(body.window.refined .ui-section-nav){scroll-padding-top:132px}
 .window.refined .inner-cover.jv-service-cover{height:auto;aspect-ratio:3/2}
}
@media(max-width:600px){
 .window.refined .hero-services>a.jv-service-entry{display:grid;grid-template-columns:minmax(0,1fr);justify-items:start;align-content:start;gap:5px;min-height:118px;padding-block:18px}
 .window.refined .hero-services>a.jv-service-entry>.jv-icon{grid-row:1;grid-column:1;width:29px;height:29px;margin-bottom:7px}
 .window.refined .hero-services>a.jv-service-entry>span:not(.arrow){grid-column:1;grid-row:2;font-size:14px;white-space:nowrap}
 .window.refined .hero-services>a.jv-service-entry>em{grid-column:1;grid-row:3;font-size:11px}
 .window.refined .hero-services>a.jv-service-entry>.arrow{display:none}
 .window.refined .jv-business-atlas>figcaption{display:block}
 .window.refined .jv-business-atlas figcaption>.eyebrow{margin-bottom:16px}
 .window.refined .jv-business-atlas figcaption>p{font-size:25px;line-height:1.8}
 .window.refined .jv-atlas-note{margin-top:15px}
 .window.refined .jv-atlas-place{padding:8px 0}
 .window.refined .jv-atlas-place>.jv-icon{width:51px;height:51px}
 .window.refined .jv-atlas-place>strong{font-size:clamp(20px,5.8vw,24px);gap:8px}
 .window.refined .jv-atlas-place>strong>span{font-size:15px}
 .window.refined .jv-atlas-place>small{font-size:13px;max-width:11em}
 .window.refined .jv-atlas-place.jv-service-3>small{max-width:none}
 .window.refined .jv-atlas-connection>span{font-size:11px;padding-inline:8px}
 .window.refined .jv-photo-caption{font-size:11px;letter-spacing:0}
 .window.refined .jv-business-steps{gap:12px;margin-top:21px;padding-block:19px}
 .window.refined .jv-business-steps>li{font-size:12px;gap:10px}
 .window.refined .life-pillars>span{gap:12px}
 .window.refined .life-pillars .jv-icon{width:26px;height:26px}
 .window.refined .jv-crumb-en{display:none}
 .window.refined .jv-place-sequence,.window.refined .jv-stay-parts{gap:5px;grid-template-columns:minmax(0,1fr) 10px minmax(0,1fr) 10px minmax(0,1fr)}
 .window.refined :is(.jv-place-sequence,.jv-stay-parts) .jv-icon{width:39px;height:39px;margin-bottom:18px}
 .window.refined .jv-diagram h3{font-size:15px}
 .window.refined .jv-diagram p{font-size:13px}
 .window.refined .jv-diagram p br{display:none}
 .window.refined .jv-care-branch{grid-template-columns:18px 31px minmax(0,1fr);gap:10px}
 .window.refined .jv-care-line{width:18px}
 .window.refined .jv-care-branch>.jv-icon{width:31px;height:31px}
 .window.refined .jv-care-branch h3{font-size:20px}
 .window.refined .jv-living-diagram>figcaption{font-size:13px}
 .window.refined .jv-stay-diagram>figcaption>strong{font-size:23px}
 .window.refined .jv-crew-diagram>figcaption{gap:16px}
 .window.refined .jv-crew-diagram>figcaption>.jv-icon{width:48px;height:48px}
 .window.refined .jv-crew-destinations{gap:12px}
 .window.refined .jv-crew-destinations>*{font-size:12px}
 .window.refined .jv-crew-destinations .jv-icon{width:37px;height:37px}
}
@media(max-height:450px){
 .window.refined .ui-section-nav{position:relative;top:auto}
 html:has(body.window.refined .ui-section-nav){scroll-padding-top:96px}
}
