/* ANNOPA / GLASS — a quiet, architectural material system. */
:root{--glass-edge:rgba(255,255,255,.2);--glass-shadow:0 20px 70px #0002;--max:1360px}
.glass-theme{background:#edf0f2;color:#202428}
.header,.header.is-scrolled{top:18px;left:24px;right:24px;width:auto;height:76px;position:fixed;border:1px solid var(--glass-edge);border-radius:16px;background:linear-gradient(120deg,#30373dd9,#202428e6);box-shadow:0 8px 38px #0002,inset 0 1px 0 #ffffff12;backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2)}
.header.is-scrolled{background:#202428e8;box-shadow:0 10px 38px #0003}.header .wrap{width:calc(100% - 48px);gap:24px}.header .brand{width:192px}.header .nav{gap:28px}.header .nav a{padding:27px 0 25px;font-size:12px;font-weight:400;letter-spacing:.2px;border-bottom-width:1px}.header-cta{display:inline-flex;gap:12px;align-items:center;min-height:42px;padding:11px 16px;border:1px solid #ffffff29;border-radius:8px;background:linear-gradient(120deg,#f6f8fa,#c1c8ce);font-size:11px;font-weight:500;box-shadow:inset 0 1px 0 #fff9}.language-switch{margin-left:0}.language-switch a{min-width:30px;border-radius:5px}.language-switch a[aria-current]{border-color:#ffffff36;background:#ffffff0e}
.cinema-hero{height:max(760px,100svh);max-height:1100px;min-height:760px;display:grid;grid-template-columns:1.2fr 1fr;gap:38px;padding:145px max(48px,calc((100vw - 1360px)/2)) 120px;align-items:center;background:#202428}
.cinema-hero .hero-copy{padding:0;width:auto;margin:0;position:relative;z-index:2}.cinema-hero:after{background:linear-gradient(90deg,#151c23e6 0%,#202428ad 50%,#20242880),linear-gradient(0deg,#202428 0%,transparent 35%,#20242855 100%)}.cinema-media{opacity:.66}.cinema-poster,.cinema-video{object-position:center;filter:saturate(.4)}
.cinema-hero h1,html[lang=en] .cinema-hero h1{font-size:clamp(52px,5.7vw,88px);font-weight:300;line-height:1.08;letter-spacing:-2px;margin-bottom:28px;max-width:760px}.cinema-hero h1 em{color:#d0d8de;font-weight:300;letter-spacing:-2px;background:linear-gradient(110deg,#fff 10%,#c8d2db 48%,#929fa9);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.cinema-hero .hero-copy>p:not(.eyebrow){font-size:15px;line-height:1.95;color:#e4e9ec;max-width:430px;margin-bottom:0}.cinema-hero .eyebrow{font-size:10px;font-weight:400;letter-spacing:3px;color:#d2dce3;margin-bottom:32px}.eyebrow:before{width:22px;height:1px}.cinema-hero .actions{margin-top:36px;gap:26px}.btn{min-height:54px;padding:16px 24px;border-radius:8px;font-weight:500;letter-spacing:.15px;position:relative;overflow:hidden}.cinema-hero .btn{background:linear-gradient(120deg,#fff,#c9d1d7);border:1px solid #fff7;box-shadow:0 8px 26px #0002,inset 0 1px 0 #fff}.btn:after{content:'';position:absolute;inset:-100% 0;background:linear-gradient(105deg,transparent 35%,#ffffff38 50%,transparent 65%);transform:translateX(-130%);pointer-events:none;transition:transform .8s ease}.btn:hover:after{transform:translateX(130%)}.text-link{min-height:44px;gap:24px;font-weight:400;font-size:12px}.ui-arrow{flex-shrink:0}
.cinema-bottom{left:max(48px,calc((100vw - 1360px)/2));right:max(48px,calc((100vw - 1360px)/2));bottom:38px;gap:24px;z-index:2}.cinema-scroll{letter-spacing:2px;font-size:9px}.motion-control{display:flex;align-items:center;gap:9px;color:#cdd5da;background:#ffffff08;border:1px solid #ffffff23;border-radius:30px;padding:8px 13px;min-height:36px;font-size:10px;letter-spacing:.4px;backdrop-filter:blur(12px)}.motion-control svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.5}.motion-control:hover{background:#ffffff18}
.architecture{position:relative;isolation:isolate;margin:12px 0 0;min-width:0;width:100%;max-width:485px;justify-self:end;border-radius:22px;border:1px solid #ffffff2b;background:linear-gradient(140deg,#ffffff12,#ffffff04 50%,#aebdca12);box-shadow:inset 0 1px 0 #ffffff28,inset 0 -1px 0 #ffffff0d,0 30px 75px #0003;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);overflow:hidden;animation:glass-arrive 1.1s cubic-bezier(.2,.7,.3,1) both}.architecture:before{content:'';position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 40% 12%,#c2d8e71a,transparent 70%);pointer-events:none}.architecture-caption{display:flex;gap:9px;align-items:center;padding:24px 24px 0;font-size:11px;letter-spacing:.3px;color:#e3e9ed}.architecture-dot{width:5px;height:5px;background:#d3e2ea;border-radius:50%;box-shadow:0 0 12px #d3e2ea66}.architecture-tag{margin-left:auto;font-size:8px;letter-spacing:1.7px;color:#a7b5bf}.architecture-stage{position:relative;height:360px;width:100%}.architecture-stage canvas{display:block;width:100%;height:100%;position:relative;z-index:1;touch-action:pan-y;cursor:grab}.architecture-stage canvas:active{cursor:grabbing}.architecture-bottom{padding:0 22px 19px;display:flex;align-items:center;justify-content:space-between;gap:12px}.architecture-hint{font-size:9px;letter-spacing:.7px;color:#c3cdd5}.architecture-controls{display:flex;gap:5px}.architecture-controls button{border:1px solid #ffffff26;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;color:#dce4e9;background:#ffffff06;transition:background .2s}.architecture-controls button:hover{background:#ffffff20}.architecture-controls svg{width:13px;height:13px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}.architecture-fallback{position:absolute;inset:20% 25%;perspective:600px;pointer-events:none}.architecture-fallback i{position:absolute;width:110px;height:150px;left:20%;top:12%;border:1px solid #e3efff66;background:linear-gradient(120deg,#ffffff21,#a8c2d11a);transform:rotateX(-15deg) rotateY(-35deg) rotateZ(5deg);box-shadow:22px 20px 0 #d8e7ee0d}.architecture-fallback i:nth-child(2){transform:translate(-35px,40px) rotateY(-35deg);height:100px}.architecture-fallback i:nth-child(3){transform:translate(45px,75px) rotateY(-35deg);height:75px}.architecture-stage:has(canvas[data-ready]) .architecture-fallback{display:none}
.discipline-strip{position:relative;background:#202428;color:#e6ebee;border-color:#ffffff19}.discipline-strip .wrap{width:min(1360px,calc(100% - 96px))}.discipline-strip a{padding:30px 14px;color:#e3e9ee;border-color:#ffffff18;font-size:11px;transition:background .3s}.discipline-strip a:hover{background:#ffffff0a}.discipline-strip span{color:#98a6b1;font-size:9px}.section{padding:112px 0}.section .eyebrow{font-size:10px;font-weight:500;letter-spacing:2.5px}.intro{gap:100px}.intro .big-heading,.big-heading,.section-head h2,.callout h2{font-size:clamp(36px,3.8vw,58px);font-weight:300;line-height:1.15;letter-spacing:-1px}.intro p{font-size:15px;line-height:2}.section.white{background:#f7f9fa}.section-head{margin-bottom:50px}.section-head .text-link{flex-shrink:0}.section.glass-projects{background:radial-gradient(ellipse at 80% 0,#36434d70,transparent 65%),#202428;color:#f3f5f7;--line:#ffffff26;--muted:#b1bec8;--ink:#f3f5f7}.glass-projects .eyebrow,.glass-projects .section-head p{color:#b6c3cd}.glass-projects .text-link{color:#f3f5f7;border-color:#7e8a94}.project-grid{gap:32px}.project-card{border:1px solid #ffffff24;border-radius:14px;background:linear-gradient(135deg,#ffffff0b,#ffffff03);box-shadow:inset 0 1px 0 #ffffff0c;overflow:hidden;transition:box-shadow .4s,border-color .4s,transform .4s}.project-card:hover{border-color:#ffffff65;box-shadow:0 16px 40px #0003;transform:translateY(-5px)}.project-media{border-radius:13px 13px 0 0;aspect-ratio:1.65}.project-media img{transition:transform .9s cubic-bezier(.2,.7,.3,1),filter .5s;filter:saturate(.75)}.project-card:hover img{filter:saturate(1);transform:scale(1.035)}.project-media .project-index{top:18px;left:18px;border:1px solid #fff4;border-radius:30px;background:#20242899;backdrop-filter:blur(14px);font-size:8px;letter-spacing:1.5px;padding:8px 12px}.project-media .project-go,.project-card:hover .project-go{bottom:18px;right:18px;width:43px;height:43px;border:1px solid #ffffff66;border-radius:50%;background:#f3f5f7bd;color:#202428;backdrop-filter:blur(12px)}.project-info{padding:24px 25px 25px;align-items:center}.project-info h3{color:#f3f5f7;font-size:23px;font-weight:300;margin-bottom:8px}.project-info p,.project-info small{color:#b7c2cb}.project-info small{padding:6px 10px;border:1px solid #ffffff20;border-radius:30px;font-size:9px}
.services-layout{gap:90px}.service-list{border-top:0;display:grid;gap:12px}.service-row{padding:24px;grid-template-columns:28px 1fr 24px;align-items:start;border:1px solid #fff;border-radius:12px;background:linear-gradient(120deg,#ffffffdc,#ffffff77);box-shadow:0 8px 32px #20242804,inset 0 1px 0 #fff;transition:background .3s,box-shadow .3s,transform .3s}.service-row:hover{padding-left:24px;background:#fff;box-shadow:0 16px 36px #2024280c;transform:translateX(5px)}.service-row h3{font-size:24px;font-weight:300}.service-row>span:first-child{font-size:9px;padding-top:7px;color:#71808d}.service-row .arrow{align-self:center}.service-row p{font-size:12px}.services-copy{padding-top:20px}.services-copy>p{font-size:14px}
.logo-grid{gap:12px;background:none;border:0}.logo-tile{border:1px solid #e0e5e8;border-radius:10px;background:linear-gradient(145deg,#fff,#f3f6f8);padding:26px 23px 32px;transition:transform .25s,box-shadow .25s}.logo-tile:hover{background:white;transform:translateY(-3px);box-shadow:0 8px 20px #2024280c}.logo-tile img{mix-blend-mode:multiply;opacity:.85}.logo-name{font-size:8px!important;letter-spacing:.4px}.callout{padding:100px 0;background:radial-gradient(ellipse at 85% 15%,#59697877,transparent 65%),#202428;border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24}.callout:before{content:'';position:absolute;width:440px;height:440px;right:13%;top:-230px;border:1px solid #ffffff12;border-radius:36px;transform:rotate(35deg);box-shadow:45px 45px 0 -1px #ffffff04,90px 90px 0 -1px #ffffff03;pointer-events:none}.callout .wrap{position:relative}.callout .eyebrow{letter-spacing:2.5px;font-size:10px;margin-bottom:22px}.callout .btn.light{background:linear-gradient(135deg,#ffffffed,#d2dbe3d9);box-shadow:inset 0 1px 0 #fff;border-color:#fff9}.footer{background:#1c2024;padding-top:70px}.footer-main{gap:60px;padding-bottom:50px}.footer-logo{width:210px}.footer h3{font-size:9px;letter-spacing:2px;font-weight:400}.footer p,.footer a{font-size:11px;color:#aebac4}.footer-bottom{font-size:9px}.privacy-footer{border-color:#ffffff15}.privacy-footer span{color:#aebac4}
.page-head{padding:160px 0 74px;background:radial-gradient(ellipse at 80% 0,#7b90a040,transparent 65%),linear-gradient(135deg,#202428,#303a43);color:#f3f5f7;position:relative;overflow:hidden;border:0}.page-head:before,.page-head:after{content:'';position:absolute;width:320px;height:320px;right:8%;top:70px;border:1px solid #ffffff14;border-radius:24px;background:linear-gradient(140deg,#ffffff05,transparent);transform:rotate(-25deg);pointer-events:none}.page-head:after{right:-8%;top:155px;width:420px;height:420px;transform:rotate(25deg)}.page-head .wrap{position:relative;z-index:1}.page-head h1{font-weight:300;letter-spacing:-1px}.page-head .lead,.page-head .eyebrow,.breadcrumbs{color:#bdc9d2}.breadcrumbs{margin-bottom:34px;font-size:10px}.page-head .lead{max-width:700px;font-size:15px}.filter{border-radius:30px;min-height:42px;font-size:11px}.glass-projects .filter{border-color:#ffffff36;color:#c8d2da}.glass-projects .filter.active,.glass-projects .filter:hover{background:#edf2f6;color:#202428;border-color:#edf2f6}.glass-projects .toolbar p{color:#b7c2cb}.search{border-radius:8px}.feature-image,.about-split img,.service-detail img,.project-hero,.visual-card img{border-radius:14px}.value{padding:28px;border:1px solid #fff;border-radius:12px;background:#ffffff70}.value-grid{border-top:0;gap:20px}.value h3{font-weight:300}.contact-aside{border:1px solid #ffffff35;border-radius:16px;background:radial-gradient(ellipse at 100% 0,#758a9d55,transparent 80%),#202428;box-shadow:var(--glass-shadow)}.contact-card{padding:28px;border:1px solid #fff;background:#ffffff80;border-radius:12px;margin-bottom:14px}.project-specs{border:1px solid #fff;border-radius:12px;background:#ffffff80;padding:8px 24px}.project-specs div:last-child{border-bottom:0}.gallery button{border-radius:10px}.gallery-heading{padding-top:12px}.lightbox{border:1px solid #ffffff3b;border-radius:16px}.legal-side{border-radius:12px}.legal-notice{border-radius:10px}
.chat-launcher,.cookie-launcher{background:linear-gradient(135deg,#3c4750dd,#202428eb);border:1px solid #b9c9d35c;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 8px 24px #0002,inset 0 1px 0 #ffffff17}.chat-launcher{border-radius:30px;min-height:48px;padding:12px 18px;font-size:11px}.chat-launcher .chat-dot{width:5px;height:5px;background:#e6f0f7}.cookie-launcher{width:48px;height:48px}.cookie-banner,.privacy-dialog,.chat-panel{border:1px solid #ffffffdc;border-radius:16px;background:#f1f5f8f5;box-shadow:0 18px 70px #0003;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.cookie-banner{max-width:530px}.consent-btn{border-radius:7px;min-height:44px;font-size:11px}.cookie-actions{gap:8px}.chat-top{border-radius:15px 15px 0 0;background:linear-gradient(130deg,#3d4953,#202428)}.chat-msg,.chat-chips button,.chat-form input{border-radius:9px}.chat-form button{border-radius:8px}.chat-panel{overflow:hidden}.chat-feed{scrollbar-width:thin}.privacy-dialog::backdrop{background:#10171fb0;backdrop-filter:blur(5px)}.icon-close{border-radius:50%}.check-list li:before{content:'';width:9px;height:9px;flex-shrink:0;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg);margin:7px 4px 0 0}.menu-toggle{font-size:0;position:relative;border:1px solid #ffffff2b;border-radius:8px}.menu-toggle:before,.menu-toggle:after{content:'';position:absolute;left:12px;width:18px;height:1px;background:#e6edf2;transition:transform .25s,top .25s;top:16px}.menu-toggle:after{top:24px}.menu-toggle[aria-expanded=true]:before{top:20px;transform:rotate(45deg)}.menu-toggle[aria-expanded=true]:after{top:20px;transform:rotate(-45deg)}
@keyframes glass-arrive{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
html.motion-paused{scroll-behavior:auto}html.motion-paused *,html.motion-paused *:before,html.motion-paused *:after{animation-play-state:paused!important;transition-duration:0s!important}html.motion-paused .reveal-ready{opacity:1;transform:none}
@media(min-width:1600px){.cinema-hero{grid-template-columns:1.3fr 1fr}.architecture{max-width:510px}.architecture-stage{height:405px}}
@media(max-width:1150px){.header .wrap{gap:18px}.header .brand{width:162px}.header .nav{gap:20px}.header-cta{display:none}.cinema-hero{padding-left:32px;padding-right:32px;gap:22px}.cinema-hero h1,html[lang=en] .cinema-hero h1{font-size:clamp(48px,5.7vw,66px)}.architecture-caption{padding:20px 18px 0;font-size:10px}.architecture-tag{font-size:7px}.architecture-stage{height:320px}.cinema-bottom{left:32px;right:32px}.services-layout{gap:40px}.intro{gap:60px}.project-info{padding:22px 20px}.project-info h3{font-size:21px}}
@media(max-width:800px){.header,.header.is-scrolled{top:12px;left:12px;right:12px;height:66px;border-radius:12px}.header .wrap{width:calc(100% - 28px);gap:0}.header .brand{width:154px}.language-switch{margin-right:12px}.language-switch a{min-width:28px;min-height:32px}.header .nav{top:74px;left:-1px;right:-1px;border:1px solid #ffffff2e;border-radius:12px;background:#202428f7;box-shadow:0 20px 40px #0004;padding:12px 22px;backdrop-filter:blur(24px)}.header .nav a{padding:17px 0;font-size:15px;color:#eef3f7}.header .nav a.active{color:#fff}.menu-toggle{width:42px;min-width:42px;height:42px;min-height:42px}.cinema-hero{height:auto;max-height:none;min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:132px 24px 94px;gap:46px}.cinema-hero .hero-copy{width:100%;padding:0}.cinema-hero h1,html[lang=en] .cinema-hero h1{font-size:clamp(44px,8.8vw,68px);line-height:1.12;letter-spacing:-1.5px;margin-bottom:24px}.cinema-hero h1 em{letter-spacing:-1.5px}.cinema-hero .eyebrow{font-size:9px;letter-spacing:2.5px;margin-bottom:25px}.cinema-hero .hero-copy>p:not(.eyebrow){max-width:440px;font-size:14px;line-height:1.9}.cinema-hero .actions{margin-top:28px;gap:24px}.cinema-hero .btn{padding:15px 20px;min-height:52px;font-size:11px}.cinema-hero:after{background:linear-gradient(0deg,#202428 0%,#2024288c 50%,#202428c9 100%)}.cinema-media{opacity:.6}.architecture{max-width:480px;align-self:center;margin:0;border-radius:18px}.architecture-caption{padding:19px 20px 0;font-size:10px}.architecture-tag{font-size:8px}.architecture-stage{height:310px}.architecture-bottom{padding:0 18px 17px}.architecture-hint{font-size:9px}.architecture-controls button{width:36px;height:36px}.cinema-bottom{left:24px;right:24px;bottom:24px}.cinema-scroll{font-size:8px;letter-spacing:1px;gap:13px}.motion-control{padding:8px 10px;font-size:9px}.discipline-strip .wrap{width:calc(100% - 32px)}.discipline-strip a{padding:23px 8px;font-size:10px;gap:10px}.section{padding:74px 0}.wrap{width:calc(100% - 40px)}.intro{gap:25px}.intro .big-heading,.big-heading,.section-head h2,.callout h2{font-size:clamp(34px,5.8vw,45px);letter-spacing:-.8px}.intro p{font-size:14px;line-height:1.95}.section-head{gap:22px;margin-bottom:30px}.project-grid{gap:22px}.project-media{aspect-ratio:1.5}.project-info{padding:21px}.project-info h3{font-size:21px}.project-info p{font-size:11px}.services-layout{gap:26px}.services-copy{padding-top:0}.service-row{padding:22px 18px;gap:10px;grid-template-columns:24px 1fr 22px}.service-row:hover{padding-left:18px;transform:none}.service-row h3{font-size:22px}.service-row p{font-size:12px}.logo-grid{gap:9px}.logo-tile{padding:22px 18px 30px}.callout{padding:72px 0}.callout .wrap{gap:28px}.footer{padding:55px 0 95px}.footer-main{gap:32px}.page-head{padding:130px 0 55px}.page-head h1,html[lang=en] .page-head h1{font-size:clamp(34px,7vw,48px);letter-spacing:-.7px;line-height:1.17}.page-head .lead{font-size:14px;line-height:1.9}.page-head:before{right:-35%;top:80px}.page-head:after{display:none}.breadcrumbs{margin-bottom:30px}.section.compact{padding-top:36px}.contact-card{padding:24px 20px}.contact-card .large{font-size:23px}.value{padding:24px;margin-bottom:0}.chat-launcher{right:16px;bottom:18px;min-height:46px}.cookie-launcher{left:16px;bottom:18px;width:46px;height:46px}.chat-panel{right:12px;bottom:78px;width:min(380px,calc(100vw - 24px));max-height:calc(100dvh - 105px)}.cookie-banner{left:12px;right:12px;bottom:78px;width:auto;max-height:65dvh;padding:22px;overflow-y:auto}.cookie-actions{display:flex;flex-wrap:wrap}.cookie-actions .consent-btn{flex:1 1 120px}.privacy-dialog{width:calc(100vw - 24px);max-width:560px;padding:24px}.gallery{gap:12px}.gallery button{border-radius:8px}}
@media(min-width:431px) and (max-width:650px){.project-grid{grid-template-columns:1fr}.project-media{aspect-ratio:1.65}}
@media(max-width:380px){.header .brand{width:132px}.language-switch{margin-right:8px}.language-switch a{min-width:25px;font-size:9px}.cinema-hero{padding:119px 20px 93px;gap:35px}.cinema-hero h1,html[lang=en] .cinema-hero h1{font-size:40px}.cinema-hero .actions{gap:15px}.cinema-hero .text-link{font-size:11px;gap:12px}.architecture-caption{padding-left:16px;padding-right:16px;font-size:9px}.architecture-tag{font-size:7px}.architecture-stage{height:270px}.architecture-hint{font-size:8px;letter-spacing:.2px}.cinema-bottom{left:20px;right:20px;gap:12px}.cinema-scroll{font-size:7px;gap:8px}.motion-control span{display:none}.discipline-strip a{font-size:9px}.intro .big-heading,.big-heading,.section-head h2,.callout h2{font-size:32px}}
@media(prefers-reduced-motion:reduce){.architecture,.cinema-scroll span{animation:none!important}*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}.reveal-ready{opacity:1;transform:none}}
.motion-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.architecture-controls button[aria-pressed=true]{background:#ffffff26;border-color:#ffffff70}.cinema-bottom{left:max(102px,calc((100vw - 1360px)/2));right:260px}@media(max-width:800px){.cinema-bottom{left:86px;right:24px;bottom:28px}.architecture-controls{gap:5px}.architecture-controls button{width:34px;height:34px}}@media(max-width:380px){.architecture-bottom{padding-left:14px;padding-right:14px;gap:8px}.architecture-controls{gap:4px}.architecture-controls button{width:30px;height:34px}.architecture-hint{max-width:105px;line-height:1.5}}
@view-transition{navigation:none}.page-head .wrap{animation:glass-arrive .65s cubic-bezier(.2,.7,.3,1) both}@media(max-width:800px){.header .language-switch{margin-left:auto;margin-right:12px}}@media(prefers-reduced-motion:reduce){.page-head .wrap{animation:none}}
