/* Shared access, language navigation and readable legal pages. */
.brand{min-height:44px;display:flex;align-items:center}
.icon-button{width:44px;height:44px;flex-shrink:0}
.header-contact,.scroll-cue,.text-link{min-height:44px;align-items:center}
.story-nav button{min-width:44px;min-height:44px}
.contact :focus-visible,.site-footer-shell :focus-visible,.perspective :focus-visible{outline-color:var(--mint)}
.motion-toggle[data-paused=true]{background:#e3eae2}
[tabindex="-1"]:focus:not(:focus-visible){outline:none}
html{scroll-padding-top:110px}
.story-step{scroll-margin-top:110px}
.language-switch{display:inline-flex;align-items:center;padding:3px;background:#e5ece3;border-radius:9px;direction:ltr;flex-shrink:0}
.language-switch a{display:grid;place-items:center;min-width:42px;min-height:38px;padding:6px 9px;font-size:12px;font-weight:600;line-height:1;border-radius:6px;color:var(--ink);text-decoration:none}
.language-switch a[aria-current=page]{background:var(--forest);color:var(--paper)}
.language-switch a:focus-visible{outline-offset:2px}
.header-actions{gap:14px}
.site-footer-shell{background:var(--forest);color:var(--paper)}
.site-footer{display:grid;grid-template-columns:auto 1fr auto;gap:18px 30px}
.site-footer p{text-align:center}
.legal-links{grid-column:1/-1;display:flex;flex-wrap:wrap;justify-content:center;gap:6px 28px;font-size:13px;color:#c9dfd1}
.legal-links a{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:5px}
.legal-page{max-width:860px;padding-block:64px 100px;min-height:65svh}
.legal-page h1{font-size:clamp(36px,5vw,62px);line-height:1.2;font-weight:550;letter-spacing:-.03em;margin-block:26px 18px}
.legal-page .legal-lead{font-size:20px;color:var(--muted);line-height:1.75}
.legal-page .legal-date{font-size:14px;color:var(--muted);margin-block:14px 38px}
.legal-page section{margin-top:36px}
.legal-page h2{font-size:25px;line-height:1.45;font-weight:550;margin-bottom:12px}
.legal-page p,.legal-page li{font-size:17px;line-height:1.9}
.legal-page p+p{margin-top:14px}
.legal-page ul{padding-inline-start:24px;margin-block:12px}
.legal-page li+li{margin-top:9px}
.legal-page a:not(.back-link){text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}
.back-link{display:inline-flex;align-items:center;min-height:44px;gap:12px;text-decoration:underline;text-underline-offset:5px;font-size:15px}
.legal-contact{padding:24px;background:#e8efe5;border-radius:12px;margin-top:24px}
.legal-contact a{display:inline-flex;align-items:center;min-height:44px}
/* LTR retains the composition, while English gets room to breathe. */
html[dir=ltr] .hero h1{font-size:clamp(62px,6.5vw,98px);line-height:1.08;white-space:normal;letter-spacing:-.04em}
html[dir=ltr] .hero-description{max-width:470px}
html[dir=ltr] .business-scene{direction:ltr}
html[dir=ltr] .button-arrow>.icon,html[dir=ltr] .text-link>.icon,html[dir=ltr] .header-contact>.icon{transform:scaleX(-1)}
html[dir=ltr] .step-index{left:0;right:auto}
html[dir=ltr] .faq-list p{padding-left:0;padding-right:30px}
html[dir=ltr] .skip-link{right:auto;left:20px}
html[dir=ltr] .perspective h2{font-size:clamp(50px,5.8vw,84px)}
html[dir=ltr] .story-heading h2{font-size:clamp(36px,4.1vw,58px)}
html[dir=ltr] .story-step h3{font-size:clamp(38px,4vw,56px)}
html[dir=ltr] .approach h2{font-size:clamp(40px,5vw,72px)}
html[dir=ltr] .contact h2{font-size:clamp(48px,5.5vw,80px)}
html[dir=ltr] .detail-ribbon{font-size:clamp(30px,4.5vw,64px);white-space:normal}
html[dir=ltr] .contact-number{padding-inline-start:4px;padding-inline-end:0}
@media(max-width:1180px){.header-contact{display:none}.header-inner{gap:18px}.desktop-nav{gap:22px}}
@media(max-width:900px){html[dir=ltr] .hero h1{font-size:clamp(56px,9vw,82px)}.story-step{scroll-margin-top:100px}.site-footer{gap:15px 24px}}
@media(max-width:760px){
 .header-inner{gap:12px}.header-actions{gap:8px}.icon-button{width:44px;height:44px;padding:10px}.brand img{width:96px;height:auto}.language-switch a{min-width:36px;min-height:38px;padding-inline:6px}.language-switch{padding:3px}.site-footer{grid-template-columns:1fr auto}.site-footer p{text-align:start;grid-row:2;grid-column:1/-1}.legal-links{justify-content:flex-start;gap:4px 20px}.legal-page{padding-block:35px 65px}.legal-page h1{font-size:40px}.legal-page .legal-lead{font-size:18px}.legal-page p,.legal-page li{font-size:16px}.legal-contact{padding:20px}
 html[dir=ltr] .hero h1{font-size:clamp(48px,10vw,74px)}html[dir=ltr] .hero-description{font-size:17px;max-width:400px}html[dir=ltr] .hero-description br{display:none}html[dir=ltr] .perspective h2{font-size:clamp(42px,8vw,60px)}html[dir=ltr] .story-heading h2{font-size:37px}html[dir=ltr] .story-step h3{font-size:39px}html[dir=ltr] .approach h2{font-size:39px}html[dir=ltr] .contact h2{font-size:clamp(43px,9vw,64px)}html[dir=ltr] .detail-ribbon{font-size:clamp(22px,4.8vw,36px);gap:10px}
}
@media(max-width:360px){.header-actions{gap:5px}.header-inner{gap:8px}.brand img{width:82px}.language-switch a{min-width:33px;padding-inline:5px}.header-inner.wrap{width:calc(100% - 24px)}html[dir=ltr] .hero h1{font-size:46px}html[dir=ltr] .story-heading h2{font-size:32px}html[dir=ltr] .detail-ribbon{font-size:19px}}
@media(min-width:901px) and (max-height:620px){.hero{height:auto;padding-block:30px}.hero-inner{position:relative;top:auto;height:auto;min-height:530px}.hero-art{height:510px}.hero-bottom{position:static;transform:none;margin-inline:auto;margin-top:24px}.story-stage{position:relative;top:auto}.story-step{min-height:620px}}
@media(forced-colors:active){.language-switch a[aria-current=page]{outline:2px solid Highlight;outline-offset:-3px}.button,.icon-button,.business-toggle{border:1px solid ButtonText}.business-building{forced-color-adjust:none}}
@media print{.language-switch,.legal-links,.back-link{display:none}.site-footer-shell{background:white;color:#123c2e}.legal-page{width:100%;padding:0}.legal-contact{background:white;border:1px solid #50685b}}
.contact-privacy-note{margin:0;padding:0 max(22px,calc((100% - 900px)/2)) 30px;background:var(--forest);color:#c9dfd1;text-align:center;font-size:13px;line-height:1.8}
.contact-privacy-note a{text-decoration:underline;text-underline-offset:4px;display:inline-flex;align-items:center;min-height:44px;margin-inline-start:5px}
.contact-privacy-note :focus-visible{outline-color:var(--mint)}
/* Full target areas, including the compact language navigation. */
.language-switch a{min-width:44px;min-height:44px}
.desktop-nav a{display:flex;align-items:center;justify-content:center;min-width:44px;min-height:44px}
html[dir=ltr] .deduction-focus{left:auto;right:-12px}
.hero-contact-note a{display:inline-flex;align-items:center;min-height:30px;padding-inline:5px;text-decoration:underline;text-underline-offset:4px}
