.portfolio-viewport{width:100%;min-width:0;container:portfolio/inline-size}.portfolio-shell{overflow-wrap:anywhere}.portfolio-shell .service-trigger{min-height:64px}.portfolio-shell .service-trigger .service-number,.portfolio-shell .service-trigger .service-title{transition:color .2s ease}.portfolio-shell .service-trigger:is(:hover,:focus-visible) .service-number,.portfolio-shell .service-trigger:is(:hover,:focus-visible) .service-title{color:var(--accent)}.portfolio-shell .service-trigger:is(:hover,:focus-visible) .plus:after,.portfolio-shell .service-trigger:is(:hover,:focus-visible) .plus:before{background:var(--accent)}.portfolio-shell .gallery-image-button{touch-action:pan-y pinch-zoom}.portfolio-shell .project-open{min-width:0}.portfolio-shell .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto}.portfolio-shell .header-inner>.brand{justify-self:start}.portfolio-shell .desktop-nav{justify-self:center}.portfolio-shell .header-actions{justify-self:end}.portfolio-shell .header-cta{gap:23.4px}.portfolio-shell .link-arrow{display:inline-block;flex:none;line-height:1;transform-origin:center;transition:transform .3s ease}.portfolio-shell .header-cta:is(:hover,:focus-visible),.portfolio-shell .hero-button:is(:hover,:focus-visible){background:var(--accent);color:white}.portfolio-shell .header-cta:is(:hover,:focus-visible) .link-arrow,.portfolio-shell .services .text-link:is(:hover,:focus-visible) .link-arrow{transform:rotate(135deg)}.portfolio-shell .about-copy .text-link:is(:hover,:focus-visible) .link-arrow{transform:rotate(180deg)}.portfolio-shell .contact-details a:is(:hover,:focus-visible) .link-arrow{transform:rotate(45deg)}.portfolio-shell .hero-button:is(:hover,:focus-visible) .link-arrow{transform:rotate(45deg)}.portfolio-shell .profile-card:is(:hover,:focus-visible) .link-arrow{transform:rotate(135deg)}.portfolio-shell .about-copy .text-link-light:is(:hover,:focus-visible){color:var(--accent);border-color:var(--accent)}.portfolio-shell .contact-email{gap:.35em}.portfolio-shell .desktop-nav a{transition:color .2s ease}.portfolio-shell .desktop-nav a:is(:hover,:focus-visible){color:var(--accent)}.portfolio-shell .desktop-nav a:after{background:currentColor}.hero-actions{position:absolute;left:auto;right:24px;bottom:24px;width:445px;display:flex;flex-direction:column;align-items:stretch;gap:28px}.portfolio-shell .hero-button{display:inline-grid;grid-template-columns:minmax(0,1fr) auto;gap:0;padding-left:0;margin-top:calc(30px + 1pt);--hero-label-space:28.5px}.portfolio-shell .hero-button-label{font-size:inherit;line-height:inherit;text-align:center;padding-inline:var(--hero-label-space)}.hero-actions .profile-card{position:static;flex:none}.portfolio-shell .hero-actions .hero-caption{position:static;width:100%;margin:0;text-align:left}.portfolio-shell .hero-caption-mobile{display:none}.portfolio-shell.hero-split .hero-actions{width:min(380px,calc(50% - 48px))}.portfolio-shell.hero-split .hero-actions .profile-card{width:100%}.portfolio-shell .contact-section{display:block}.portfolio-shell .contact-details{margin-top:0}.portfolio-shell .contact-socials{flex-wrap:wrap}@container portfolio (max-width: 1100px){.portfolio-shell .header-inner{gap:24px}.portfolio-shell .header-phone{display:none}.portfolio-shell .header-actions{gap:15px}.portfolio-shell .desktop-nav{gap:24px}.portfolio-shell .hero{min-height:610px}.portfolio-shell .hero-heading{padding:42px}.portfolio-shell .hero-actions{width:405px}.portfolio-shell .profile-card{width:405px;gap:20px;grid-template-columns:125px minmax(0,1fr)}.portfolio-shell .profile-card>img{width:125px;height:160px}.portfolio-shell .services{gap:56px}.portfolio-shell .service-content{padding-right:0}.portfolio-shell .service-content ul{grid-template-columns:1fr}.portfolio-shell .section{padding-block:min(var(--section-space),96px)}.portfolio-shell .project-info{display:block}.portfolio-shell .project-type{display:none}.portfolio-shell .about-panel{padding:48px;gap:48px}.portfolio-shell .about-copy{padding-top:40px}.portfolio-shell .contact-section{gap:45px}.portfolio-shell .contact-email{font-size:1.5rem;gap:18px}.portfolio-shell .contact-phone{font-size:1rem}}@container portfolio (max-width: 850px){.portfolio-shell .header-inner{height:74px;grid-template-columns:minmax(0,1fr) auto}.portfolio-shell .brand{font-size:1.4rem}.portfolio-shell .desktop-nav{display:none}.portfolio-shell .menu-toggle{display:flex}.portfolio-shell .header-cta{min-height:44px;font-size:.875rem;padding:10px 17px;gap:14.4px}.portfolio-shell .hero-topline{font-size:.75rem}.portfolio-shell .hero{min-height:590px}.portfolio-shell .hero-heading{padding:34px}.portfolio-shell .hero-actions,.portfolio-shell.hero-split .hero-actions{left:auto;right:18px;bottom:18px;width:345px;gap:24px}.portfolio-shell .hero h1{font-size:clamp(3rem,7cqi,calc(4rem * var(--headline-scale)))}.portfolio-shell .profile-card{right:18px;bottom:18px;width:345px;grid-template-columns:94px minmax(0,1fr);gap:17px;padding:12px}.portfolio-shell .profile-card>img{width:94px;height:138px}.portfolio-shell .profile-copy{padding:0 2px 0 0}.portfolio-shell .profile-name{font-size:1.2rem}.portfolio-shell .profile-copy p{font-size:.9375rem;margin-top:5px}.portfolio-shell .profile-more{font-size:.875rem;padding-top:8px}.portfolio-shell .hero-caption{font-size:.9375rem}.portfolio-shell .hero-image{object-position:35% center}.portfolio-shell .hero-bottomline p{max-width:270px}.portfolio-shell .section{padding-block:min(var(--section-space),80px)}.portfolio-shell .services{grid-template-columns:1fr;gap:44px}.portfolio-shell .section-intro h2{font-size:clamp(2.6rem,5.7cqi,3.5rem)}.portfolio-shell .section-intro h2 br{display:none}.portfolio-shell .section-intro>p{max-width:520px;margin-top:22px}.portfolio-shell .section-intro .text-link{margin-top:22px}.portfolio-shell .section-label{margin-bottom:20px}.portfolio-shell .service-trigger{padding-block:23px}.portfolio-shell .service-title{font-size:1.5rem}.portfolio-shell .service-content ul{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-shell .section-heading{align-items:start}.portfolio-shell .section-heading>p{display:none}.portfolio-shell .section-heading h2{font-size:clamp(2.5rem,5.5cqi,3.3rem)}.portfolio-shell .filters{margin-block:30px;gap:7px}.portfolio-shell .filter{min-height:44px;font-size:.875rem;padding:10px 15px}.portfolio-shell .portfolio-section{padding-block:70px}.portfolio-shell .project-grid,.portfolio-shell .project-grid.filtered{grid-template-columns:repeat(2,minmax(0,1fr));gap:27px 20px}.portfolio-shell .project-featured .project-image-wrap,.portfolio-shell .project-image-wrap{aspect-ratio:1.45}.portfolio-shell .project-info h3{font-size:1.45rem}.portfolio-shell .about-panel{grid-template-columns:1fr;gap:34px;padding:40px}.portfolio-shell .about-heading h2{font-size:clamp(2.6rem,6cqi,3.4rem)}.portfolio-shell .about-signature{margin-top:28px}.portfolio-shell .about-copy{border-top:1px solid #43473e;padding-top:28px}.portfolio-shell .about-copy p{max-width:560px}.portfolio-shell .contact-section{grid-template-columns:1fr;gap:30px;padding-bottom:55px}.portfolio-shell .contact-heading h2{font-size:clamp(3rem,7cqi,4rem)}.portfolio-shell .contact-action>p{margin-bottom:22px}.portfolio-shell .contact-details{margin-top:10px;flex-wrap:wrap;justify-content:flex-start;gap:25px 40px}.portfolio-shell .contact-email{width:100%;font-size:1.8rem;justify-content:space-between}.portfolio-shell .contact-phone{font-size:1.125rem}.portfolio-shell .footer{flex-wrap:wrap;gap:25px;padding-block:26px}.portfolio-shell .footer nav{order:4;width:100%;gap:26px}.portfolio-shell .footer .back-top,.portfolio-shell .footer>span{margin-left:auto}.portfolio-shell.hero-split .hero{display:block}.portfolio-shell.hero-split .hero-image{position:absolute;inset:0;width:100%;height:100%;z-index:-1}.portfolio-shell.hero-split .hero-heading{position:relative;padding:34px}.portfolio-shell.hero-split .profile-card{width:345px}.portfolio-shell.hero-minimal .hero{min-height:520px}}@container portfolio (max-width: 550px){.portfolio-shell .container{width:calc(100% - 36px)}.portfolio-shell .header-actions{gap:5px}.portfolio-shell .header-cta{font-size:.8125rem;gap:9px;padding-inline:12px}.portfolio-shell .header-cta>span{font-size:1.1rem}.portfolio-shell .menu-toggle{flex:none}.portfolio-shell .hero-section{padding-top:18px}.portfolio-shell .hero-topline{padding-bottom:14px;gap:12px;line-height:1.4}.portfolio-shell .hero-topline>span:last-child{max-width:46%;text-align:right}.portfolio-shell .hero,.portfolio-shell.hero-minimal .hero,.portfolio-shell.hero-split .hero{min-height:500px;border-radius:18px;display:flex;flex-direction:column}.portfolio-shell .hero-image{height:100%;top:0;object-position:22% center}.portfolio-shell .hero:after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(#eaeae7,#eaeae7 16%,transparent 44%,transparent 70%,#eaeae7 94%)}.portfolio-shell .hero-heading,.portfolio-shell.hero-split .hero-heading{padding:27px 22px 0}.portfolio-shell .hero-actions,.portfolio-shell.hero-split .hero-actions{position:relative;inset:auto;width:auto;gap:16px;margin:auto 12px 12px;padding-top:24px}.portfolio-shell .hero-caption-desktop{display:none}.portfolio-shell .hero-heading .hero-caption-mobile{display:block;position:static;width:auto;margin:24px 0 0;text-align:left}.portfolio-shell .hero h1{font-size:clamp(2.15rem,9.3cqi,calc(3.1rem * var(--headline-scale)));line-height:1.07;max-width:100%}.portfolio-shell .hero h1 br{display:none}.portfolio-shell .hero-button{font-size:.9375rem;padding:13px 20px 13px 0;min-height:46px;margin-top:calc(24px + 1pt);gap:0;align-self:flex-start;--hero-label-space:22.5px}.portfolio-shell .hero-caption,.portfolio-shell.hero-split .hero-caption{font-size:.875rem;line-height:1.4}.portfolio-shell .profile-card,.portfolio-shell.hero-split .profile-card{right:12px;left:12px;bottom:12px;width:auto;border-radius:12px;grid-template-columns:86px minmax(0,1fr);gap:14px;padding:11px}.portfolio-shell .profile-card>img{width:86px;height:127px;border-radius:7px}.portfolio-shell .hero-bottomline{align-items:start;font-size:.8125rem;margin-top:17px;gap:15px}.portfolio-shell .hero-bottomline p{max-width:220px;line-height:1.4}.portfolio-shell .hero-bottomline a{gap:12px;white-space:nowrap}.portfolio-shell .section{padding-block:min(var(--section-space),68px)}.portfolio-shell .section-intro h2{font-size:clamp(2.35rem,8cqi,2.7rem)}.portfolio-shell .section-intro h2 br{display:block}.portfolio-shell .section-intro>p{max-width:340px}.portfolio-shell .services{gap:36px}.portfolio-shell .service-trigger{gap:13px;padding-block:20px}.portfolio-shell .service-number{min-width:20px}.portfolio-shell .service-title{font-size:1.35rem}.portfolio-shell .service-content{padding:0 0 25px 33px}.portfolio-shell .service-content ul{grid-template-columns:1fr;gap:9px}.portfolio-shell .portfolio-section{padding-block:60px}.portfolio-shell .section-heading h2{font-size:clamp(2.25rem,7.5cqi,2.7rem);line-height:1.04}.portfolio-shell .filters{gap:8px;margin-block:24px}.portfolio-shell .filter{padding:9px 14px;min-height:44px}.portfolio-shell .project-grid,.portfolio-shell .project-grid.filtered{grid-template-columns:1fr;gap:29px}.portfolio-shell .project-featured .project-image-wrap,.portfolio-shell .project-image-wrap{aspect-ratio:1.38}.portfolio-shell .project-info{padding-top:14px}.portfolio-shell .project-info h3{font-size:1.65rem;margin-top:6px}.portfolio-shell .project-arrow{width:42px;height:42px;right:13px;bottom:13px}.portfolio-shell .about-panel{padding:30px 24px;border-radius:18px;gap:26px}.portfolio-shell .about-heading h2{font-size:clamp(2.25rem,8cqi,2.75rem);line-height:1.08}.portfolio-shell .about-signature{margin-top:26px;gap:12px}.portfolio-shell .about-copy .about-lead{font-size:1.45rem;margin-bottom:20px}.portfolio-shell .about-copy p{font-size:1rem}.portfolio-shell .contact-heading h2{font-size:clamp(2.5rem,9cqi,3.65rem);line-height:1.08}.portfolio-shell .button-large{width:100%}.portfolio-shell .contact-section{padding-bottom:40px}.portfolio-shell .contact-details{gap:21px;padding-top:25px}.portfolio-shell .contact-email{font-size:clamp(1.25rem,5.3cqi,1.8rem);gap:12px}.portfolio-shell .contact-phone{flex-basis:100%}.portfolio-shell .footer{position:relative;gap:20px}.portfolio-shell .footer nav{gap:16px;font-size:.875rem;max-width:calc(100% - 45px);flex-wrap:wrap}.portfolio-shell .footer .back-top{font-size:0;gap:0;position:absolute;right:0;bottom:27px}.portfolio-shell .footer .back-top>span{font-size:1.3rem}}@container portfolio (max-width: 370px){.portfolio-shell .container{width:calc(100% - 28px)}.portfolio-shell .header-cta{display:none}.portfolio-shell .hero-heading{padding-inline:18px}.portfolio-shell .hero h1{font-size:clamp(2rem,9.5cqi,2.55rem)}.portfolio-shell .profile-card{grid-template-columns:72px minmax(0,1fr);gap:10px}.portfolio-shell .profile-card>img{width:72px;height:119px}.portfolio-shell .profile-copy p{font-size:.875rem}.portfolio-shell .contact-email{font-size:1.25rem}}.project-modal-content{width:min(1050px,calc(100vw - 32px))!important;max-height:calc(100dvh - 32px)!important;overscroll-behavior:contain}.project-dialog .dialog-content h2{overflow-wrap:anywhere}.project-lightbox{position:fixed!important;inset:0!important;top:0!important;left:0!important;z-index:90!important;transform:none!important;width:100vw!important;max-width:none!important;height:100dvh!important;max-height:none!important;padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom))!important;border:0!important;border-radius:0!important;background:#171916!important;color:white!important;display:flex!important;flex-direction:column;gap:10px!important;overflow:hidden}.project-lightbox .lightbox-close{position:absolute;z-index:1;right:max(16px,env(safe-area-inset-right));top:max(16px,env(safe-area-inset-top));color:white;border-color:#686b65;background:#171916}.project-lightbox .lightbox-image{flex:1;min-width:0;min-height:0;position:relative;touch-action:pan-y pinch-zoom}.project-lightbox .lightbox-image img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain}.project-lightbox .lightbox-controls{flex:none;position:static;left:auto;bottom:auto;transform:none;display:flex;justify-content:center;align-items:center;gap:26px}.project-lightbox .lightbox-controls .icon-button{color:white;border-color:#686b65}@media (max-width:850px){html{scroll-padding-top:82px}.project-modal-content{width:calc(100vw - 24px)!important;max-height:calc(100dvh - 24px)!important}.project-dialog .dialog-content{padding:28px}.project-dialog .case-description>section{grid-template-columns:1fr;gap:10px}.project-dialog .case-footer{flex-wrap:wrap}.project-dialog .case-footer .button{width:100%}}@media (max-width:550px){.project-modal-content{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important;border-radius:14px}.project-dialog .dialog-toolbar{padding:9px 16px}.project-dialog .dialog-content{padding:22px 19px}.project-dialog .dialog-content h2{font-size:clamp(2.1rem,9vw,2.75rem)}.project-dialog .project-meta{gap:14px 22px}.project-dialog .gallery-image-button img{height:min(52dvh,350px)}.project-dialog .gallery-controls .icon-button{width:44px;height:44px}.project-dialog .case-description p{font-size:1rem}.project-dialog .case-footer .text-link{font-size:.9375rem}.project-lightbox .lightbox-controls .icon-button{width:48px;height:48px}}.admin-root{height:100dvh;min-height:0;display:flex;flex-direction:column;overflow:hidden}.studio-topbar{flex:none}.studio-workspace{flex:1;min-height:0;gap:0!important}.studio-view-switcher{display:none!important}.studio-layout{flex:1;height:auto;min-height:0}.studio-layout>[data-slot=tabs-content]{margin:0}.studio-panel,.studio-preview-area{flex:initial}.preview-frame{flex:none}.preview-frame>.portfolio-viewport>.portfolio-shell{min-height:100%}.preview-toolbar .device-switcher button{min-width:38px;min-height:38px}.project-editor-dialog{max-height:calc(100dvh - 24px)!important}.project-editor-dialog>[data-slot=dialog-header]{padding-right:68px}.project-editor-dialog .project-editor-close{position:absolute;z-index:1;top:17px;right:18px;width:44px;height:44px;border:1px solid #dfe2d8;border-radius:50%;background:white;font-size:24px;line-height:1}.project-editor-dialog .project-editor-close:focus-visible{outline:2px solid #1c201a;outline-offset:2px}@media (max-width:1100px){.studio-topbar{grid-template-columns:1fr auto;height:auto;min-height:68px;padding-block:10px}.studio-topbar-center{display:flex;grid-column:1/-1;min-height:20px}.studio-user{display:none}.studio-view-switcher{display:grid!important;grid-template-columns:1fr 1fr;flex:none;width:100%;height:52px;border-radius:0!important;background:#f6f7f3!important;border-bottom:1px solid #e1e4dc;padding:5px 12px!important;gap:6px}.studio-view-switcher button{min-height:42px;display:flex;align-items:center;justify-content:center;gap:8px;border-radius:8px;font-size:14px}.studio-view-switcher button svg{width:17px;height:17px}.studio-layout{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:auto;overflow:hidden}.studio-layout>[data-slot=tabs-content][data-state=inactive]{display:none!important}.studio-layout>[data-slot=tabs-content][data-state=active]{display:flex!important}.studio-panel,.studio-preview-area{min-height:0;overflow:hidden}.studio-panel{border-right:0}.studio-tabs{height:100%;min-height:0}.studio-tab-list{position:relative;top:auto;z-index:1}.studio-tab-content{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain}.studio-preview-area{flex-direction:column}.preview-stage{flex:1;min-height:0;overflow:auto}.gallery-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:600px){.studio-topbar{min-height:60px;padding:9px 12px;gap:7px 10px}.studio-brand{gap:7px}.studio-brand small{display:none}.studio-actions{gap:6px}.studio-actions>a{display:inline-flex!important;min-width:42px;min-height:42px;padding:0 10px}.studio-actions>a .open-site-label{display:none}.studio-actions>button{min-height:42px;padding-inline:12px;font-size:13px}.studio-topbar-center{flex-wrap:wrap;min-width:0}.save-status{font-size:11px;overflow-wrap:anywhere}.draft-badge{font-size:10px}.studio-tab-list{height:62px;padding:5px!important}.studio-tab-list button{height:50px!important;min-height:48px;font-size:10px!important}.studio-tab-content{padding:20px 16px 54px}.panel-header h1{font-size:22px}.project-admin-card{grid-template-columns:76px minmax(0,1fr)}.project-admin-card>img{width:76px;height:86px}.project-admin-actions{flex-wrap:wrap}.project-admin-actions button{min-width:38px;min-height:38px}.category-row{grid-template-columns:18px minmax(0,1fr) 42px}.category-row button{width:42px;height:42px}.color-field>span,.field>span,.image-field>span,.range-field>span>span,.segmented-field>span{font-size:14px}.color-field input[type=text],.field input,.field select{min-height:44px;font-size:16px}.field textarea{font-size:16px}.segmented-field button{min-height:42px;font-size:12px;white-space:normal}.section-row{grid-template-columns:18px minmax(0,1fr) auto;gap:6px}.section-row-actions button{min-width:38px;min-height:38px}.preview-toolbar{height:auto;min-height:54px;gap:8px;padding:8px 12px}.preview-toolbar small{display:none}.preview-stage{padding:14px}.project-editor-dialog{width:calc(100vw - 12px)!important;max-height:calc(100dvh - 12px)!important}.project-editor-dialog>[data-slot=dialog-header]{padding:16px 62px 14px 17px}.project-editor-dialog>[data-slot=dialog-header] h2{font-size:18px;line-height:1.2;overflow-wrap:anywhere}.project-editor-dialog .project-editor-close{top:13px;right:12px}.project-editor-body{padding:17px;gap:23px}.project-editor-dialog>[data-slot=dialog-footer]{padding:12px 17px;display:grid;grid-template-columns:1fr 1fr;gap:8px}.project-editor-dialog>[data-slot=dialog-footer] button{min-height:44px}.editor-two-cols{grid-template-columns:1fr}.editor-switches{flex-direction:column;gap:12px}.category-checks label,.editor-switches label{min-height:44px;font-size:14px}.gallery-admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.upload-button{min-height:44px;font-size:14px}}@media (max-width:380px){.studio-mark{display:none}.studio-view-switcher button{font-size:13px}.project-admin-card{grid-template-columns:1fr}.project-admin-card>img{width:100%;height:136px}.project-admin-actions{justify-content:space-between}.project-admin-actions>button:first-child{margin-right:0}.gallery-admin-grid{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.preview-frame{transition:none}}