
:root{--font-display:Georgia, "Times New Roman", serif;--font-body:system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;--paper:#fafaf8;--ink:#17211f;--muted:#4f5d5a;--line:#c9d1ce;--accent:#2b5c6b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:300 1.0625rem/1.7 var(--font-body)}h1,h2,h3,.signature{font-family:var(--font-display);font-weight:400}a{color:var(--accent);text-underline-offset:4px}button{font:inherit;cursor:pointer}.review{padding:8px 20px;background:#edf0ee;font-size:0.75rem;display:flex;flex-wrap:wrap;gap:12px;align-items:center}.review select{font:inherit}.review label{margin-left:auto}.entry{text-align:center;padding:55px 24px 35px}.entry h1{color:#080808;font-size:7rem;line-height:1;margin:0 0 22px}.phonetic{font:1.0625rem/1.5 var(--font-mono);color:#555;margin:0}.signature{font-size:1.875rem;line-height:1.45;max-width:630px;margin:52px auto 25px}.entry a{font-size:0.875rem}.intro,.work,.collaborate,.contact{max-width:1000px;margin:auto;padding:38px 28px}.intro{max-width:760px;padding-top:26px;padding-bottom:24px}.intro p{margin:0 0 16px}.identity{font-size:0.875rem}.intro .description{font-size:1.0625rem}.work{border-top:1px solid var(--line);scroll-margin-top:20px}.work h2,.collaborate h2{font-size:2.0625rem;margin:0 0 25px}.case{display:grid;grid-template-columns:1fr 1fr;gap:30px}.case h3{font-size:1.5625rem;line-height:1.3;margin:0 0 18px}.case figure{margin:0}.image-button{display:block;border:0;padding:0;background:transparent;width:100%}.case img{display:block;width:100%;height:auto;border:1px solid var(--line);border-radius:6px}.caption{font-size:0.75rem;color:var(--muted);line-height:1.5;margin-top:10px}.case p{margin-top:0}.limit{font-size:0.875rem;color:var(--muted)}.status{display:inline-block;font-size:0.75rem;border:1px solid var(--line);padding:3px 10px;border-radius:20px;margin:5px 0 15px}.future{font-size:0.8125rem;color:var(--muted);margin:26px 0 0;padding-top:15px;border-top:1px solid var(--line)}.collaborate{border-top:1px solid var(--line);margin-top:30px}.ways{display:grid;grid-template-columns:1fr 1fr;gap:30px}.ways h3{font-size:1.5rem;line-height:1.3;margin:0 0 15px}.ways p{font-size:1rem}.contact{border-top:1px solid var(--line);font-size:0.9375rem;padding-bottom:60px}.contact h2{font-size:1.75rem}.proposal{font-size:0.75rem;color:var(--muted)}dialog{border:0;padding:18px;max-width:95vw;max-height:95vh;background:var(--paper)}dialog::backdrop{background:#101615e8}dialog img{display:block;max-width:85vw;max-height:80vh;object-fit:contain}dialog button{display:block;margin:0 0 10px auto}.plain .review,.plain .future,.plain .proposal,.plain footer{display:none}footer{padding:20px 28px;font-size:0.75rem;color:var(--muted)}
@media(max-width:640px){.entry{padding:40px 20px 26px}.entry h1{font-size:6rem;margin-bottom:20px}.phonetic{font-size:0.8125rem}.signature{font-size:1.5rem;line-height:1.4;margin:35px auto 23px;max-width:340px}.intro,.work,.collaborate,.contact{padding-left:20px;padding-right:20px}.intro{padding-top:24px}.intro .description{font-size:1rem}.work{padding-top:25px}.work h2{font-size:1.8125rem;margin-bottom:18px}.case{display:flex;flex-direction:column;gap:20px}.case h3{font-size:1.4375rem}.ways{grid-template-columns:1fr;gap:22px}.ways section+section{padding-top:22px;border-top:1px solid var(--line)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
.actions{display:none;gap:10px;flex-wrap:wrap;margin:20px 0 0}.with-actions .actions{display:flex}.actions a{display:inline-block;padding:10px 16px;border:1px solid var(--accent);border-radius:6px;text-decoration:none;font-size:0.9375rem}.actions a:first-child{background:var(--accent);color:white}@media(max-width:640px){.actions a{flex:1;text-align:center;min-width:145px}}.entry{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:70px 24px 85px;position:relative}.entry h1{margin-top:0}.entry .signature{margin-top:55px}.entry .enter{position:absolute;bottom:25px;display:flex;flex-direction:column;align-items:center;gap:3px;text-decoration:none;font-size:0.8125rem}.enter .arrow{font-size:1.875rem;line-height:1.2}.intro{scroll-margin-top:20px}.plain .review{display:none}@media(max-width:640px){.entry{padding:65px 20px 95px}.entry .signature{margin-top:48px;font-size:1.5625rem;max-width:340px}.entry h1{font-size:6.5rem}.entry .enter{bottom:22px}}
.entry{justify-content:flex-start;padding:35px 24px 25px;gap:24px}
.entry-content{flex:1;display:flex;flex-direction:column;justify-content:center;align-items:center;width:100%}
.entry .enter{position:static;margin-top:auto;flex-shrink:0}
.signature span{display:block}.entry .signature{width:100%}
.dest{display:block;font-size:0.75rem;color:var(--muted);margin-top:8px}.plain .dest{display:none}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.image-scroll{overflow:auto;max-width:85vw;max-height:75svh}.image-scroll img{max-height:75svh;max-width:85vw}
.image-scroll.real img{max-width:none;max-height:none;object-fit:initial}
.dialog-controls{display:flex;gap:12px;justify-content:flex-end;margin-bottom:12px}.dialog-controls button{margin:0}
@media(max-width:640px){.entry{padding:35px 20px 22px;gap:22px}.entry .signature{margin-top:48px}}
@media(max-height:600px){.entry{padding-top:20px;gap:16px}.entry h1{font-size:4.5rem}.entry .signature{font-size:1.125rem;line-height:1.4;margin-top:24px;margin-bottom:16px}}
@media(max-width:320px){.entry .signature{font-size:1.0625rem}}
.solutions{max-width:1000px;margin:auto;padding:32px 28px 38px;scroll-margin-top:20px}.solutions h2{font-size:2.0625rem;margin:0 0 20px}.solution{border:1px solid var(--line);border-radius:6px;padding:26px}.solution h3{font-size:1.5625rem;margin:0 0 12px}.solution p{margin:0 0 16px}.solution .solution-link{display:inline-block;padding:10px 16px;border:1px solid var(--accent);border-radius:6px;text-decoration:none}.solution .proposal{margin-top:18px;margin-bottom:0}@media(max-width:640px){.solutions{padding:28px 20px}.solution{padding:20px}.solutions h2{font-size:1.8125rem}}
.solution .solution-scope{margin-top:18px}.catnat-offers{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.catnat-offers summary{cursor:pointer;color:var(--accent);text-underline-offset:4px}.offer-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;padding-top:24px}.offer-grid h4{font-family:var(--font-display);font-weight:400;font-size:1.375rem;line-height:1.4;margin:0 0 12px}.offer-grid .offer-price{font-family:var(--font-display);font-size:1.75rem}.offer-price span{font-family:var(--font-body);font-size:0.875rem}.solution .offer-availability{font-size:0.875rem;margin:8px 0 0;color:var(--muted)}@media(max-width:640px){.offer-grid{grid-template-columns:1fr;gap:20px}.offer-grid section+section{border-top:1px solid var(--line);padding-top:20px}}

.world-nav{display:flex;flex-wrap:wrap;gap:12px 24px;margin:24px 0 12px;font-size:0.9375rem}.world-section{max-width:1000px;margin:auto;padding:38px 28px;border-top:1px solid var(--line)}.world-section h2{font-size:2.0625rem;margin:0 0 18px}.world-section .grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.world-section h3{font-size:1.5rem;margin:0 0 16px}.world-section p{max-width:700px}@media(max-width:640px){.world-section{padding:28px 20px}.world-section .grid{grid-template-columns:1fr}.world-section h2{font-size:1.8125rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.morph-hero{min-height:100%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:center;gap:clamp(1rem,4vw,4rem);
  padding:clamp(1.5rem,5vw,5rem);max-width:1320px;margin:0 auto}
.morph-hero .kicker{font-size:.85rem;letter-spacing:.02em;color:var(--muted);margin:0 0 1.25rem}
.morph-hero h2{font-family:var(--serif);font-weight:400;font-size:clamp(2.1rem,4.4vw,3.6rem);line-height:1.08;margin:0 0 1.25rem;max-width:14ch}
.morph-hero .sub{font-size:1.05rem;line-height:1.6;color:#3d4745;max-width:40ch;margin:0}
.morph-hero .visual{position:relative;width:100%;aspect-ratio:1/1;max-height:82vh;justify-self:center}
.morph-hero .visual canvas{display:block;width:100%;height:100%}
.morph-hero .pause{position:absolute;right:0;bottom:0;font:inherit;font-size:.78rem;color:var(--muted);background:none;border:0;padding:.5rem 0;cursor:pointer;
  text-decoration:underline;text-underline-offset:3px;min-height:2.5rem}
.morph-hero .pause:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:760px){.morph-hero{grid-template-columns:1fr}.morph-hero .visual{max-height:none}}


:root{--serif:var(--font-display);--sans:var(--font-body)}
.entry{min-height:100svh;padding-top:calc(var(--nav-height) + 28px);padding-bottom:24px}
.entry h1{font-family:var(--font-logo);font-size:clamp(5.5rem,11vw,8rem);white-space:nowrap}.entry .signature{margin-top:40px;font-size:clamp(1.375rem,2.6vw,1.875rem)}
.morph-hero{min-height:calc(100svh - var(--nav-height));padding-top:40px;padding-bottom:40px;max-width:1320px}
.morph-hero h2{max-width:16ch;font-size:clamp(2rem,4vw,3.35rem)}
.morph-hero .sub{font-size:1rem;line-height:1.7;max-width:43ch;color:var(--muted)}
.morph-hero .visual{max-height:calc(100svh - var(--nav-height) - 80px);min-width:0}
.morph-hero .pause{min-height:44px;min-width:64px;text-align:right}
.morph-hero .next-section{display:inline-block;font-size:.875rem;margin-top:24px;padding:10px 0}
.work,.solutions,.collaborate,.world-section,.contact{max-width:1120px;padding-top:64px;padding-bottom:64px}
.case,.ways{gap:48px}.intro{max-width:1120px;padding-top:32px;padding-bottom:32px}.intro .identity{margin:0}
.solutions{border-top:1px solid var(--line)}.solution{border:0;padding:0;border-radius:0}.solution .solution-link{margin-bottom:16px}.collaborate{margin-top:0}.contact{padding-bottom:80px}
.intro-description{display:none}
.world-section p,.ways p{color:#3d4745}.plain .world-section{display:block}
@media(max-width:760px){.morph-hero{gap:8px;padding:32px 20px}.morph-hero h2{max-width:22ch;font-size:clamp(1.75rem,6.8vw,2.6rem);margin-bottom:16px}.morph-hero .kicker{margin-bottom:14px}.morph-hero .sub{max-width:52ch}.morph-hero .visual{max-width:430px;max-height:none}.morph-hero .next-section{margin-top:8px}}
@media(max-width:640px){.entry{padding-top:calc(var(--nav-height) + 20px)}.entry .signature{margin-top:36px}.work,.solutions,.collaborate,.world-section,.contact{padding:40px 20px}.case,.ways{gap:24px}.intro{padding:24px 20px}.morph-hero .visual{max-width:min(360px,46svh)}.morph-hero .sub{display:none}.intro-description{display:block;margin-top:16px!important}}
@media(max-height:600px){.entry h1{font-size:4rem}.entry .signature{font-size:1.125rem;margin-top:18px;margin-bottom:12px}.entry .phonetic{font-size:.8125rem}}
