@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--dark:#202322;--yellow:#eeb738;--paper:#f6f6f1;--muted:#a7aca7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--dark);color:var(--paper);font-family:Manrope,Arial,sans-serif;font-size:16px}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}header{height:90px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid #ffffff18;background:#202322f5;position:sticky;top:0;z-index:20;backdrop-filter:blur(20px)}.brand{display:flex;align-items:center;gap:12px;font-size:25px;font-weight:800;letter-spacing:2px}.brand img{width:43px;height:44px;object-fit:cover;object-position:top;clip-path:inset(0 0 43% 0);transform:scale(1.45) translateY(10px)}small{font-size:.45em;font-weight:500;letter-spacing:1px}nav{display:flex;gap:32px;font-size:14px}nav a{padding:10px 0;position:relative}nav a:after{content:'';position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--yellow);transition:width .3s}nav a:hover:after{width:100%}.nav-controls{display:flex;gap:20px}#language{border:0;background:none;color:#fff;font-size:13px}#language span{color:#8e948e}#menu{display:none;background:none;color:white;border:0;font-size:25px}.hero{padding:42px 5% 0;overflow:hidden}.hero-top,.hero-bottom{display:flex;justify-content:space-between;align-items:center;font-size:12px;letter-spacing:1.7px}.eyebrow{color:var(--yellow);font-size:12px;letter-spacing:2px}.edition{color:#9a9f9b}.hero-title{display:grid;grid-template-columns:1.8fr 1fr;align-items:end;gap:8%;padding:45px 0 32px}h1{font-size:clamp(38px,4.7vw,73px);line-height:1.12;letter-spacing:-3px;margin:0;font-weight:500}h2{font-size:clamp(32px,3.4vw,52px);line-height:1.2;letter-spacing:-1.8px;font-weight:500;margin:0 0 30px}p{line-height:1.8;color:#b5bab5;margin:0 0 22px}.hero-copy{max-width:340px}.hero-copy p{font-size:15px}.text-link{font-size:14px;border-bottom:1px solid var(--yellow);padding-bottom:9px;display:inline-block}.blueprint{height:405px;border:1px solid #ffffff20;position:relative;overflow:hidden;background:#202322}.sketch{width:100%;height:100%;object-fit:cover;object-position:center 55%;opacity:.72;transform:scale(1.04);transition:transform .6s ease-out}.blueprint:after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#2023220a,#20232200,#2023221a)}.drawing-label,.coordinates{position:absolute;left:25px;top:22px;font:11px monospace;letter-spacing:2px;color:#c0c4b7}.coordinates{top:auto;bottom:22px}.logo-scene{position:absolute;width:235px;height:235px;top:48%;left:48%;transform:translate(-50%,-50%);display:flex;justify-content:center;align-items:center;isolation:isolate}.logo-scene:before{content:'';position:absolute;inset:25px;background:#202322ac;border-radius:50%;filter:blur(20px);z-index:-1}.logo-scene img{width:165px;position:relative;filter:drop-shadow(0 0 16px #eeb73830);animation:logoFloat 6s ease-in-out infinite}.orbit{position:absolute;border:1px solid #eeb73838;border-radius:50%;inset:0;animation:spin 24s linear infinite}.orbit:after{content:'';width:6px;height:6px;background:var(--yellow);position:absolute;top:36px;left:27px;border-radius:50%;box-shadow:0 0 12px #eeb738}.orbit-two{inset:-20px;border-style:dashed;border-color:#ffffff17;animation-direction:reverse;animation-duration:38s}.scan{position:absolute;left:40px;right:40px;height:1px;background:linear-gradient(90deg,transparent,#eeb738,transparent);top:50px;opacity:.5;animation:scan 5s ease-in-out infinite}.motion{position:absolute;right:22px;bottom:18px;border:1px solid #ffffff30;color:#d1d3ca;background:#20232299;padding:9px 12px;font-size:12px;z-index:3}.hero-bottom{padding:23px 0;color:#a7aca7;border-bottom:1px solid #ffffff20}.hero-bottom a{color:var(--yellow)}.section{padding:85px 5%;scroll-margin-top:0}.section-label{display:flex;align-items:center;gap:22px;font-size:12px;letter-spacing:2px;margin-bottom:45px}.section-label span:first-child{font-family:monospace;color:#8c938b}.about{background:var(--paper);color:var(--dark)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}.about p,.approach p{color:#70766d}.about .lead{font-size:21px;line-height:1.65;color:#303630}.principles{display:flex;gap:20px;border-top:1px solid #d4d8cf;padding-top:20px;font-size:12px}.principles span:before{content:'+';color:#ad861a;margin-right:6px}.expertise{background:#292d29}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:60px;margin-bottom:40px}.section-heading h2{margin:0}.section-heading p{max-width:300px;font-size:15px}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service{text-align:left;color:#fff;background:#313630;border:1px solid #495046;padding:30px;transition:transform .3s,background .3s;position:relative;min-height:300px}.service:hover{transform:translateY(-6px);border-color:var(--yellow)}.service.active{background:var(--yellow);color:#202322;border-color:var(--yellow)}.service-top{display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px;align-items:center}.service-icon{font-size:36px}.service h3{font-size:26px;font-weight:500;margin:38px 0 18px;letter-spacing:-1px}.service p{font-size:14px;line-height:1.8;min-height:76px}.service.active p{color:#514727}.service-action{font-size:12px;display:block;border-top:1px solid #ffffff25;padding-top:20px}.service.active .service-action{border-color:#20232230}.service-detail{display:grid;grid-template-columns:.7fr 1fr 1.3fr;gap:35px;padding-top:34px;align-items:start}.detail-label{font-size:11px;letter-spacing:2px;color:#949d90;padding-top:6px}.service-detail h3{font-size:19px;font-weight:500;margin:0}.service-detail p{font-size:14px;margin:0}.approach{background:#eeeee7;color:var(--dark)}.approach-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.stage-buttons{display:flex;border-bottom:1px solid #d0d2c8;gap:20px;margin-top:28px}.stage-buttons button{padding:12px 0;border:0;background:none;color:#6c7368;font-size:14px;border-bottom:2px solid transparent}.stage-buttons .selected{color:#242922;border-color:#c59624}.stage-description{font-size:14px;min-height:70px;padding-top:20px}.diagram{position:relative;max-width:480px;width:100%;justify-self:center}.diagram svg{width:100%;filter:drop-shadow(0 15px 12px #454b3910)}.segment{transition:opacity .5s,stroke-width .5s}.diagram-tag{position:absolute;font:12px monospace;color:#787d72}.tag1{right:12%;top:14%}.tag2{right:7%;bottom:19%}.tag3{left:6%;top:40%}.diagram-caption{display:block;text-align:center;font:11px monospace;letter-spacing:2px;color:#828a7b}.kpi-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #cdd0c5;margin-top:42px}.kpi{display:flex;gap:18px;align-items:center;position:relative;padding:36px 25px;border-right:1px solid #cdd0c5}.kpi:first-child{padding-left:0}.kpi:last-child{border:0}.kpi-number{font-size:45px;font-weight:500;letter-spacing:-2px}.kpi h3{font-size:14px;margin:0 0 6px;font-weight:600}.kpi p{font-size:12px;margin:0}.mini-ring{width:38px;height:38px;border-radius:50%;background:conic-gradient(#d5a22c 0 75%,#d9dcd1 75%);margin-left:auto;flex-shrink:0;position:relative}.mini-ring:after{content:'';position:absolute;inset:7px;background:#eeeee7;border-radius:50%}.ring2{background:conic-gradient(#4e584b 0 66%,#d9dcd1 66%)}.ring3{background:conic-gradient(#a5ab99 0 92%,#d9dcd1 92%)}.contact{background:var(--yellow);color:#232722;padding-bottom:80px}.contact .section-label span:first-child{color:#736429}.contact-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:10%}.contact h2{font-size:clamp(35px,4vw,58px)}.contact p{color:#5b502d;max-width:370px}.contact-button{background:#222822;color:#fff;border:0;padding:18px 28px;font-size:14px;transition:background .3s,transform .3s}.contact-button:hover{background:#454d3e;transform:translateY(-2px)}.contact .location{font-size:11px;letter-spacing:2px;margin-top:25px}footer{padding:40px 5%;display:flex;align-items:center;justify-content:space-between;gap:25px;color:#969e93;font-size:12px}.footer-brand{font-size:24px;color:#fff;letter-spacing:2px;font-weight:800}footer p{margin:0;font-size:12px}dialog{background:var(--paper);color:#222;width:min(560px,92vw);border:0;padding:40px;max-height:90vh;overflow:auto}dialog::backdrop{background:#111c;backdrop-filter:blur(6px)}dialog h2{font-size:30px;margin-top:20px}dialog p{font-size:14px;color:#73786d}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:30px}label{display:block;margin-bottom:18px;font-size:14px}label span{display:block;margin-bottom:8px}input,textarea,select{padding:12px;background:#fff;border:1px solid #d6dacd;width:100%;border-radius:0}textarea{resize:vertical}dialog .eyebrow{color:#977118}:focus-visible{outline:2px solid #c89218;outline-offset:5px}.reveal{opacity:0;transform:translateY(25px);transition:opacity .8s,transform .8s}.reveal.visible{opacity:1;transform:none}.paused *, .paused *:before,.paused *:after{animation-play-state:paused!important}.paused .sketch{transform:none!important}@keyframes spin{to{transform:rotate(360deg)}}@keyframes scan{50%{top:170px;opacity:.1}}@keyframes logoFloat{50%{transform:translateY(-7px);filter:drop-shadow(0 0 24px #eeb73860)}}@media(min-width:1600px){main,header,footer{padding-left:max(5%,calc((100vw - 1500px)/2));padding-right:max(5%,calc((100vw - 1500px)/2))}main{padding:0}.blueprint{height:470px}}@media(max-width:900px){nav{gap:17px;font-size:12px}h1{letter-spacing:-2px}.hero-title{gap:30px}.service{padding:22px}.service h3{font-size:22px}.service-detail{grid-template-columns:1fr 1fr}.detail-label{grid-column:1/-1}.kpi{padding:25px 15px;gap:10px}.mini-ring{display:none}.kpi-number{font-size:35px}.kpi p{font-size:11px}.principles{flex-wrap:wrap;gap:12px}footer p{display:none}}@media(max-width:650px){header{height:74px}nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px;background:#202322;border-bottom:1px solid #ffffff30;flex-direction:column;font-size:16px}nav.open{display:flex}#menu{display:block}.hero{padding-top:25px}.hero-top .edition{display:none}.hero-title{grid-template-columns:1fr;padding-top:30px;gap:25px}h1{font-size:40px;letter-spacing:-1.7px}.hero-copy{max-width:100%}.hero-copy p{max-width:320px}.blueprint{height:340px}.sketch{object-position:60% center}.logo-scene{left:50%;width:185px;height:185px}.logo-scene img{width:145px}.hero-bottom{font-size:10px;letter-spacing:1px}.hero-bottom span:last-child{display:none}.section{padding:55px 6%}.section-label{margin-bottom:30px}.about-grid,.approach-grid,.contact-grid{grid-template-columns:1fr;gap:22px}.about .lead{font-size:19px}h2{font-size:34px}.section-heading{display:block}.section-heading p{margin-top:20px}.service-grid{grid-template-columns:1fr;gap:15px}.service{min-height:0}.service h3{margin-top:15px}.service p{min-height:0}.service-detail{display:block}.service-detail h3{margin:18px 0 12px}.diagram{max-width:350px}.kpi-grid{grid-template-columns:1fr;margin-top:25px}.kpi{border-right:0;border-bottom:1px solid #cdd0c5;padding:22px 0}.mini-ring{display:block}.kpi-number{min-width:82px;font-size:42px}.kpi p{font-size:12px}.contact h2{font-size:38px}footer{flex-wrap:wrap;padding:30px 6%}footer span{font-size:10px}dialog{padding:30px 22px}.drawing-label{font-size:9px;left:15px}.coordinates{left:15px;font-size:9px}.motion{font-size:10px;right:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal{opacity:1;transform:none}}

.projects{background:#222722}.project-filters{display:flex;gap:10px;flex-wrap:wrap;margin:30px 0}.project-filters button{background:transparent;color:#c3c9c0;border:1px solid #4e574a;padding:13px 18px;font-size:14px;display:flex;align-items:center;gap:14px;transition:background .3s}.project-filters button.selected{background:var(--yellow);color:#222722;border-color:var(--yellow)}.filter-count{font:12px monospace;opacity:.7}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.project-empty{grid-column:1/-1;border:1px solid #485043;padding:50px;background:linear-gradient(120deg,#2b3129,#222722);position:relative;overflow:hidden}.empty-label{font:11px monospace;letter-spacing:2px;color:var(--yellow)}.project-empty h3{font-size:28px;font-weight:500;margin:22px 0 12px}.project-empty p{margin:0;max-width:550px;font-size:15px}.project-card{border:1px solid #485043;background:#2b3129;transition:transform .3s}.project-card:hover{transform:translateY(-5px)}.project-visual{height:225px;position:relative;overflow:hidden;background:#363d32}.project-visual img{height:100%;width:100%;object-fit:cover;transition:transform .7s}.project-card:hover img{transform:scale(1.04)}.no-photo{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3c4436,#242b24)}.project-placeholder{font-size:35px;color:#eeb73880;letter-spacing:6px;font-weight:800}.project-status{position:absolute;left:18px;top:18px;color:#222;background:var(--yellow);padding:8px 12px;font-size:12px}.project-content{padding:25px}.project-category{font-size:12px;color:var(--yellow)}.project-content h3{font-size:23px;margin:14px 0;font-weight:500}.project-location{font-size:14px}.project-detail-button{background:none;color:#fff;border:0;border-bottom:1px solid var(--yellow);padding:0 0 8px;font-size:14px}.project-dialog-image{width:100%;max-height:280px;object-fit:cover;margin:12px 0 24px}#project-dialog{width:min(730px,94vw)}#project-dialog dl{display:grid;grid-template-columns:110px 1fr;gap:12px;font-size:14px;border-top:1px solid #d1d7cc;padding-top:20px}#project-dialog dt{color:#70776b}#project-dialog dd{margin:0}header nav{gap:23px}@media(max-width:900px){.project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}header nav{gap:12px}}@media(max-width:650px){.project-grid{grid-template-columns:1fr}.project-empty{padding:32px 24px}.project-empty h3{font-size:23px}.project-filters button{padding:11px 12px;font-size:12px;gap:10px}}
/* Paired themes: preserve the original composition and yellow brand accents. */
.theme-picker{display:flex;align-items:center;gap:4px;border:1px solid #68706470;padding:4px;border-radius:22px}.theme-choice{width:29px;height:29px;border:1px solid transparent;background:transparent;border-radius:50%;padding:4px;display:grid;place-items:center}.theme-choice[aria-pressed=true]{border-color:var(--yellow)}.theme-swatch{width:17px;height:17px;border-radius:50%;border:1px solid #92998c}.dark-swatch{background:linear-gradient(135deg,#252925 65%,#eeb738 65%)}.light-swatch{background:linear-gradient(135deg,#f6f5ef 65%,#eeb738 65%)}.nav-controls{align-items:center;gap:16px}body,header,.section,footer,.service,.blueprint{transition:background-color .35s,color .35s,border-color .35s}
html[data-theme=light]{color-scheme:light}html[data-theme=light] body{background:#f6f5ef;color:#242823}html[data-theme=light] header{background:#f6f5eff2;border-color:#24282320}html[data-theme=light] #language,html[data-theme=light] #menu{color:#242823}html[data-theme=light] #language span{color:#6c7368}html[data-theme=light] .brand img{filter:grayscale(1) brightness(.2)}html[data-theme=light] .eyebrow{color:#86600b}html[data-theme=light] .edition,html[data-theme=light] .hero-bottom{color:#60695e}html[data-theme=light] p{color:#60695e}html[data-theme=light] .hero-bottom{border-color:#24282325}html[data-theme=light] .hero-bottom a{color:#81600e}html[data-theme=light] .blueprint{background:#f0efe6;border-color:#24282325}html[data-theme=light] .sketch{filter:grayscale(1) invert(1);opacity:.68}html[data-theme=light] .blueprint:after{background:linear-gradient(90deg,#f0efe611,#f0efe600,#f0efe611)}html[data-theme=light] .drawing-label,html[data-theme=light] .coordinates{color:#626b5d}html[data-theme=light] .logo-scene:before{background:#f6f5efdc}html[data-theme=light] .logo-scene img{filter:grayscale(1) brightness(.2);animation:lightLogoFloat 6s ease-in-out infinite}html[data-theme=light] .orbit-one{border-color:#bb8b2790}html[data-theme=light] .orbit-two{border-color:#58634c40}html[data-theme=light] .motion{background:#f6f5efdd;border-color:#24282340;color:#333a2c}html[data-theme=light] .about{background:#fffef9}html[data-theme=light] .expertise{background:#efeee6}html[data-theme=light] .projects{background:#f8f7f1}html[data-theme=light] .service{background:#faf9f4;color:#252b23;border-color:#c9cebf}html[data-theme=light] .service.active{background:var(--yellow);border-color:var(--yellow)}html[data-theme=light] .service p{color:#626a5b}html[data-theme=light] .service.active p{color:#514727}html[data-theme=light] .service-action{border-color:#24282325}html[data-theme=light] .detail-label{color:#626b5c}html[data-theme=light] .project-filters button{color:#525d49;border-color:#c4cbbb}html[data-theme=light] .project-filters button.selected{color:#242823;background:var(--yellow);border-color:var(--yellow)}html[data-theme=light] .project-empty{background:linear-gradient(120deg,#eeeee3,#f8f7f1);border-color:#c9cebf}html[data-theme=light] .empty-label,html[data-theme=light] .project-category{color:#86600b}html[data-theme=light] .project-card{background:#fffef9;border-color:#c9cebf}html[data-theme=light] .project-detail-button{color:#252b23}html[data-theme=light] .approach{background:#eeeee7}html[data-theme=light] .contact{background:var(--yellow)}html[data-theme=light] .contact p{color:#5b502d}html[data-theme=light] footer{background:#eeeee6;color:#5f6857;border-top:1px solid #24282315}html[data-theme=light] .footer-brand{color:#242823}@keyframes lightLogoFloat{50%{transform:translateY(-7px)}}@media(max-width:1050px) and (min-width:651px){header{padding:0 3%}.brand{font-size:22px}header nav{gap:12px;font-size:12px}.nav-controls{gap:9px}}@media(max-width:650px){.nav-controls{gap:10px}.theme-choice{width:26px;height:26px}.theme-swatch{width:16px;height:16px}html[data-theme=light] nav{background:#f6f5ef;border-color:#24282325}}@media(prefers-reduced-motion:reduce){html[data-theme=light] .logo-scene img{animation:none!important}}

/* Merfa project portfolio — architectural editorial surface */
.projects{--project-surface:#292d2c;--project-ink:#f5f5ef;--project-muted:#b0b7b3;--project-line:#ffffff20;--project-panel:#202423;padding-bottom:100px}
html[data-theme=light] .projects{--project-surface:#fffefa;--project-ink:#242827;--project-muted:#69716b;--project-line:#24282718;--project-panel:#efeee8}
.portfolio-window{border:1px solid var(--project-line);border-radius:32px;background:var(--project-surface);padding:30px;box-shadow:0 24px 70px #00000009;overflow:hidden}
.portfolio-toolbar{display:flex;justify-content:space-between;align-items:center;padding:0 4px 24px;border-bottom:1px solid var(--project-line);gap:16px}.portfolio-signature{font-size:12px;letter-spacing:2px;font-weight:700;color:var(--project-muted)}.portfolio-signature span{color:var(--yellow);padding:0 10px}.portfolio-caption{font-size:14px;color:var(--project-muted)}
.projects .project-filters{display:flex;gap:6px;padding:6px;width:fit-content;border-radius:17px;background:var(--project-panel);margin:24px 0}.projects .project-filters button{border:0!important;border-radius:12px;padding:12px 18px;font-size:14px;color:var(--project-muted);transition:background .25s,box-shadow .25s,color .25s}.projects .project-filters button.selected{background:var(--project-ink)!important;color:var(--project-surface)!important;box-shadow:0 4px 12px #00000012}.filter-count{background:#88888818;min-width:23px;height:23px;border-radius:8px;display:grid;place-items:center;font-size:12px;opacity:1}
.projects .project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.projects .project-card{position:relative;display:grid;grid-template-columns:1fr;border-radius:24px;overflow:hidden;background:var(--project-surface);border:1px solid var(--project-line);box-shadow:0 8px 30px #00000006;transition:transform .4s,box-shadow .4s}.projects .project-card:only-child{grid-column:1/-1;grid-template-columns:1.4fr 1fr;min-height:390px}.projects .project-card:hover{transform:translateY(-4px);box-shadow:0 20px 45px #00000016}.projects .project-visual{height:280px;background:#343a36}.projects .project-card:only-child .project-visual{height:100%;min-height:390px}.project-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,#00000012,transparent 45%,#00000036);pointer-events:none}.projects .project-status{z-index:1;left:24px;top:24px;border-radius:30px;background:#fffef0ed;color:#292e29;padding:10px 16px;font-size:14px;box-shadow:0 3px 20px #00000015;backdrop-filter:blur(14px)}.projects .project-content{position:relative;padding:38px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;color:var(--project-ink)}.projects .project-category{font-size:12px;letter-spacing:2px;text-transform:uppercase;color:var(--project-muted)}.projects .project-content h3{font-size:clamp(24px,2.5vw,35px);font-weight:600;letter-spacing:-1px;line-height:1.3;margin:24px 0 12px;max-width:390px}.projects .project-location{font-size:16px;color:var(--project-muted);margin:0 0 34px}.projects .project-detail-button{border:1px solid var(--project-line);border-radius:12px;background:var(--yellow);color:#242827;padding:14px 20px;font-weight:600;font-size:14px;transition:box-shadow .3s,transform .3s}.project-detail-button:hover{box-shadow:0 8px 20px #eeb73830;transform:translateY(-2px)}.project-index{position:absolute;right:26px;bottom:24px;font-size:14px;color:var(--project-muted);font-variant-numeric:tabular-nums}.projects .project-empty{border-radius:22px;background:var(--project-panel);border-color:var(--project-line);padding:48px;color:var(--project-ink)}
body.project-modal-open{overflow:hidden}#project-dialog{width:min(1000px,calc(100vw - 40px));max-height:calc(100dvh - 48px);padding:0;border:1px solid #ffffff80;border-radius:30px;background:#f8f8f0ed;color:#252a27;box-shadow:0 40px 100px #00000050;backdrop-filter:blur(30px);overflow:auto;animation:projectModalIn .4s cubic-bezier(.2,.8,.2,1)}#project-dialog::backdrop{background:#1c24236b;backdrop-filter:blur(14px);animation:projectBackdropIn .3s ease}#project-dialog .close{position:absolute;top:16px;right:16px;width:42px;height:42px;border-radius:50%;background:#ffffffdd;color:#252a27;border:1px solid #ffffff80;z-index:4;font-size:27px;display:grid;place-items:center;box-shadow:0 4px 18px #00000015}#project-dialog-content{display:grid;grid-template-columns:1.05fr 1fr;min-height:520px}.project-modal-visual{position:relative;background:#343b35;min-height:300px;overflow:hidden}.project-dialog-image{width:100%;height:100%;position:absolute;inset:0;object-fit:cover;max-height:none;margin:0}.project-modal-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 55%,#16211caa)}.project-modal-caption{position:absolute;bottom:27px;left:28px;z-index:1;color:white;font-size:12px;letter-spacing:2px}.project-modal-body{padding:54px 38px 32px}.project-modal-status{display:inline-block;border:1px solid #9b782f40;border-radius:30px;background:#eeb73825;padding:8px 14px;font-size:14px;color:#6c5119}#project-dialog h2{font-size:clamp(27px,3vw,37px);letter-spacing:-1px;line-height:1.25;margin:26px 0 18px}.project-modal-description{font-size:16px;line-height:1.7;color:#657067}#project-dialog dl{display:grid;grid-template-columns:1fr;border:0;gap:0;margin:28px 0;padding:0}.project-fact{padding:17px 0;border-top:1px solid #252a2715;display:grid;gap:7px}#project-dialog dt{font-size:12px;letter-spacing:1px;text-transform:uppercase;color:#788077}#project-dialog dd{font-size:16px;line-height:1.5;font-weight:600}.project-modal-footer{font-size:12px;line-height:1.6;letter-spacing:1px;color:#7b827c}html[data-theme=dark] #project-dialog{background:#252b29ed;color:#f6f5ef;border-color:#ffffff30}html[data-theme=dark] #project-dialog .project-modal-description,html[data-theme=dark] #project-dialog dt,html[data-theme=dark] #project-dialog .project-modal-footer{color:#aeb8b0}html[data-theme=dark] #project-dialog .project-modal-status{color:#f0cc79}html[data-theme=dark] .project-fact{border-color:#ffffff18}
@keyframes projectModalIn{from{opacity:0;transform:translateY(24px) scale(.97)}to{opacity:1;transform:none}}@keyframes projectBackdropIn{from{opacity:0}to{opacity:1}}
@media(max-width:800px){.projects .project-card:only-child{grid-template-columns:1fr}.projects .project-card:only-child .project-visual{height:320px;min-height:0}.projects .project-content{padding:28px}.portfolio-window{padding:20px;border-radius:26px}#project-dialog-content{grid-template-columns:1fr}.project-modal-visual{height:280px;min-height:0}.project-modal-body{padding:28px}.portfolio-caption{display:none}}
@media(max-width:550px){.projects .project-grid{grid-template-columns:1fr}.portfolio-window{padding:12px;border-radius:24px}.portfolio-toolbar{padding:12px 8px 20px}.portfolio-signature{font-size:12px;letter-spacing:1px}.projects .project-filters{width:100%;gap:2px}.projects .project-filters button{flex:1;justify-content:center;flex-wrap:wrap;gap:5px;padding:10px 6px;font-size:14px}.projects .project-card:only-child .project-visual{height:240px}.projects .project-content h3{font-size:27px}#project-dialog{width:calc(100vw - 24px);border-radius:24px;max-height:calc(100dvh - 24px)}.project-modal-visual{height:230px}.project-modal-body{padding:26px 22px}}
@media(prefers-reduced-motion:reduce){#project-dialog,#project-dialog::backdrop{animation:none}.projects .project-card,.projects .project-visual img,.projects .project-detail-button{transition:none}}

/* Immersive architectural project gallery */
.projects-title-row{display:flex;align-items:center;gap:32px;margin-bottom:38px}.projects-title-row h2{font-size:clamp(26px,4vw,48px);letter-spacing:-1.6px;font-weight:600;margin:0}.projects-title-line{height:1px;flex:1;background:var(--project-line)}
.projects .portfolio-window{padding:0;background:transparent;border:0;box-shadow:none;overflow:visible;border-radius:0}.portfolio-toolbar{display:none}.projects .project-filters{margin:0 0 28px;background:transparent;padding:0;gap:12px;border-radius:0}.projects .project-filters button{border:1px solid var(--project-line)!important;background:var(--project-surface);padding:12px 20px;border-radius:50px}.projects .project-filters button.selected{background:var(--yellow)!important;color:#242827!important;border-color:var(--yellow)!important;box-shadow:none}
.projects .project-card,.projects .project-card:only-child{display:block;min-height:580px;grid-template-columns:none;border-radius:38px;border:0;background:#242b29;overflow:hidden;isolation:isolate;box-shadow:0 22px 60px #00000018}.projects .project-card .project-visual,.projects .project-card:only-child .project-visual{position:absolute;inset:0;width:100%;height:100%;min-height:0}.projects .project-visual img{transform:scale(1.01);object-position:center}.projects .project-card:hover .project-visual img{transform:scale(1.055)}.projects .project-visual:after{background:linear-gradient(180deg,#14201b12 20%,#14201b35 55%,#101a16bd 100%)}.projects .project-status{top:30px;left:30px;background:#fffef3df;padding:11px 18px;backdrop-filter:blur(20px)}
.projects .project-content{position:absolute;bottom:28px;left:28px;right:28px;padding:28px 32px;display:grid;grid-template-columns:1fr auto;gap:0 30px;align-items:center;border:1px solid #ffffff50;border-radius:25px;background:linear-gradient(120deg,#ffffffef,#ffffffe0);backdrop-filter:blur(25px);color:#242b27;box-shadow:0 10px 40px #00000012}.projects .project-category{grid-column:1;color:#737d74;font-size:12px;letter-spacing:2px}.projects .project-content h3{grid-column:1;max-width:760px;font-size:clamp(24px,3vw,39px);line-height:1.2;margin:12px 0;letter-spacing:-1px}.projects .project-location{grid-column:1;margin:0;color:#69736c;font-size:16px}.projects .project-detail-button{grid-column:2;grid-row:1/4;border-radius:50px;background:#242b27;color:white;border:1px solid #242b27;padding:18px 26px}.projects .project-detail-button:hover{background:#eeb738;color:#242b27;box-shadow:none}.projects .project-index{right:30px;top:30px;bottom:auto;background:#1e2b2580;color:white;backdrop-filter:blur(12px);width:42px;height:42px;display:grid;place-items:center;border:1px solid #ffffff50;border-radius:50%;display:none}html[data-theme=dark] .projects .project-content{background:linear-gradient(120deg,#242d29e8,#242d29c9);color:#fffdf4;border-color:#ffffff30}html[data-theme=dark] .projects .project-category,html[data-theme=dark] .projects .project-location{color:#c4cdc5}html[data-theme=dark] .projects .project-detail-button{background:var(--yellow);color:#242b27;border-color:var(--yellow)}
.projects .project-grid:has(.project-card:only-child){grid-template-columns:1fr}
@media(max-width:800px){.projects .project-card,.projects .project-card:only-child{min-height:540px}.projects .project-content{grid-template-columns:1fr;padding:26px;left:20px;right:20px;bottom:20px}.projects .project-detail-button{grid-column:1;grid-row:auto;width:fit-content;margin-top:20px;padding:14px 22px}.projects .project-content h3{font-size:30px}}
@media(max-width:550px){.projects-title-row{gap:20px;margin-bottom:26px}.projects .project-card,.projects .project-card:only-child{min-height:570px;border-radius:30px}.projects .project-content{left:14px;right:14px;bottom:14px;padding:22px;border-radius:22px}.projects .project-content h3{font-size:27px}.projects .project-filters{gap:7px}.projects .project-filters button{padding:10px;font-size:13px}.projects .project-status{left:20px;top:20px;font-size:13px}}

html[data-theme=light] .projects .project-detail-button{color:white;background:#242b27}html[data-theme=light] .projects .project-detail-button:hover{color:#242b27;background:var(--yellow)}
/* Compact corporate portfolio, four-column desktop layout */
.projects .project-grid,.projects .project-grid:has(.project-card:only-child){grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;align-items:stretch}
.projects .project-card,.projects .project-card:only-child{grid-column:auto;position:relative;display:flex;flex-direction:column;min-height:0;border-radius:16px;border:1px solid var(--project-line);background:var(--project-surface);box-shadow:0 6px 22px #00000004;overflow:hidden;isolation:isolate;transition:border-color .3s,box-shadow .3s,transform .3s}
.projects .project-card:hover{transform:translateY(-3px);border-color:#b9984b70;box-shadow:0 12px 28px #0000000b}
.projects .project-card .project-visual,.projects .project-card:only-child .project-visual{position:relative;inset:auto;flex:none;width:100%;height:auto;min-height:0;aspect-ratio:4/3;overflow:hidden;border-bottom:1px solid var(--project-line)}
.projects .project-visual:after{background:linear-gradient(180deg,#18211c20,transparent 60%)}
.projects .project-visual img{width:100%;height:100%;display:block;object-fit:cover;transform:none;transition:transform .6s}.projects .project-card:hover .project-visual img{transform:scale(1.04)}
.projects .project-status{top:14px;left:14px;border-radius:6px;background:#fffef3ed;color:#333a34;padding:7px 10px;font-size:12px;line-height:1.4;font-weight:600;box-shadow:0 2px 9px #0000000a;backdrop-filter:blur(12px)}
.projects .project-content,html[data-theme=dark] .projects .project-content{position:relative;inset:auto;flex:1;display:flex;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;padding:23px 22px 20px;background:transparent;backdrop-filter:none;border:0;border-radius:0;box-shadow:none;color:var(--project-ink)}
.projects .project-category,html[data-theme=dark] .projects .project-category{font-size:12px;letter-spacing:1.4px;line-height:1.5;color:var(--project-muted);font-weight:600}
.projects .project-content h3{font-size:20px;line-height:1.45;letter-spacing:-.45px;font-weight:600;max-width:none;margin:12px 0 10px}
.projects .project-location,html[data-theme=dark] .projects .project-location{font-size:14px;line-height:1.6;color:var(--project-muted);margin:0 0 24px}
.projects .project-detail-button,html[data-theme=light] .projects .project-detail-button,html[data-theme=dark] .projects .project-detail-button{width:100%;margin-top:auto;border:0;border-top:1px solid var(--project-line);border-radius:0;background:transparent;color:var(--project-ink);padding:17px 0 0;text-align:left;font-size:14px;font-weight:600;box-shadow:none;transform:none;transition:color .25s}
.projects .project-detail-button:hover,html[data-theme=light] .projects .project-detail-button:hover{color:#987323;background:transparent;box-shadow:none;transform:none}
.projects .project-index{display:block;position:absolute;inset:auto 22px 20px auto;width:auto;height:auto;border:0;border-radius:0;background:none;backdrop-filter:none;color:var(--project-muted);font-size:12px;pointer-events:none}
.projects .project-filters{gap:8px;margin-bottom:26px}.projects .project-filters button{border-radius:8px;padding:10px 15px;font-size:14px;font-weight:500}.projects .project-filters button.selected{background:var(--project-ink)!important;color:var(--project-surface)!important;border-color:var(--project-ink)!important}.filter-count{border-radius:5px}
.projects-title-row h2{font-size:clamp(26px,3vw,40px);letter-spacing:-1px}.projects-title-row{margin-bottom:30px}
@media(max-width:1100px){.projects .project-grid,.projects .project-grid:has(.project-card:only-child){grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.projects .project-content{padding:21px 19px}.projects .project-index{right:19px}}
@media(max-width:850px){.projects .project-grid,.projects .project-grid:has(.project-card:only-child){grid-template-columns:repeat(2,minmax(0,1fr))}.projects .project-card,.projects .project-card:only-child{min-height:0}.projects .project-content h3{font-size:21px}.projects .project-detail-button{width:100%;margin-top:auto}}
@media(max-width:550px){.projects .project-grid,.projects .project-grid:has(.project-card:only-child){grid-template-columns:1fr}.projects .project-card,.projects .project-card:only-child{min-height:0;border-radius:14px}.projects .project-content{padding:23px}.projects .project-content h3{font-size:22px}.projects .project-index{right:23px}.projects .project-filters{gap:6px}.projects .project-filters button{padding:10px 8px;font-size:13px}.projects .project-status{top:14px;left:14px}}

#contact-dialog{border-radius:26px;max-height:calc(100dvh - 40px);overflow:auto}#contact-dialog .contact-honeypot{display:none!important}#contact-dialog .contact-delivery-note{font-size:14px;line-height:1.6;color:#697168;margin:6px 0 18px}#contact-dialog .contact-direct{font-size:14px;line-height:1.8;margin:18px 0 0}#contact-dialog .contact-direct a{color:#84600d;text-decoration:underline;overflow-wrap:anywhere}#contact-dialog .close{border-radius:50%}

.sketch-gallery{position:absolute;inset:0;transition:transform .7s ease-out;pointer-events:none}
.sketch-gallery .sketch-slide{position:absolute;inset:0;opacity:0;transform:scale(1.04);transition:opacity 1s ease-in-out,transform 3s ease-out;object-position:center}
.sketch-gallery .sketch-slide.is-active{opacity:.72;transform:scale(1.015)}
html[data-theme=light] .sketch-gallery .sketch-slide{opacity:0}
html[data-theme=light] .sketch-gallery .sketch-slide.is-active{opacity:.68}
.paused .sketch-gallery{transform:none!important}
@media(prefers-reduced-motion:reduce){.sketch-gallery,.sketch-gallery .sketch-slide{transition:none!important;transform:none!important}}
