/* Optical entry: original Blender artwork, ordinary scrolling and readable HTML. */
body[data-page="home"]{background:#f8f9fa}
body[data-page="home"] .site-header.entry-header{position:absolute;top:max(16px,env(safe-area-inset-top));left:24px;right:24px;width:calc(100% - 48px);height:82px;max-width:1500px;margin-inline:auto;padding:12px 26px;border:1px solid #ffffffe6;border-radius:19px;background:linear-gradient(115deg,#ffffffc7,#e9f0eb63 58%,#ffffff9c);box-shadow:inset 0 1px 0 #fff,0 8px 35px #2e493706;backdrop-filter:blur(24px) saturate(1.12);-webkit-backdrop-filter:blur(24px) saturate(1.12)}
.entry-header .brand{display:flex;flex-direction:column;align-items:flex-start;gap:3px;flex-shrink:0}
.entry-brand-caption{font-size:8px;line-height:1.2;letter-spacing:.22em;font-weight:600;color:#212526}
.entry-brand-word{font-family:Arial,Helvetica,sans-serif;font-size:34px;line-height:.95;font-weight:700;letter-spacing:-.085em;color:#101719}
.entry-brand-word>span{color:#548671;letter-spacing:0}
.entry-header .desktop-nav{background:none;border:0;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}
.entry-header .menu-toggle{display:flex;width:46px;height:46px;gap:5px;border:1px solid #ffffffb3;background:#ffffff42;box-shadow:inset 0 1px #fff;border-radius:12px;padding:11px;flex-shrink:0}
.entry-header .menu-toggle>span{width:22px;height:1px;background:#263b31}
.entry-hero{--entry-scroll-progress:0;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);align-items:center;block-size:100svh;min-block-size:650px;padding:130px clamp(32px,6.3vw,110px) 75px;overflow:hidden;background:linear-gradient(132deg,#fff 0%,#f4f7f9 60%,#f5f5f3 100%)}
.entry-wash{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 81% 54%,#d3e2f055,transparent 47%),radial-gradient(ellipse at 41% 80%,#e9e8df3b,transparent 43%)}
.entry-copy{position:relative;z-index:2;max-width:680px;padding-bottom:35px}
.entry-copy h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(58px,6.2vw,100px);font-weight:700;line-height:1.015;letter-spacing:-.065em;color:#0e1215}
.entry-copy h1>span{display:block;white-space:nowrap}
.entry-copy p{font-size:clamp(18px,1.7vw,26px);line-height:1.42;letter-spacing:-.035em;color:#62686d;margin-top:25px}
.entry-art{position:relative;z-index:1;min-width:0;align-self:stretch;display:grid;align-items:center;justify-items:center;margin:-25px -3vw -10px -2vw;pointer-events:none;transform:translate3d(0,calc(var(--entry-scroll-progress)*65px),0) scale(calc(1 - var(--entry-scroll-progress)*.035));opacity:calc(1 - var(--entry-scroll-progress)*.18);transform-origin:50% 65%}
.entry-picture{display:block;inline-size:min(66vw,calc((100svh - 185px)*.9));max-inline-size:100%;max-block-size:100%;aspect-ratio:10/11;animation:entry-breathe 9s ease-in-out infinite;animation-play-state:paused;transform-origin:50% 65%}
.entry-hero.is-in-view .entry-picture{animation-play-state:running}
.entry-picture img{inline-size:100%;block-size:100%;max-block-size:100%;object-fit:contain;object-position:center;max-width:none;filter:drop-shadow(0 22px 22px #5362720a)}
.entry-scroll{position:absolute;z-index:3;bottom:max(19px,env(safe-area-inset-bottom));left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:13px;min-height:44px;padding:9px 13px;font-size:10px;line-height:1.4;letter-spacing:.015em;white-space:nowrap;color:#525e5a;border-radius:40px}
.entry-scroll:hover{background:#ffffffa6}
.entry-scroll svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round}
body[data-page="home"]:not(.entry-passed) .floating-contact{opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translate(-50%,120px)!important}
#prisme{scroll-margin-top:18px}
#prisme .prisme-copy h2{font-size:clamp(52px,5.3vw,88px);line-height:1.035;letter-spacing:-.065em;font-weight:600}
#prisme .prisme-copy h2 .prisme-line{display:block}
#prisme .prisme-copy h2 br{display:block}
#prisme .prisme-dock{justify-content:flex-end}
#prisme .prisme-caustic{animation-play-state:paused}
#prisme.is-in-view .prisme-caustic{animation-play-state:running}
.entry-motion-ready #prisme .prisme-copy>*{opacity:0;translate:0 20px;transition:opacity .8s ease,translate .9s cubic-bezier(.2,.7,.2,1)}
.entry-motion-ready #prisme.is-in-view .prisme-copy>*{opacity:1;translate:0 0}
.entry-motion-ready #prisme .prisme-copy>:nth-child(2){transition-delay:.06s}
.entry-motion-ready #prisme .prisme-copy>:nth-child(3){transition-delay:.12s}
.entry-motion-ready #prisme .prisme-copy>:nth-child(4){transition-delay:.18s}
@keyframes entry-breathe{0%,100%{transform:translate3d(0,0,0) rotate(-.25deg)}50%{transform:translate3d(0,-8px,0) rotate(.25deg)}}
@media(min-width:1700px){#prisme .prisme-copy h2{font-size:90px}}
@media(max-width:1100px){.entry-hero{padding-inline:42px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}.entry-copy h1{font-size:clamp(50px,6.3vw,72px)}.entry-copy p{font-size:21px}.entry-art{margin-inline:-8vw -7vw}#prisme .prisme-copy h2{font-size:clamp(46px,5.7vw,66px)}}
@media(max-width:760px){
 body[data-page="home"] .site-header.entry-header{top:max(12px,env(safe-area-inset-top));left:16px;right:16px;width:calc(100% - 32px);height:70px;padding:10px 18px;border-radius:16px}
 .entry-brand-caption{font-size:7px;letter-spacing:.2em}.entry-brand-word{font-size:31px}.entry-header .desktop-nav{display:none}.entry-header .menu-toggle{width:44px;height:44px;border-radius:11px}
 .entry-hero{block-size:100svh;min-block-size:640px;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(250px,1fr);align-items:stretch;padding:calc(max(12px,env(safe-area-inset-top)) + 104px) 25px 57px}
 .entry-copy{padding-bottom:0;max-width:none;align-self:start}
 .entry-copy h1{font-size:clamp(39px,10.7vw,66px);line-height:1.015;letter-spacing:-.075em}
 .entry-copy p{font-size:clamp(15px,4.1vw,19px);line-height:1.42;margin-top:14px;letter-spacing:-.025em}
 .entry-art{align-self:stretch;min-height:0;display:flex;align-items:center;justify-content:center;margin:-13px -38px -6px}
 .entry-picture{flex-shrink:0;inline-size:min(112vw,calc(100svh - 215px));max-inline-size:none;max-block-size:none;aspect-ratio:1}
 .entry-picture img{object-position:center center}
 .entry-scroll{bottom:max(9px,env(safe-area-inset-bottom));font-size:9px;gap:12px}
 #prisme .prisme-copy h2{font-size:clamp(43px,11vw,65px);line-height:1.045;letter-spacing:-.06em}
 #prisme .prisme-copy h2 .prisme-line:last-child{max-width:390px}
 #prisme .prisme-dock{display:flex;justify-content:flex-end}
 #prisme .prisme-light-switch{margin-left:auto}
}
@media(max-width:360px){
 .entry-hero{padding-inline:22px;min-block-size:620px;padding-top:calc(max(12px,env(safe-area-inset-top)) + 98px)}
 .entry-copy h1{font-size:clamp(36px,10.7vw,39px)}.entry-copy p{font-size:14px;margin-top:12px}
 .entry-art{margin-inline:-34px}.entry-picture{inline-size:min(112vw,calc(100svh - 195px))}
 #prisme .prisme-copy h2{font-size:clamp(32px,11.6vw,39px)}
}
@media(max-height:650px) and (max-width:760px){.entry-hero{block-size:auto;min-block-size:100svh;grid-template-rows:auto minmax(250px,1fr)}.entry-picture{inline-size:min(105vw,410px)}}
@media(min-width:761px) and (max-height:700px){.entry-hero{min-block-size:600px}.entry-copy h1{font-size:clamp(52px,6vw,78px)}.entry-copy p{font-size:21px}.entry-art{margin-top:-35px;margin-bottom:-20px}}
@media(prefers-reduced-motion:reduce){
 .entry-art{transform:none!important;opacity:1!important}.entry-picture{animation:none!important}
 .entry-motion-ready #prisme .prisme-copy>*{opacity:1!important;translate:none!important;transition:none!important}
 .entry-scroll{scroll-behavior:auto}
}