:root{--bg:#4f6f5c;--surface:#5d7f6a;--surface-2:#6a8d76;--text:#f8f3e8;--muted:#e2e5d9;--line:#ffffff1f;--primary:#d8b97a;--accent:#9dc8ab;--draft-line:#f5efdf6b;--panel-border:#ffffff3d;--panel-bg-top:#ffffff0d;--panel-bg-bottom:#ffffff05;--radius-lg:24px;--radius-md:14px;--shadow-soft:0 22px 48px #00000059;--text-trace:0 1px 0 #000000bf, 0 0 2px #0000008c, 0 2px 6px #00000073}*{box-sizing:border-box}html{scroll-behavior:smooth;background:radial-gradient(circle at 18% 22%,#6f8f7a 0%,#4f6f5c 44%,#405b4b 100%)}html.lightbox-active,body.lightbox-active{overflow:hidden}body{isolation:isolate;color:var(--text);background:radial-gradient(circle at 18% 22%,#6f8f7a 0%,#4f6f5c 44%,#405b4b 100%);margin:0;font-family:Sora,sans-serif;line-height:1.6;position:relative}body:before{content:"";z-index:-3;pointer-events:none;background:linear-gradient(#080c0a7a,#080c0a9e),url(../media/forest-background.0wc20-mas_0hm.jpg) 50%/cover no-repeat;position:fixed;inset:0}.bg-scene{display:none}.studio-shell,.studio-shell>div,.studio-shell iframe,.studio-shell [data-sanity-studio]{width:100%;min-height:100dvh}.studio-shell [role=tablist]>:first-child{display:none!important}h1,h2,h3{margin:0;font-family:Bodoni Moda,serif;line-height:1.12}p{margin:0}img{max-width:100%;display:block}@keyframes pageEnterRise{0%{opacity:0;filter:blur(6px);transform:translateY(18px)scale(.99)}to{opacity:1;filter:blur();transform:translateY(0)scale(1)}}main.page-entering>*{transform-origin:top;will-change:transform, opacity, filter;animation:.52s cubic-bezier(.22,1,.36,1) both pageEnterRise}main.page-entering>:nth-child(2){animation-delay:70ms}main.page-entering>:nth-child(3){animation-delay:.14s}main.page-entering>:nth-child(4){animation-delay:.21s}main.page-entering>:nth-child(5){animation-delay:.28s}.top-progress{z-index:40;background:linear-gradient(90deg, var(--primary), var(--accent));width:0;height:3px;position:fixed;top:0;left:0}.container{width:min(1120px,92vw);margin:0 auto}.section{padding:5rem 0}.site-header{z-index:30;background:0 0;border-bottom:1px solid #0000;position:sticky;top:12px}.site-header.scrolled{border-color:var(--line)}body.lightbox-active .site-header{opacity:0;pointer-events:none;transition:opacity .2s}.nav-wrap{justify-content:space-between;align-items:center;gap:1rem;min-height:74px;display:flex}.container.nav-wrap.island{border-radius:var(--radius-md);border:1px solid var(--panel-border);-webkit-backdrop-filter:blur(12px)saturate(105%);backdrop-filter:blur(12px)saturate(105%);background:linear-gradient(#ffffff0f,#ffffff05);margin-top:.6rem;margin-bottom:.6rem;padding:.55rem 1rem;box-shadow:0 18px 40px #060a0873}@media (max-width:820px){.container.nav-wrap.island{border-radius:12px;margin-top:.4rem;margin-bottom:.4rem;padding-left:.8rem;padding-right:.8rem}}.brand{color:inherit;align-items:center;gap:.75rem;text-decoration:none;display:inline-flex}.brand-mark{color:#fff;background:linear-gradient(145deg,#d2ad67,#8d6a30);border-radius:50%;place-items:center;width:34px;height:34px;font-size:.76rem;font-weight:700;display:grid}.brand-text{letter-spacing:.03em;text-transform:uppercase;text-shadow:var(--text-trace);-webkit-text-stroke:.3px #00000080;font-size:.92rem;font-weight:600}.site-nav{align-items:center;gap:1.4rem;display:flex}.nav-dropdown{position:relative}.nav-dropdown:before{content:"";height:.9rem;position:absolute;top:100%;left:-.25rem;right:-.25rem}.nav-dropdown>a{align-items:center;gap:.35rem;display:inline-flex}.nav-dropdown>a:after{content:"";opacity:.85;border-bottom:1.5px solid;border-right:1.5px solid;width:7px;height:7px;transform:rotate(45deg)translateY(-2px)}.nav-dropdown-menu{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);min-width:190px;box-shadow:var(--shadow-soft);opacity:0;visibility:hidden;pointer-events:none;z-index:35;background:#4a6956ed;border:1px solid #ffffff1f;border-radius:12px;padding:.45rem;transition:opacity .18s,transform .18s;position:absolute;top:calc(100% + .18rem);left:50%;transform:translate(-50%)translateY(8px)}.nav-dropdown:hover .nav-dropdown-menu,.nav-dropdown:focus-within .nav-dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%)translateY(0)}.nav-dropdown-menu a{color:var(--text);border-radius:8px;padding:.46rem .6rem;font-size:.9rem;display:block}.nav-dropdown-menu a:after{content:none}.nav-dropdown-menu a:hover,.nav-dropdown-menu a:focus-visible{color:var(--primary);background:#d2ad6729}.site-nav a,.mobile-nav a,.site-footer a{color:inherit;text-decoration:none}.site-nav a,.mobile-nav a,.site-footer a,.eyebrow,.lead,.section-head h2,.footer-wrap,.back-to-top,.contact-card,.contact-form,.hero-copy h1,.hero-showcase-copy h2,.hero-showcase-tile h3{text-shadow:var(--text-trace);-webkit-text-stroke:.28px #0000007a}.site-nav a:hover,.mobile-nav a:hover,.site-footer a:hover,.site-nav a.active,.mobile-nav a.active{color:var(--primary)}.site-nav a{will-change:transform;padding:.18rem .12rem;transition:color .2s,background .2s,transform .22s;position:relative}.site-nav a:after{content:"";background:linear-gradient(90deg, var(--primary), var(--accent));border-radius:2px;width:0%;height:2px;transition:width .26s cubic-bezier(.22,1,.36,1);position:absolute;bottom:-8px;left:50%;transform:translate(-50%)}.site-nav a:hover,.site-nav a:focus{color:var(--primary);background:#ffffff08;border-radius:8px}.site-nav a:hover:after,.site-nav a:focus:after{width:60%}.site-nav a.active:after{width:100%}.nav-dropdown-menu{transition:opacity .22s cubic-bezier(.22,1,.36,1),transform .22s cubic-bezier(.22,1,.36,1)}.mobile-nav.open{animation:.24s cubic-bezier(.22,1,.36,1) both navSlideDown}@keyframes navSlideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}.menu-toggle{color:var(--text);font:inherit;cursor:pointer;text-shadow:var(--text-trace);-webkit-text-stroke:.28px #0000008c;-webkit-backdrop-filter:blur(10px)saturate(120%);backdrop-filter:blur(10px)saturate(120%);background:#0a100dc7;border:1px solid #ffffff38;border-radius:999px;padding:.5rem .95rem;font-weight:700;display:none;box-shadow:0 10px 24px #00000047}.menu-toggle:hover,.menu-toggle:focus-visible{color:#fff4dc;background:#0d1611eb;border-color:#d8b97a99}.mobile-nav{background:linear-gradient(#1c2921f5,#141e18fa);border-top:1px solid #ffffff14;flex-direction:column;gap:.8rem;padding:.8rem 1rem 1rem;display:none;box-shadow:0 16px 36px #00000047}.mobile-nav.open{display:flex}.eyebrow{text-transform:uppercase;letter-spacing:.15em;color:var(--primary);margin-bottom:.8rem;font-family:Sora,Consolas,Courier New,monospace;font-size:.74rem;font-weight:700}.btn{font:inherit;cursor:pointer;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:.72rem 1.2rem;font-weight:600;text-decoration:none;transition:transform .22s,box-shadow .22s;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn-primary{color:#121519;box-shadow:var(--shadow-soft);background:linear-gradient(145deg,#d2ad67,#a57a2b)}.btn-outline{color:var(--text);-webkit-backdrop-filter:blur(10px)saturate(120%);background:#ffffff12;border-color:#ffffff24}.section-head{margin-bottom:1.5rem}.section-head h2{padding-bottom:.52rem;font-size:clamp(1.7rem,3.2vw,3.1rem);position:relative}.hero-copy h1,.section-head h2{text-wrap:balance}.section-head h2:after{content:"";background:linear-gradient(90deg, var(--primary), #d8b97a00);width:min(170px,38vw);height:2px;position:absolute;bottom:0;left:0}.section-head h2:before{content:"";border-right:1px solid var(--draft-line);border-bottom:1px solid var(--draft-line);width:10px;height:10px;position:absolute;bottom:0;left:min(170px,38vw);transform:translate(3px,-4px)rotate(-45deg)}.tag{color:var(--accent);text-transform:uppercase;letter-spacing:.11em;font-family:Sora,Consolas,Courier New,monospace;font-size:.7rem;font-weight:700}:is(.hero-showcase-main,.hero-showcase-tile,.about-panel,.profile-card,.service-card,.accordion-item,.carousel-slide,.project-card,.status-guide-card,.contact-form,.contact-card){position:relative}:is(.hero-showcase-main,.hero-showcase-tile,.about-panel,.profile-card,.service-card,.accordion-item,.carousel-slide,.project-card,.status-guide-card,.contact-form,.contact-card,.strip article){-webkit-backdrop-filter:blur(25px);backdrop-filter:blur(25px);will-change:backdrop-filter;transform:translateZ(0)}:is(.hero-showcase-main,.hero-showcase-tile,.about-panel,.profile-card,.service-card,.accordion-item,.carousel-slide,.project-card,.contact-form,.contact-card):before{content:"";border-top:1px solid var(--draft-line);border-left:1px solid var(--draft-line);opacity:.85;pointer-events:none;width:26px;height:26px;position:absolute;top:9px;left:9px}:is(.hero-showcase-main,.hero-showcase-tile,.about-panel,.profile-card,.service-card,.accordion-item,.carousel-slide,.project-card,.contact-form,.contact-card):after{content:"";border-right:1px solid var(--draft-line);border-bottom:1px solid var(--draft-line);opacity:.65;pointer-events:none;width:26px;height:26px;position:absolute;bottom:9px;right:9px}.site-footer{background:linear-gradient(#0000,#080c0a2e);border-top:1px solid #ffffff14;padding:1rem 0 1.4rem}.footer-wrap{color:var(--muted);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer-actions{align-items:center;gap:.55rem;display:flex}.footer-divider{color:#ffffff4d;margin:0 .2rem;font-size:1rem;line-height:1}.social-link{background:#ffffff08;border:1px solid #ffffff1f;border-radius:50%;place-items:center;width:36px;height:36px;display:inline-grid}.social-link svg{fill:currentColor;width:16px;height:16px;color:var(--text)}.footer-badge{background:#ffffff1a;border:1px solid #ffffff40;border-radius:20px;align-items:center;gap:6px;padding:3px 10px 3px 4px;text-decoration:none;display:inline-flex}.footer-badge-logo{object-fit:contain;background:#fff;border-radius:50%;width:24px;height:24px}.footer-badge-label{color:#fff;letter-spacing:.01em;white-space:nowrap;font-family:Georgia,serif;font-size:11px}.back-to-top{margin-left:auto}.reveal{opacity:1;transition:none;transform:none}.reveal.in-view{opacity:1;transform:none}.motion-ready{opacity:1;will-change:auto}.text-motion-left{transform:translate(-42px)}.text-motion-right{transform:translate(42px)}.reveal.in-view .motion-ready,.reveal.motion-ready.in-view{animation-duration:.72s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both;animation-delay:var(--motion-delay,0s)}.reveal.in-view .text-motion-left,.reveal.text-motion-left.in-view{animation-name:slideInFromLeft}.reveal.in-view .text-motion-right,.reveal.text-motion-right.in-view{animation-name:slideInFromRight}@keyframes slideInFromLeft{0%{opacity:0;transform:translate(-42px)}to{opacity:1;transform:translate(0)}}@keyframes slideInFromRight{0%{opacity:0;transform:translate(42px)}to{opacity:1;transform:translate(0)}}@media (prefers-reduced-motion:reduce){.motion-ready,.text-motion-left,.text-motion-right{opacity:1;animation:none;transform:none}}@media (max-width:820px){.site-nav,.nav-dropdown-menu{display:none}.menu-toggle{display:inline-flex}.section{padding:4rem 0}.container.nav-wrap.island{background:linear-gradient(#0a100deb,#101813e0);border-color:#ffffff2e}.back-to-top{margin-left:0}.site-header{top:8px}body:before{background:radial-gradient(circle at 50% 18%,#070d0a75,#0000 44%),linear-gradient(#070d0a70,#070d0aad)}.bg-scene{opacity:.62}.hero-copy h1,.section-head h2,.brand-text,.footer-wrap,.back-to-top,.mobile-nav a{text-shadow:var(--text-trace);-webkit-text-stroke:.3px #0000008c}.menu-toggle{color:var(--text);background:#080c0aeb;border-color:#ffffff47;min-width:5.2rem}}
.hero{grid-template-columns:1.15fr .85fr;align-items:center;gap:1.6rem;min-height:calc(100vh - 80px);display:grid}.hero h1{max-width:12ch;font-size:clamp(2.3rem,5vw,4.9rem)}.lead{color:var(--muted);max-width:56ch;margin-top:1.1rem}.hero-actions{flex-wrap:wrap;gap:.8rem;margin-top:1.7rem;display:flex}.hero-showcase{gap:1rem;display:grid}.hero-showcase-main,.hero-showcase-tile{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.hero-showcase-image{object-fit:cover}.hero-showcase-main img,.hero-showcase-tile img{width:100%;display:block}.hero-showcase-main{grid-template-rows:auto 1fr;display:grid}.hero-showcase-main img{object-fit:cover}.hero-showcase-media{aspect-ratio:16/11;position:relative}.hero-showcase-copy,.hero-showcase-tile-copy{background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));-webkit-backdrop-filter:blur(12px)saturate(105%);backdrop-filter:blur(12px)saturate(105%);border-top:1px solid var(--panel-border);padding:1rem 1.1rem 1.1rem}.hero-showcase-copy h2,.hero-showcase-tile h3{margin-top:.35rem}.hero-showcase-copy p:last-child{color:var(--muted);margin-top:.45rem}.hero-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.hero-showcase-tile img{object-fit:cover}.hero-showcase-tile{grid-template-rows:auto 1fr;display:grid}.hero-showcase-tile-media{aspect-ratio:4/3;position:relative}.hero-showcase-tile h3{font-size:1.2rem}.hero-showcase-tile-desc{color:var(--muted);margin-top:.4rem;font-size:.92rem;line-height:1.45}.strip{padding:1.2rem 0}.strip-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.strip article{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));padding:1rem}.strip h2{font-size:1.35rem}@media (max-width:940px){.hero{grid-template-columns:1fr;min-height:auto;padding-top:2rem}.hero-showcase-grid,.strip-grid{grid-template-columns:1fr}}
.section-note{max-width:36ch;color:var(--muted)}.carousel-shell{grid-template-columns:132px minmax(0,1fr);align-items:center;gap:1rem;display:grid}.carousel-thumbs-wrap{align-items:center;display:flex;position:relative}.carousel-thumbs{scrollbar-width:none;-ms-overflow-style:none;gap:.7rem;max-height:600px;padding-right:.2rem;display:grid;overflow-y:auto;-webkit-mask-image:linear-gradient(#0000 0%,#000 12% 88%,#0000 100%);mask-image:linear-gradient(#0000 0%,#000 12% 88%,#0000 100%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.carousel-thumbs::-webkit-scrollbar{display:none}.carousel-thumb{color:var(--text);text-align:left;cursor:pointer;box-shadow:var(--shadow-soft);background:#ffffff0a;border:1px solid #ffffff1f;border-radius:18px;gap:.35rem;padding:.45rem;display:grid}.carousel-thumb img{aspect-ratio:1;object-fit:cover;border-radius:14px;width:100%}.carousel-thumb span{color:var(--primary);letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:700}.carousel-thumb strong{font-size:.86rem;line-height:1.3}.carousel-thumb.active{background:#d2ad6724;border-color:#d2ad67bf}.carousel-panel{min-width:0}.carousel{grid-template-columns:auto 1fr auto;align-items:center;gap:.8rem;display:grid}.carousel-viewport{border-radius:var(--radius-lg);scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;overflow:auto hidden}.carousel-viewport::-webkit-scrollbar{display:none}.carousel-track{width:100%;display:flex}.carousel-slide{scroll-snap-align:start;border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));min-width:100%;box-shadow:var(--shadow-soft);position:relative;overflow:hidden}.carousel-zoom-btn{width:40px;height:40px;color:var(--primary);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0d1611d9;border:1px solid #ffffff40;border-radius:8px;justify-content:center;align-items:center;transition:all .18s;display:flex;position:absolute;top:.8rem;right:.8rem}.carousel-zoom-btn:hover,.carousel-zoom-btn:focus-visible{background:#0d1611f2;border-color:#d2ad6799;transform:scale(1.1)}.carousel-zoom-btn svg{fill:currentColor;width:20px;height:20px}.carousel-slide img{aspect-ratio:16/9;object-fit:cover;width:100%}.carousel-caption{padding:.6rem}.carousel-caption h3{margin-top:.25rem;font-size:1.1rem}.carousel-btn{color:var(--primary);font:inherit;cursor:pointer;background:#0d1611d1;border:1px solid #0e1813bf;border-radius:999px;padding:.65rem 1rem;font-weight:700;transition:background .18s,color .18s,transform .18s,border-color .18s}.carousel-btn:hover,.carousel-btn:focus-visible{color:#f2d59e;background:#0a110eeb;border-color:#d8b97ab3;transform:translateY(-1px)}.carousel-btn:disabled{opacity:.4;cursor:not-allowed}.carousel-dots{justify-content:center;gap:.45rem;margin-top:.9rem;display:flex}.carousel-dot{cursor:pointer;background:#ffffff4d;border:0;border-radius:50%;width:10px;height:10px}.carousel-dot.active{background:var(--primary)}.project-spotlight{border-radius:var(--radius-lg);height:clamp(320px,34vw,360px);box-shadow:var(--shadow-soft);background:radial-gradient(circle at 88% 10%,#7bb59a33,#0000 38%),linear-gradient(160deg,#d2ad671f,#ffffff05);border:1px solid #ffffff1f;grid-template-columns:1.05fr .95fr;gap:1rem;margin-bottom:1rem;display:grid;position:relative;overflow:hidden}.project-spotlight-media{min-width:0;height:100%;min-height:0;position:relative;overflow:hidden}.project-spotlight.is-image-right .project-spotlight-media{order:2}.project-spotlight.is-image-right .project-spotlight-copy{order:1}.spotlight-swap-btn{width:42px;height:42px;color:var(--primary);cursor:pointer;z-index:12;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#0d1611d1;border:1px solid #ffffff3d;border-radius:999px;place-items:center;transition:transform .18s,border-color .18s,background .18s;display:grid;position:absolute;top:.85rem;right:.85rem}.spotlight-swap-btn svg{fill:currentColor;width:19px;height:19px}.spotlight-swap-btn:hover,.spotlight-swap-btn:focus-visible{background:#0d1611f2;border-color:#d2ad67b8;transform:scale(1.08)}.project-spotlight-media img{object-fit:cover;object-position:50% 50%;opacity:1;width:100%;min-width:0;height:100%;transition:opacity .24s,transform .24s;transform:translate(0)}.project-spotlight-copy{opacity:1;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);align-content:center;gap:.7rem;height:100%;min-height:0;padding:1.2rem;transition:opacity .24s,transform .24s;display:grid;overflow:hidden;transform:translate(0)}.project-spotlight.is-swapping .project-spotlight-media,.project-spotlight.is-swapping .project-spotlight-copy{opacity:0}.project-spotlight.is-swapping.is-image-right .project-spotlight-media{transform:translate(18px)}.project-spotlight.is-swapping.is-image-right .project-spotlight-copy,.project-spotlight.is-swapping:not(.is-image-right) .project-spotlight-media{transform:translate(-18px)}.project-spotlight.is-swapping:not(.is-image-right) .project-spotlight-copy{transform:translate(18px)}@media (prefers-reduced-motion:reduce){.project-spotlight-media,.project-spotlight-copy,.spotlight-swap-btn{transition:none}}.project-spotlight-copy h3{overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:clamp(1.5rem,2.8vw,2.4rem);display:-webkit-box;overflow:hidden}.spotlight-type{color:var(--accent);text-transform:uppercase;letter-spacing:.1em;overflow-wrap:anywhere;word-break:break-word;font-size:.76rem;font-weight:700}.spotlight-description{color:var(--muted);overflow-wrap:anywhere;word-break:break-word;-webkit-line-clamp:4;-webkit-box-orient:vertical;font-size:.9375rem;display:-webkit-box;overflow:hidden}.spotlight-more-link{width:fit-content;color:var(--primary);letter-spacing:.04em;text-transform:uppercase;background:0 0;border:0;border-radius:0;margin-top:.15rem;padding:0;font-size:.82rem;font-weight:700;text-decoration:none;display:inline-block}.spotlight-more-link:hover,.spotlight-more-link:focus-visible{color:#f2d59e;text-decoration:underline}.spotlight-points{flex-wrap:wrap;gap:.45rem;display:flex}.spotlight-points span{overflow-wrap:anywhere;word-break:break-word;background:#ffffff0d;border:1px solid #ffffff2e;border-radius:999px;padding:.35rem .65rem;font-size:.78rem}.project-status-guide{grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:.9rem;margin:1rem 0 1.2rem;display:grid}.status-guide-card{border-radius:var(--radius-md);background:linear-gradient(170deg,#ffffff08,#ffffff03);border:1px solid #ffffff1f;padding:1rem}.status-guide-card h3,.status-guide-card p{text-shadow:0 1px 3px #00000080}.status-guide-card p:last-child{color:var(--muted);margin-top:.45rem}.project-disclosure{max-width:72ch;margin:0 0 1.1rem}.project-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;display:grid}.project-card{border-radius:var(--radius-md);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));box-shadow:var(--shadow-soft);border:1px solid #ffffff1f;transition:transform .22s,box-shadow .22s,border-color .22s,opacity .26s;overflow:hidden}.project-card:focus-visible{outline-offset:2px;outline:2px solid #d2ad67cc}.project-card:hover{border-color:#d2ad6766;transform:translateY(-4px);box-shadow:0 18px 38px #0000004d}.carousel-lightbox{z-index:100;opacity:0;visibility:hidden;cursor:pointer;background:#000000e0;justify-content:center;align-items:center;padding:1.5rem;transition:opacity .22s,visibility .22s;display:flex;position:fixed;inset:0}.carousel-lightbox.active{opacity:1;visibility:visible}.carousel-lightbox-media{cursor:default;width:min(86vw,980px);position:relative;box-shadow:0 20px 80px #000000bf}.carousel-lightbox img{object-fit:contain;border-radius:0;width:100%;max-height:calc(100vh - 160px);display:block}.carousel-lightbox-caption{text-align:center;color:#fffffff0;text-transform:lowercase;background:#000000b3;margin:0;padding:.8rem 1rem;font-size:1rem;line-height:1.3;position:absolute;bottom:0;left:0;right:0}.carousel-lightbox-close{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:42px;height:42px;font-size:2rem;transition:color .18s,transform .18s;display:flex;position:absolute;top:.8rem;right:1.1rem}.carousel-lightbox-close:hover,.carousel-lightbox-close:focus-visible{color:var(--primary);transform:scale(1.08)}.carousel-lightbox-prev,.carousel-lightbox-next{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:0;justify-content:center;align-items:center;width:52px;height:52px;font-size:2.1rem;transition:color .18s,transform .18s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-lightbox-prev{left:clamp(.55rem,2vw,1.2rem)}.carousel-lightbox-next{right:clamp(.55rem,2vw,1.2rem)}.carousel-lightbox-prev:hover,.carousel-lightbox-prev:focus-visible,.carousel-lightbox-next:hover,.carousel-lightbox-next:focus-visible{color:var(--primary);transform:translateY(-50%)scale(1.1)}.carousel-lightbox-prev:disabled,.carousel-lightbox-next:disabled{opacity:.4;cursor:not-allowed}.carousel-lightbox-prev:disabled:hover,.carousel-lightbox-next:disabled:hover{color:#fff;transform:translateY(-50%)}.carousel-slide img,.project-card img,.project-spotlight-media{cursor:zoom-in}.project-card img{aspect-ratio:4/3;object-fit:cover;width:100%;transition:transform .26s}.project-card:hover img{transform:scale(1.03)}.project-card div{padding:1.5rem}.project-card h2,.project-card h3,.project-card p{text-shadow:0 1px 3px #00000080}.project-tag{letter-spacing:.05em;text-transform:uppercase;border:1px solid #fff3;border-radius:999px;margin:.4rem 0 .2rem;padding:.2rem .55rem;font-size:.68rem;font-weight:700}.status-pill-rendered{color:#f2cb84;font-weight:400}.status-pill-accomplished{color:#99d9b1;font-weight:400}.mini-link{color:var(--primary);font:inherit;cursor:pointer;background:0 0;border:0;margin-top:.5rem;padding:0}@media (max-width:940px){.project-spotlight{grid-template-columns:1fr;height:auto}.project-spotlight-media{min-height:260px}.carousel-shell{grid-template-columns:1fr}.carousel-thumbs{grid-auto-columns:minmax(110px,1fr);grid-auto-flow:column;max-height:none;padding-bottom:.2rem;overflow:auto hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#00000029 8%,#000 18% 82%,#00000029 92%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#00000029 8%,#000 18% 82%,#00000029 92%,#0000 100%)}}@media (max-width:820px){.carousel{grid-template-columns:1fr}.carousel-btn{justify-self:center}.carousel-slide{min-width:100%}.carousel-lightbox{padding:.8rem}.carousel-lightbox-media{width:95vw}.carousel-lightbox img{max-height:calc(100vh - 125px)}.carousel-lightbox-caption{padding:.65rem .8rem;font-size:.9rem}.carousel-lightbox-prev,.carousel-lightbox-next{width:44px;height:44px;font-size:1.8rem}}.project-filter-tabs{flex-wrap:wrap;gap:.75rem;margin-top:1.2rem;display:flex}.filter-tab{color:var(--text);cursor:pointer;background:0 0;border:1px solid #fff3;border-radius:20px;padding:.55rem 1.1rem;font-size:.9rem;font-weight:500;transition:all .24s}.filter-tab:hover{background:#d2ad671a;border-color:#d2ad6780}.filter-tab.active{color:#fff;background:#d2ad6740;border-color:#d2ad67cc}.project-card.hidden{opacity:0;pointer-events:none;display:none}
.about-layout{grid-template-columns:.92fr 1.08fr;gap:1rem;display:grid}.about-panel{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));box-shadow:var(--shadow-soft);overflow:hidden}.about-portrait img,.award-feature img{object-fit:cover;width:100%;display:block}.about-portrait img{aspect-ratio:4/4.8}.about-panel-meta,.about-story{padding:1rem 1.1rem 1.1rem}.about-panel-meta h3{font-size:1.5rem}.about-panel-meta p{color:var(--muted);margin-top:.4rem}.about-panel-meta ul{color:var(--muted);margin:.8rem 0 0;padding-left:1rem}.about-story{gap:1rem;display:grid}.about-intro{color:var(--text)}.profile-card{border:1px solid var(--panel-border);border-radius:var(--radius-lg);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));gap:1rem;padding:2rem;display:grid}.profile-card h3,.profile-card p{text-shadow:0 1px 3px #00000080}.award-feature{background:radial-gradient(circle at 10% 15%,#d2ad6724,#0000 38%),linear-gradient(170deg,#ffffff0d,#ffffff05);overflow:hidden}.award-feature img{object-fit:cover;width:100%;height:100%;min-height:220px}.award-feature-copy{align-content:center;padding:1.1rem;display:grid}.award-feature-copy p{color:var(--text);max-width:62ch}.award-feature-inline{grid-template-columns:minmax(150px,175px) 1fr;align-items:stretch;display:grid}.award-feature-inline img{width:100%;height:100%;min-height:0;max-height:240px}@media (max-width:940px){.about-layout,.award-feature{grid-template-columns:1fr}.award-feature-inline img{min-height:220px;max-height:none}}.about-dashboard{gap:1rem;display:grid}.db-card{align-content:start;gap:.8rem;padding:2rem;display:grid}.db-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);opacity:.8;margin-bottom:.2rem;font-size:.75rem;font-weight:700}.db-card h3{margin:0;font-family:Sora,sans-serif;font-size:1.6rem;font-weight:600}.db-sub{color:var(--muted);font-size:.95rem}.db-tags{flex-wrap:wrap;gap:.6rem;margin-top:.5rem;display:flex}.db-pill{color:#1a3c5a;background:#f0f4f8;border-radius:20px;padding:.25rem .8rem;font-size:.8rem;font-weight:600;display:inline-block}.db-split{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.db-tags.db-tags-outline .db-pill{color:var(--muted);background:0 0;border:1px solid #fff3}.db-list{gap:1.2rem;margin:0;padding:0;list-style:none;display:grid}.db-list li{padding-left:1.2rem;position:relative}.db-list li:before{content:"";border-radius:50%;width:6px;height:6px;position:absolute;top:.45rem;left:0}.db-list-blue li:before{background:#4a90e2}.db-list-green li:before{background:#2ecc71}.db-title{color:var(--text);font-weight:600;line-height:1.3;display:block}.db-meta{color:var(--muted);margin-top:.1rem;font-size:.85rem;display:block}.db-meta-inline{color:var(--muted);font-weight:400}.db-card-award{grid-template-columns:minmax(180px,200px) 1fr;align-content:stretch;align-items:stretch;gap:0;padding:0;display:grid}.db-award-image{overflow:hidden}.db-award-image img{object-fit:cover;width:100%;height:100%;min-height:100%;display:block}.db-award-content{align-content:center;gap:1rem;padding:2rem;display:grid}.db-card-award p{color:var(--text)}.db-award-head{align-items:center;gap:.8rem;font-size:.85rem;font-weight:600;display:flex}.db-pill.award-pill{padding:.2rem .8rem}@media (max-width:940px){.db-split{grid-template-columns:1fr}}.about-sidebar{flex-direction:column;display:flex}.sidebar-image-wrap{border:none;border-radius:0;width:100%;margin:0}.sidebar-image-wrap img{aspect-ratio:4/4.8;object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.about-sidebar-meta{padding:1.5rem}.sidebar-title{color:var(--text);margin:0 0 .4rem;font-size:1.4rem;font-weight:700}.sidebar-sub{color:var(--text);opacity:.9;margin-bottom:0;font-size:.9rem;line-height:1.4}.sidebar-divider{border:none;border-top:1px solid #ffffff1a;margin:1.5rem 0}.sidebar-eyebrow{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);opacity:.8;margin-bottom:.6rem;font-size:.7rem}.sidebar-list{margin:0;padding:0;list-style:none}.sidebar-list li{color:var(--text);margin-bottom:.4rem;font-size:.85rem}.sidebar-tags{flex-direction:column;align-items:flex-start;gap:.5rem;display:flex}.sidebar-tags .db-pill{width:max-content;color:var(--text);background:#ffffff0d;border:1px solid #ffffff26}.profile-tags .db-pill{color:var(--text);background:#ffffff0d;border:1px solid #ffffff26}.db-award-head-wrap{align-items:center;gap:.8rem;margin-bottom:.6rem;display:flex}.principles-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}@media (max-width:940px){.principles-grid{grid-template-columns:1fr}}#architecture-design{padding-top:2rem}#services{padding:4rem 0}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;margin-top:2rem;display:grid}.service-card{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));gap:.8rem;padding:1.5rem;transition:transform .3s,box-shadow .3s;display:grid}.service-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px #00000026}.service-card h3{color:var(--text);text-shadow:0 1px 3px #00000080;margin:0;font-size:1.25rem;font-weight:600}.service-card p{color:var(--muted);text-shadow:0 1px 3px #00000080;margin:0;font-size:.95rem;line-height:1.6}.service-card p+p{margin-top:.8rem}@media (max-width:940px){.services-grid{grid-template-columns:1fr;gap:1.2rem}.service-card{padding:1.2rem}}.about-unified{overflow:hidden}.about-unified-head{border-bottom:1px solid #ffffff14;align-items:center;gap:1rem;padding:.75rem .9rem;display:flex}.about-head-avatar{border:2px solid #ffffff40;border-radius:999px;flex:none;width:104px;height:104px;overflow:hidden}.about-head-avatar img{object-fit:cover;object-position:center 12%;width:100%;height:100%}.about-head-copy h3{margin:0;font-size:1.85rem;line-height:1.05}.about-head-copy p{color:var(--muted);margin:.15rem 0 0;font-weight:600;line-height:1.2}.about-unified-body{grid-template-columns:280px minmax(0,1fr);align-items:start;display:grid}.about-achievements{border-right:1px solid #ffffff1a;gap:1rem;padding:.9rem .7rem;display:grid}.about-side-block{gap:.5rem;display:grid}.about-chip-list{flex-wrap:wrap;gap:.42rem;display:flex}.about-chip{color:var(--text);background:#ffffff0f;border:1px solid #fff3;border-radius:8px;padding:.2rem .6rem;font-size:.95rem;font-weight:600;line-height:1.1;display:inline-block}.about-membership-line{color:var(--text);margin:0;font-weight:600;line-height:1.25}.about-main-content{gap:1rem;padding:.9rem;display:grid}.design-philosophy-quote{color:var(--text);border-left:3px solid #2dcc91e6;margin:0;padding-left:.9rem;font-size:1.1rem;font-style:italic;font-weight:500;line-height:1.4}.design-philosophy-list{gap:.85rem;display:grid}.service-stack{gap:.55rem;display:grid}.service-row{background:#0000002e;border:1px solid #ffffff14;border-radius:12px;padding:.85rem .95rem}.service-row h4{color:var(--text);margin:0;font-size:1.9rem;line-height:1.05}.service-row p{color:var(--muted);margin:.2rem 0 0;font-size:1.25rem;font-weight:600;line-height:1.2}.service-row p+p{margin-top:.55rem}@media (max-width:940px){.about-head-copy h3{font-size:1.45rem}.about-head-avatar{width:82px;height:82px}.about-unified-body{grid-template-columns:1fr}.about-achievements{border-bottom:1px solid #ffffff1a;border-right:none}.design-philosophy-quote{font-size:.95rem}.service-row h4{font-size:1.2rem}.service-row p{font-size:.95rem}}
.contact-layout{grid-template-columns:1.2fr .8fr;align-items:start;gap:1rem;display:grid}.contact-side{align-content:start;align-self:start;gap:1rem;display:grid}.contact-form{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:linear-gradient(180deg, var(--panel-bg-top), var(--panel-bg-bottom));gap:.9rem;padding:1rem;display:grid}.contact-form-head{gap:.3rem;display:grid}.contact-form-head p{color:var(--muted)}.form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;display:grid}.field-wide{grid-column:1/-1}label{gap:.33rem;font-size:.95rem;display:grid}input,textarea,select{width:100%;color:var(--text);font:inherit;background:#080c0eb3;border:1px solid #ffffff1f;border-radius:10px;padding:.7rem}input:disabled,textarea:disabled,select:disabled{opacity:.6;cursor:not-allowed}input:focus,textarea:focus,select:focus{outline-offset:1px;outline:2px solid #d2ad67bf}.contact-card{border:1px solid var(--panel-border);border-radius:var(--radius-md);background:linear-gradient(170deg, var(--panel-bg-top), var(--panel-bg-bottom));align-self:start;padding:1rem}.contact-card h3,.contact-card p{text-shadow:0 1px 3px #00000080}.contact-name{font-weight:600}.contact-list{gap:.65rem;margin:.7rem 0 0;padding:0;display:grid}.contact-list-row{gap:.2rem;display:grid}.contact-list-label{text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-size:.84rem}.contact-list dd{word-break:break-word;margin:0}.contact-list a,.map-link a{color:var(--primary)}.contact-list a{text-decoration:none}.contact-map-wrap{border:1px solid var(--panel-border);border-radius:12px;margin-top:.55rem;position:relative;overflow:hidden}.contact-map-wrap iframe{filter:saturate(.9)contrast(1.02);border:0;width:100%;height:260px;display:block}.map-link{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10;background:#0d1611f2;border:1px solid #ffffff24;border-radius:8px;margin:0;padding:.55rem .9rem;font-size:.9rem;position:absolute;bottom:.6rem;right:.6rem}.map-link a{text-decoration:none;transition:color .18s}.map-link a:hover,.map-link a:focus-visible{color:var(--primary)}.contact-note{color:var(--muted);margin-top:1rem}.address-hint{color:var(--muted);margin:-.2rem 0 0;font-size:.88rem;line-height:1.4}.form-message{min-height:1.4rem;color:var(--primary)}@media (max-width:940px){.contact-layout,.form-grid{grid-template-columns:1fr}}

