@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--paper:#f5f3ed;--ink:#252723;--orange:#ff693c}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif}header,footer{display:flex;align-items:center;justify-content:space-between;padding:28px 4vw;font-size:11px;letter-spacing:.18em;font-weight:600}header{animation:enter .8s both}svg.asterisk{width:33px;height:33px;stroke:currentColor;stroke-width:5;animation:spin 30s linear infinite}.tiny-dot{height:10px;width:10px;border-radius:50%;background:var(--orange)}main{overflow:hidden}.hero{padding:50px 4vw 0}.headline{display:flex;justify-content:space-between;align-items:flex-end;margin:0 0 48px}h1{font-family:'Manrope',sans-serif;font-size:clamp(56px,8.6vw,150px);font-weight:500;letter-spacing:-.075em;line-height:1.02;margin:0;animation:enter 1s .1s both}h1 em{font-style:normal;color:var(--orange)}.arrow{width:7vw;min-width:44px;max-width:120px;stroke:var(--orange);stroke-width:2;fill:none;margin:0 2vw 6px 20px;animation:enter 1.2s .3s both}figure{margin:0;position:relative;overflow:hidden}.hero-photo{height:clamp(360px,43vw,710px);border-radius:3px;animation:enter 1.2s .25s both}.hero-photo img{width:100%;height:115%;object-fit:cover;object-position:center 60%;will-change:transform}.image-index{position:absolute;top:24px;left:25px;color:white;font-size:14px;letter-spacing:.14em;text-shadow:0 1px 8px #0009}.circle{position:absolute;bottom:30px;right:30px;width:112px;height:112px;border-radius:50%;background:var(--orange);display:grid;place-items:center}.circle span{font-size:76px;line-height:1;animation:spin 22s linear infinite;color:var(--ink)}.gallery{padding:100px 9vw 100px;display:grid;grid-template-columns:1fr 1.1fr;gap:7vw;align-items:start}.portrait{border-radius:260px 260px 3px 3px;height:650px;margin-top:20px}.portrait img,.landscape img{height:100%;width:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.65,.3,1)}figure:hover img{transform:scale(1.035)}.portrait .image-index{top:auto;bottom:25px}.gallery-right{display:flex;flex-direction:column;gap:65px}.landscape{height:350px;border-radius:3px}.orbit{height:230px;display:grid;place-items:center;position:relative}.orbit span{width:210px;height:140px;border:1px solid #c6c8bd;border-radius:50%;position:absolute;transform:rotate(-30deg)}.orbit:after{content:'';position:absolute;width:210px;height:140px;border:1px solid #c6c8bd;border-radius:50%;transform:rotate(30deg)}.orbit i{font-style:normal;font-size:125px;color:var(--orange);animation:spin 45s linear infinite}footer{margin:0 4vw;padding:25px 0 38px;border-top:1px solid #d9d9d0}footer .asterisk{width:24px;height:24px}.reveal{opacity:1}.js-motion .reveal{opacity:0;transform:translateY(35px);transition:opacity .9s,transform .9s}.js-motion .reveal.visible{opacity:1;transform:none}@keyframes spin{to{transform:rotate(360deg)}}@keyframes enter{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
#dify-chatbot-bubble-button{background-color:#1C64F2!important;box-shadow:0 6px 25px #0003!important}#dify-chatbot-bubble-window{width:24rem!important;height:40rem!important;max-width:calc(100vw - 2rem)!important;max-height:calc(100dvh - 6rem)!important}
@media(max-width:700px){header{padding:24px 6vw}.hero{padding:30px 6vw 0}.headline{margin-bottom:30px}h1{font-size:clamp(49px,10.7vw,76px)}.hero-photo{height:440px}.hero-photo img{height:100%;object-position:55% center}.circle{width:80px;height:80px;right:20px;bottom:20px}.circle span{font-size:55px}.gallery{padding:65px 6vw;gap:25px;grid-template-columns:1fr 1fr}.portrait{height:360px}.gallery-right{gap:30px}.orbit{height:150px}.orbit span,.orbit:after{width:120px;height:90px}.orbit i{font-size:85px}.landscape{height:200px}.image-index{left:17px;top:17px;font-size:11px}.arrow{margin-left:10px}footer{margin:0 6vw}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.js-motion .reveal{opacity:1;transform:none}}
#dify-chatbot-bubble-button:focus-visible{outline:3px solid #252723;outline-offset:5px}
/* Keep the native widget in the viewport when its input receives focus. */
#dify-chatbot-bubble-window{position:fixed!important;top:auto!important;left:auto!important;right:1rem!important;bottom:5rem!important}
