@font-face{font-family:Inter Display;src:url(/assets/fonts/InterVariable.woff2) format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Inter Display;src:url(/assets/fonts/InterVariable-latin.woff2) format("woff2-variations");font-style:normal;font-weight:100 900;font-display:swap;unicode-range:u+0000-024f,u+1e??,u+2000-206f,u+20a0-20cf,u+2190-21ff,u+feff,u+fffd}:root{--site-width:1000px;--site-copy-width:757px;--site-content-edge:46px;--framed-content-edge:44px;--home-content-width:calc(var(--site-width) - 92px);--case-copy-width:746px;--page:#fff;--panel:#f3f4f6;--ink:#0a0a0a;--muted:#555a60;--line:#e7e8ea}@font-face{font-family:Inter Display;src:url(/assets/fonts/InterDisplay-Regular.woff2) format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:Inter Display;src:url(/assets/fonts/InterDisplay-Medium.woff2) format("woff2");font-style:normal;font-weight:500;font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--page);color:var(--ink);font-family:Inter Display,Inter,sans-serif;font-size:14px;font-feature-settings:"liga" 1,"calt" 1;font-optical-sizing:auto;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button{border:0;cursor:pointer}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.site-shell{width:min(var(--site-width),calc(100% - 40px));margin:18px auto 0}.case-page,.site-shell{padding-bottom:80px}.opening-frame{padding:66px 2px 2px;border-radius:22px;background:var(--panel);overflow:hidden;margin-bottom:5px}.opening-frame>.panel{border-radius:20px;margin:0;box-shadow:none}.viewport-blur{position:fixed;z-index:40;left:0;right:0;bottom:0;height:80px;pointer-events:none;overflow:hidden}.viewport-blur>div{position:absolute;inset:0;pointer-events:none}section[id]{scroll-margin-top:92px}.header-frame{position:fixed;z-index:50;top:18px;left:20px;right:20px;width:auto;max-width:var(--site-width);margin-inline:auto;height:64px}.floating-header{position:relative;height:64px;width:100%;padding:0 46px;display:grid;grid-template-columns:minmax(170px,1fr) auto minmax(170px,1fr);align-items:center;column-gap:10px;overflow:visible;border-radius:20px;background:rgba(242,243,245,.8);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.floating-header.compact{padding-inline:34px}.header-top-bar{position:fixed;z-index:51;left:0;right:0;top:0;height:18px;background:#fff}.header-corner-shield{position:absolute;z-index:2;top:0;width:22px;height:22px;pointer-events:none}.header-corner-shield-left{left:0}.header-corner-shield-right{right:0;transform:rotate(90deg)}.header-meta{min-width:0;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:500;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.header-brand{width:26px;height:30px;margin-left:-5px;margin-right:3px;display:grid;place-items:center;border-radius:7px;transition:background-color .2s ease,transform .2s ease}.header-brand:hover{background:rgba(255,255,255,.72);transform:translateY(-1px)}.header-mark{width:16px;height:16px;flex:0 0 auto;object-fit:contain}.header-meta span:last-child{color:var(--muted);font-weight:400}.desktop-nav{display:flex;gap:20px;font-size:14px;font-weight:500;transform:translateX(10px)}.desktop-nav a{position:relative}.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-3px;height:1px;background:currentColor;transition:right .25s ease}.desktop-nav a:hover:after{right:0}.header-socials{justify-self:end;display:flex;align-items:center;gap:8px}.whatsapp-icon{justify-self:end;width:34px;height:34px;display:grid;place-items:center;border-radius:10px;background:#fff;box-shadow:0 9px 22px -13px rgba(0,0,0,.4),inset 0 0 0 1px rgba(0,0,0,.04);transition:transform .2s ease}.whatsapp-icon img{width:19px;height:19px;object-fit:contain}.whatsapp-icon:hover{transform:translateY(-2px)}.menu-toggle,.mobile-nav{display:none}.panel{position:relative;margin-bottom:5px;border-radius:22px;background:var(--panel);overflow:hidden}.hero-panel{min-height:0;padding:44px var(--framed-content-edge);display:flex;flex-direction:column;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.availability{position:absolute;top:20px;right:20px;display:flex;align-items:center;gap:8px;padding:7px 12px;border-radius:999px;background:#dfffdc;color:#2b7a24;font-size:12px;font-weight:500}.availability span{width:6px;height:6px;border-radius:50%;background:#39b629;box-shadow:0 0 0 0 rgba(57,182,41,.4);animation:availability-pulse 2.35s ease-out infinite}.identity{display:flex;align-items:center;gap:20px}.identity img{width:90px;height:90px;border-radius:50%;object-fit:cover;object-position:50% 42%}.identity h2{margin:0 0 3px;font-size:20px;font-weight:600;letter-spacing:-.025em}.identity p{height:20px;margin:0;overflow:hidden;color:var(--muted)}.role-rotator{display:inline-block;animation:role-in .45s cubic-bezier(.22,.75,.25,1)}@keyframes role-in{0%{opacity:0;transform:translateY(8px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}.hero-copy{margin-top:28px;max-width:var(--home-content-width)}.hero-copy h1{margin:0;font-size:31px;line-height:1.12;letter-spacing:-.043em;font-weight:500}.hero-subtitle{max-width:680px;margin:10px 0 0;color:#4a4f54;font-size:18px;line-height:1.45;font-weight:400;letter-spacing:-.015em}.hero-actions{display:flex;gap:12px;margin-top:22px}.primary-button,.secondary-button{min-height:40px;padding:0 18px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;font-weight:500;box-shadow:0 12px 12px -8px rgba(41,41,41,.12),inset 0 1px 0 rgba(255,255,255,.28);transition:transform .2s ease,box-shadow .2s ease}.primary-button{background:#0a0a0a;color:#fff}.secondary-button{background:#fff;box-shadow:0 12px 12px -8px rgba(41,41,41,.08),0 0 0 1px var(--line),inset 0 2px 2px #fff}.primary-button:hover,.secondary-button:hover{transform:translateY(-2px);box-shadow:0 16px 20px -10px rgba(41,41,41,.2)}.trusted{flex:0 0 auto;min-height:0;margin-top:60px;display:grid;gap:28px}.trusted>p{margin:0;color:var(--muted);font-weight:600}.logo-marquee{position:relative;isolation:isolate;width:100%;align-self:start;overflow:hidden}.logo-marquee:after,.logo-marquee:before,.tools-marquee:after,.tools-marquee:before{position:absolute;z-index:2;top:0;bottom:0;width:12%;content:"";pointer-events:none}.logo-marquee:before,.tools-marquee:before{left:0;background:linear-gradient(90deg,#fff,rgba(255,255,255,0))}.logo-marquee:after,.tools-marquee:after{right:0;background:linear-gradient(270deg,#fff,rgba(255,255,255,0))}.logo-track{position:relative;z-index:1;display:flex;align-items:center;width:max-content;gap:42px;animation:marquee 24s linear infinite}.company-logo{width:120px;height:36px;display:grid;place-items:center}.company-logo img{max-width:120px;width:auto;height:30px;object-fit:contain;opacity:1}@keyframes marquee{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - 21px))}}.reveal{opacity:0;filter:blur(5px);transform:translateY(16px);transition:opacity .65s ease,filter .65s ease,transform .65s ease}.reveal.is-visible{opacity:1;filter:none;transform:none}.about-projects-stack{margin-bottom:5px;overflow:hidden;border-radius:22px;background:var(--panel)}.about-projects-stack .panel{margin-bottom:0}.about-panel{z-index:2;padding:50px var(--site-content-edge) 42px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.about-panel h2,.panel-heading h2{margin:0;font-size:20px;line-height:1.4;font-weight:500;letter-spacing:-.025em}.about-text{max-width:var(--home-content-width);margin:16px 0 24px;font-size:18px;line-height:1.38;font-weight:500;letter-spacing:-.024em}.case-back,.text-link{display:inline-flex;align-items:center;gap:7px;color:var(--muted);font-weight:500}.text-link{padding-bottom:2px;border-bottom:1px solid #c8cacf}.software-list{margin-top:48px;display:flex;align-items:center;flex-wrap:wrap;gap:34px}.software-item{width:40px;height:40px;display:grid;place-items:center}.software-item img{width:34px;height:34px;display:block;object-fit:contain}.home-tools{width:100%;padding:0 8px;justify-content:space-between;flex-wrap:nowrap;gap:16px}.home-tools .software-item{width:36px;height:36px;flex:0 0 36px}.projects-panel{margin-top:-22px;padding:72px var(--site-content-edge) 32px;border-radius:0}.contact-panel,.services-panel{padding:50px var(--site-content-edge) 32px}.panel-heading{margin-bottom:40px}.panel-heading>p{max-width:var(--home-content-width);margin:3px 0 0;color:var(--muted);line-height:1.5}.projects-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px 24px}.project-card{display:block}.project-image{position:relative;width:100%;aspect-ratio:336/250;overflow:hidden;border-radius:10px;background:#e7e7e7}.project-image-placeholder{display:grid;width:100%;height:100%;place-items:center;color:#747474;font-size:14px}.project-image img{object-fit:cover;transition:transform .55s cubic-bezier(.2,.7,.2,1),filter .55s ease}.project-card:hover img{transform:scale(1.035);filter:brightness(.94)}.project-card>p{margin:16px 0 2px;color:var(--muted)}.project-card h3{margin:0;font-size:18px;font-weight:500;letter-spacing:-.025em}.center-action{display:flex;justify-content:center;margin-top:40px}.services-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px}.services-grid article{min-height:240px;padding:32px;display:flex;flex-direction:column;overflow:hidden;border-radius:20px;background:#fff}.services-grid article>span{color:var(--muted);opacity:.2;font-size:36px;line-height:1.2;font-weight:400;letter-spacing:-.02em}.services-grid article>div{margin-top:auto}.services-grid h3{max-width:260px;margin:0;font-size:20px;line-height:1.3;font-weight:500;letter-spacing:-.025em}.services-grid p{margin:5px 0 0;color:var(--muted);line-height:1.45}.contact-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);align-items:start;gap:28px}.contact-panel form{display:grid;gap:20px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.form-row label:first-child{grid-column:1/-1}.contact-panel input,.contact-panel textarea{width:100%;border:0;outline:0;border-radius:12px;background:#fff;box-shadow:0 0 0 1px rgba(229,231,235,.5)}.contact-panel input{height:52px;padding:0 20px}.contact-panel textarea{min-height:230px;padding:20px;resize:vertical}.contact-panel input:focus,.contact-panel textarea:focus{box-shadow:0 0 0 1.5px #a5a8ad}.form-button{min-height:44px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#0a0a0a;color:#fff;font-weight:500;box-shadow:0 12px 12px -8px rgba(41,41,41,.18);transition:transform .2s ease}.form-button:hover{transform:translateY(-2px)}.form-button:disabled{opacity:.65;cursor:wait;transform:none}.contact-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.contact-status{display:block;text-align:center;color:var(--muted)}.contact-details{display:grid;gap:16px}.contact-links{overflow:hidden;border-radius:14px;background:#fff;box-shadow:0 0 0 1px rgba(229,231,235,.5)}.contact-links>a{min-height:68px;padding:12px 14px;display:grid;grid-template-columns:38px minmax(0,1fr) auto;align-items:center;gap:12px;border-bottom:1px solid var(--line);transition:background-color .2s ease}.contact-links>a:last-child{border-bottom:0}.contact-links>a:hover{background:#fafafa}.contact-detail-icon{width:38px;height:38px;display:grid;place-items:center;border-radius:50%;background:var(--panel)}.contact-detail-icon img{width:19px;height:19px;object-fit:contain}.contact-links a>span:nth-child(2){min-width:0;display:grid;gap:2px}.contact-links small{color:var(--muted);font-size:12px}.contact-links strong{overflow-wrap:anywhere;font-size:14px;font-weight:500}.contact-links>a>svg{color:var(--muted)}.contact-map{position:relative;min-height:210px;overflow:hidden;border-radius:14px;background:#dedede;box-shadow:0 0 0 1px rgba(229,231,235,.5)}.contact-map iframe{width:100%;height:210px;display:block;border:0;pointer-events:none;filter:grayscale(1) contrast(.9);opacity:.82}.contact-map>a{position:absolute;left:12px;bottom:12px;min-height:36px;padding:0 13px;display:inline-flex;align-items:center;gap:6px;border-radius:999px;background:rgba(255,255,255,.94);font-size:13px;font-weight:500;box-shadow:0 5px 16px rgba(0,0,0,.12)}.site-footer{min-height:100px;padding:20px var(--site-content-edge);display:flex;align-items:center;justify-content:space-between}.site-footer p{margin:0}.site-footer a,.site-footer p{color:var(--muted)}.inner-page{margin-top:18px}.listing-panel,.resume-panel{padding:44px var(--framed-content-edge) 36px;background:#fff;box-shadow:inset 0 0 0 1px var(--line)}.inner-heading{margin:52px 0 40px}.inner-heading>p:first-child{margin:0 0 7px;color:var(--muted)}.inner-heading h1{margin:0;font-size:44px;line-height:1;letter-spacing:-.05em;font-weight:500}.inner-heading-description{max-width:var(--site-copy-width);margin:20px 0 0;font-size:18px;line-height:1.45}.resume-panel .inner-heading-description{max-width:none}.resume-section{padding:42px 0;border-top:1px solid var(--line)}.resume-section h2{margin:0 0 24px;font-size:20px;font-weight:500}.tools-marquee{position:relative;isolation:isolate;width:100%;margin-top:0;overflow:hidden}.tools-track{position:relative;z-index:1;width:max-content;display:flex;align-items:center;gap:72px;animation:tools-marquee 24s linear infinite}.tools-track .software-item{width:34px;height:34px;flex:0 0 34px}.tools-track .software-item img{width:32px;height:32px}@keyframes tools-marquee{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - 36px))}}.experience-list article{padding:22px 0;display:grid;grid-template-columns:1fr 1.45fr;gap:28px;border-top:1px solid var(--line)}.experience-list h3,.experience-list p{margin:0}.empty-copy,.experience-list p,.experience-list span{color:var(--muted);line-height:1.5}.skill-cards{display:flex;flex-wrap:wrap;gap:8px}.skill-cards span{padding:8px 12px;border-radius:9px}.case-page article{width:min(var(--site-width),calc(100% - 40px));margin:18px auto 0;padding:66px 2px 2px;overflow:hidden;border-radius:22px;background:var(--panel)}.case-content{padding:50px 32px;border-radius:20px;overflow:hidden;background:#fff}.case-hero{padding:0 0 40px;max-width:var(--case-copy-width);background:#fff}.case-category{margin:0 0 12px;color:#1f1f1f;font-size:12px;line-height:1.4}.case-hero h1{margin:0;font-size:28px;line-height:1.2;letter-spacing:-.02em;font-weight:400}.case-intro{max-width:var(--case-copy-width);margin-top:12px}.case-intro>p{margin:0;font-size:14px;line-height:1.5;color:#4a4f54}.case-gallery{padding:0;display:grid;gap:40px}.case-gallery figure{margin:0;border-radius:14px}.case-gallery img{display:block;width:100%;height:auto;border-radius:14px}.case-next{margin:28px 0 0;padding:36px 40px;border-radius:22px;background:var(--panel)}.case-next p{margin:0 0 18px;color:var(--muted)}.case-next a{display:flex;align-items:center;justify-content:space-between}.case-next span{font-size:32px;letter-spacing:-.04em}.case-footer{width:min(var(--site-width),calc(100% - 40px));margin:0 auto;padding:26px 32px;display:flex;justify-content:space-between;color:var(--muted)}.case-footer p{margin:0}.admin-login{min-height:100vh;padding:30px 20px;display:grid;place-items:center;background:var(--panel)}.admin-login form{width:min(420px,100%);padding:32px;display:grid;gap:18px;border-radius:22px;background:#fff;box-shadow:0 18px 55px rgba(15,18,20,.1)}.admin-login form>p{margin:0;color:var(--muted)}.admin-login h1{margin:-8px 0 8px;font-size:30px;font-weight:550;letter-spacing:-.04em}.admin-login label{display:grid;gap:7px;font-weight:500}.admin-login input{height:48px;padding:0 14px;border:1px solid var(--line);border-radius:11px;outline:0}.admin-login input:focus{border-color:#7c8289}.admin-login button{height:48px;border-radius:11px;background:#0a0a0a;color:#fff;font-weight:600}.admin-login form>span{color:#a32727}.admin-login a{display:inline-flex;align-items:center;gap:6px;color:var(--muted)}.admin-page{min-height:100vh;padding:122px max(24px,calc((100vw - 1120px) / 2)) 70px;background:#eef0f3}.admin-page:before{content:"";position:fixed;z-index:29;inset:0 0 auto;height:110px;background:#eef0f3;pointer-events:none}.admin-toolbar{position:fixed;z-index:30;top:16px;left:50%;width:min(1120px,calc(100% - 48px));transform:translateX(-50%);padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:24px;border:1px solid rgba(255,255,255,.75);border-radius:18px;background:#fff;box-shadow:0 15px 40px rgba(15,18,20,.08)}.admin-toolbar h1,.admin-toolbar p{margin:0}.admin-toolbar p{color:var(--muted);font-size:12px}.admin-toolbar h1{margin-top:2px;font-size:21px;font-weight:550}.admin-toolbar>div:last-child{display:flex;align-items:center;gap:8px}.admin-bottom button,.admin-toolbar a,.admin-toolbar button{min-height:40px;padding:0 14px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-weight:550}.admin-bottom .admin-save,.admin-toolbar .admin-save{background:#0a0a0a;color:#fff;box-shadow:none}.admin-status{display:block;margin:18px 0 0;padding:12px 16px;border-radius:11px;background:#e7f7e7;color:#27602b}.admin-status.is-error{background:#fbeaea;color:#8c2626}.analytics-overview{margin-top:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.analytics-metric-card{min-width:0;padding:22px;display:grid;gap:5px;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px rgba(222,225,229,.8)}.analytics-metric-card small,.analytics-metric-card>span,.analytics-privacy,.analytics-section-heading p,.analytics-section-heading small{color:var(--muted)}.analytics-metric-card>span{font-size:13px;font-weight:600}.analytics-metric-values{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.analytics-metric-values>div{min-width:0;display:grid;align-content:end}.analytics-metric-values>div+div{padding-left:14px;border-left:1px solid #e5e7e9}.analytics-metric-card strong{font-size:clamp(24px,2.6vw,36px);font-weight:550;letter-spacing:-.05em}.analytics-metric-card small{font-size:12px;line-height:1.3}.analytics-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px}.analytics-section-heading h2,.analytics-section-heading p{margin:0}.analytics-section-heading p{margin-bottom:3px;font-size:12px}.analytics-section-heading h2{font-size:20px;font-weight:600}.analytics-chart-wrap{margin-top:24px}.analytics-legend{display:flex;justify-content:flex-end;gap:18px;font-size:12px;color:var(--muted)}.analytics-legend span{display:inline-flex;align-items:center;gap:7px}.analytics-legend span:before{content:"";width:18px;height:2px;border-radius:999px;background:#151719}.analytics-legend .is-visitors:before{background:#9aa1a9}.analytics-chart{width:100%;height:auto;min-height:210px;overflow:visible}.analytics-chart text{fill:#747a81;font-size:11px}.analytics-grid-line{stroke:#e5e7e9;stroke-width:1}.analytics-line{fill:none;stroke:#151719;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;vector-effect:non-scaling-stroke}.analytics-line.is-visitors{stroke:#9aa1a9;stroke-width:2}.analytics-breakdown-heading{margin-top:32px}.analytics-period-toggle{display:inline-flex;gap:2px;margin:0;padding:3px;border:0;border-radius:12px;background:#f1f2f3;min-width:0}.analytics-period-toggle button{padding:7px 14px;border-radius:9px;font-size:13px;font-weight:500;color:var(--muted)}.analytics-period-toggle button.is-active{background:#fff;color:#151719;box-shadow:inset 0 0 0 1px rgba(222,225,229,.8)}.analytics-period-toggle button:disabled{opacity:.6;cursor:default}.analytics-grid{margin-top:18px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.analytics-ranking{min-width:0;padding:24px;border-radius:18px;background:#fff;box-shadow:inset 0 0 0 1px rgba(222,225,229,.8)}.analytics-ranking h2{margin:0 0 18px;font-size:17px;font-weight:600}.analytics-ranking>p{margin:0;color:var(--muted)}.analytics-ranking ol{margin:0;padding:0;display:grid;gap:7px;list-style:none}.analytics-ranking li{position:relative;min-width:0;min-height:38px;padding:0 11px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;overflow:hidden;border-radius:9px;background:#f5f6f7}.analytics-ranking-bar{position:absolute;inset:0 auto 0 0;width:var(--analytics-width);background:#e7e9eb}.analytics-ranking li>span:not(.analytics-ranking-bar),.analytics-ranking li>strong{position:relative;z-index:1}.analytics-ranking li>span:not(.analytics-ranking-bar){overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.analytics-ranking li>strong{font-size:13px}.analytics-privacy{margin:16px 2px 0;font-size:12px;line-height:1.5}.analytics-loading{min-height:180px;display:grid;place-content:center;justify-items:center;gap:10px;color:var(--muted)}.admin-section{margin-top:18px;padding:26px;border-radius:20px;background:#fff;box-shadow:inset 0 0 0 1px rgba(222,225,229,.8)}.admin-section>h2{margin:0 0 22px;font-size:20px;font-weight:600;letter-spacing:-.025em}.admin-collapsible{padding:0;overflow:hidden}.admin-project-summary,.admin-section-summary,.proposal-admin-card>summary{list-style:none;cursor:pointer}.admin-project-summary::-webkit-details-marker,.admin-section-summary::-webkit-details-marker,.proposal-admin-card>summary::-webkit-details-marker{display:none}.admin-section-summary{min-height:78px;padding:0 26px;display:flex;align-items:center;justify-content:space-between;gap:20px}.admin-section-summary h2{margin:0;font-size:20px;font-weight:600;letter-spacing:-.025em}.admin-card-edit,.admin-section-summary>span{min-height:34px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:#f3f4f5;color:var(--muted);font-size:12px;font-weight:600}.admin-section-summary>span:before{content:"Editar"}.admin-collapsible[open]>.admin-section-summary>span:before{content:"Fechar"}.admin-project-summary:hover,.admin-section-summary:hover,.proposal-admin-card>summary:hover{background:#fafafa}.admin-project-summary:focus-visible,.admin-section-summary:focus-visible,.proposal-admin-card>summary:focus-visible{outline:2px solid #777d84;outline-offset:-3px}.admin-section-content{padding:22px 26px 26px;border-top:1px solid #f0f1f2}.admin-help{margin:0 0 22px;color:var(--muted);line-height:1.5}.admin-section h3{margin:8px 0 12px;font-size:14px;font-weight:600}.admin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.admin-field{min-width:0;display:grid;gap:7px;margin-bottom:14px}.admin-colors label>span,.admin-field>span{color:var(--muted);font-size:12px;font-weight:600}.admin-colors input:not([type=color]),.admin-field input,.admin-field textarea{width:100%;border:1px solid var(--line);border-radius:10px;background:#fafafa;outline:0}.admin-field input{height:44px;padding:0 12px}.admin-field textarea{min-height:92px;padding:12px;resize:vertical}.admin-colors input:focus,.admin-field input:focus,.admin-field textarea:focus{border-color:#8d9298;background:#fff}.admin-list{margin-top:14px}.admin-cards,.admin-projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.admin-card{min-width:0;padding:16px;border:1px solid var(--line);border-radius:14px;background:#fafafa}.admin-card .admin-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-company-logo-preview{margin:0 0 14px}.admin-company-logo-preview figcaption{margin-bottom:7px;color:var(--muted);font-size:12px;font-weight:600}.admin-company-logo-preview>div{min-height:104px;padding:16px;display:grid;place-items:center;overflow:hidden;border:1px solid var(--line);border-radius:10px;background-color:#fff;background-image:linear-gradient(45deg,#f4f5f6 25%,transparent 0),linear-gradient(-45deg,#f4f5f6 25%,transparent 0),linear-gradient(45deg,transparent 75%,#f4f5f6 0),linear-gradient(-45deg,transparent 75%,#f4f5f6 0);background-position:0 0,0 8px,8px -8px,-8px 0;background-size:16px 16px;color:var(--muted);font-size:13px;text-align:center}.admin-company-logo-preview img{width:100%;height:72px;object-fit:contain}.admin-inline{display:grid;grid-template-columns:1fr 1.6fr auto;gap:12px;align-items:end}.admin-asset,.admin-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:end}.admin-add,.admin-remove,.admin-upload{min-height:40px;padding:0 12px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:9px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-weight:550;white-space:nowrap}.admin-upload{margin-bottom:14px;cursor:pointer}.admin-upload input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.admin-add{margin-top:12px}.admin-remove{color:#9b2c2c}.admin-colors{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:14px}.admin-colors label{display:grid;grid-template-columns:38px 1fr;gap:7px;align-items:center}.admin-colors label>span{grid-column:1/-1}.admin-colors input[type=color]{width:38px;height:38px;padding:3px;border:1px solid var(--line);border-radius:9px;background:#fff}.admin-colors input:not([type=color]){height:38px;padding:0 9px}.admin-projects{grid-template-columns:1fr}.admin-project-item{display:grid;gap:8px}.admin-project{padding:0;overflow:hidden}.admin-project-summary{min-height:92px;padding:18px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-project-summary>div{min-width:0;display:grid;gap:3px}.admin-project-summary small,.admin-project-summary>div>span{color:var(--muted);font-size:12px}.admin-project-summary strong{overflow:hidden;font-size:16px;text-overflow:ellipsis;white-space:nowrap}.admin-project-content{padding:20px;border-top:1px solid var(--line)}.admin-project-order{padding:0 4px;display:flex;align-items:center;justify-content:space-between;gap:16px}.admin-project-order>div{display:flex;gap:8px}.admin-project-order button{min-height:36px;padding:0 11px;display:inline-flex;align-items:center;gap:6px;border:1px solid var(--line);border-radius:9px;background:#fff}.admin-project-order button:disabled{opacity:.35;cursor:not-allowed}.admin-project-seo{margin:18px 0;padding:18px;border-radius:13px;background:#f2f3f5}.admin-project-seo h3{margin-top:0}.admin-image-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.admin-image-card{min-width:0;padding:10px;border:1px solid var(--line);border-radius:13px;background:#fff}.admin-image-preview{width:100%;aspect-ratio:4/3;display:grid;place-items:center;overflow:hidden;border-radius:9px;background:#eceef0;color:var(--muted)}.admin-image-preview img{width:100%;height:100%;object-fit:cover}.admin-image-heading{min-height:40px;display:flex;align-items:center;justify-content:space-between;gap:8px}.admin-image-heading strong{font-size:13px}.admin-drag{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:transparent;color:var(--muted);cursor:grab}.admin-drag:active{cursor:grabbing}.admin-image-card .admin-asset{grid-template-columns:1fr;gap:0}.admin-image-card .admin-upload{width:100%;margin-top:-6px}.admin-image-actions{display:grid;grid-template-columns:36px 36px 1fr;gap:7px}.admin-image-actions>button{min-height:36px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px;background:#f6f7f8;box-shadow:inset 0 0 0 1px var(--line)}.admin-image-actions>button:disabled{opacity:.35;cursor:default}.admin-image-actions .admin-remove{min-height:36px}.admin-bottom{padding-top:20px;display:flex;justify-content:flex-end}.admin-bottom .admin-save{min-height:46px;padding:0 22px}.proposal-page{min-height:100vh;padding:48px 20px;background:#eef0f3}.proposal-sheet{width:min(760px,100%);margin:0 auto;overflow:hidden;border-radius:24px;background:#fff;box-shadow:0 22px 70px rgba(15,18,20,.1)}.proposal-header{min-height:82px;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.proposal-signature{display:grid;gap:2px}.proposal-signature strong{color:var(--ink);font-size:17px;font-weight:600}.proposal-signature span{font-size:13px}.proposal-header-actions{display:flex;align-items:center;gap:16px}.proposal-header-actions>div{display:grid;justify-items:end;gap:2px}.proposal-header-actions>.proposal-document-actions{display:flex;align-items:center;gap:6px}.proposal-print,.proposal-share{min-height:36px;padding:0 12px;border-radius:9px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);color:var(--muted);font-weight:550}.proposal-print:disabled{cursor:wait;opacity:.65}.proposal-block h2,.proposal-details span,.proposal-header span,.proposal-intro>p,.proposal-intro>span{color:var(--muted)}.proposal-header strong{font-weight:600}.proposal-intro{padding:58px 48px 48px}.proposal-intro>p{margin:0 0 8px}.proposal-intro h1{margin:0;font-size:46px;line-height:1;letter-spacing:-.05em}.proposal-intro>span{display:block;margin-top:12px;font-size:18px}.proposal-block{padding:36px 48px;border-top:1px solid var(--line)}.proposal-block h2{margin:0 0 18px;font-size:13px;text-transform:uppercase;letter-spacing:.08em;font-weight:600}.proposal-conditions p,.proposal-description p{margin:0 0 12px;font-size:17px;line-height:1.6}.proposal-conditions p:last-child,.proposal-description p:last-child{margin-bottom:0}.proposal-description p{font-size:14px}.rich-text-content{font-size:14px;line-height:1.6;overflow-wrap:anywhere}.rich-text-content p{margin:0 0 12px;white-space:pre-wrap}.rich-text-content h1,.rich-text-content h2,.rich-text-content h3{margin:20px 0 12px;text-transform:none;letter-spacing:normal;font-weight:700;line-height:1.3}.rich-text-content h1{font-size:28px}.rich-text-content h2{font-size:22px}.rich-text-content h3{font-size:18px}.rich-text-content b,.rich-text-content strong{font-weight:700}.rich-text-content ol,.rich-text-content ul{padding-left:26px;margin:12px 0}.rich-text-content ul{list-style:disc}.rich-text-content ol{list-style:decimal}.rich-text-content blockquote{border-left:3px solid #aaa;padding-left:16px;margin:16px 0}.rich-text-content a{color:#245cad;text-decoration:underline}.rich-text-content mark{padding:1px 0;color:inherit}.rich-text-content table{border-collapse:collapse;width:100%;table-layout:fixed;margin:16px 0}.rich-text-content td,.rich-text-content th{border:1px solid #bfc4ca;padding:10px;min-width:40px;vertical-align:top;position:relative}.rich-text-content th{background:#f0f2f5;font-weight:700;text-align:left}.rich-text-content td>:last-child,.rich-text-content th>:last-child{margin-bottom:0}.rich-text-content .tableWrapper{overflow-x:auto}.rich-text-content .selectedCell:after{content:"";position:absolute;inset:0;background:#548ee633;pointer-events:none}.rich-text-content .column-resize-handle{position:absolute;right:-2px;top:0;bottom:-2px;width:4px;background:#548ee6;pointer-events:none}.rich-text-content.resize-cursor{cursor:col-resize}.proposal-editor{border:1px solid #ccd0d5;border-radius:12px;overflow:visible;background:white;min-width:0}.editor-sticky-toolbar{position:sticky;top:var(--editor-sticky-top,110px);z-index:28;background:#fff;border-radius:12px 12px 0 0;box-shadow:0 3px 8px #172b4d0d}.proposal-editor .editor-text-toolbar{flex-wrap:nowrap;overflow-x:auto;gap:3px;padding:9px 10px;border-radius:12px 12px 0 0;background:#fff;scrollbar-width:thin}.proposal-editor .editor-text-toolbar>*{flex-shrink:0}.proposal-editor .editor-text-toolbar button{display:inline-flex;align-items:center;justify-content:center;border-color:transparent;background:transparent;color:#53627a}.proposal-editor .editor-text-toolbar .editor-icon-button{width:32px;height:32px;min-height:32px;padding:6px}.proposal-editor .editor-text-toolbar button:hover{background:#f0f3f8;color:#1b355d}.proposal-editor .editor-text-toolbar button[aria-pressed=true]{background:#e8efff;color:#2459c5}.proposal-editor .editor-text-toolbar select{width:auto;max-width:145px;height:32px;min-height:32px;padding:0 6px;font-size:12px;border-radius:6px;background:#fff;color:#53627a}.editor-toolbar-separator{width:1px;height:19px;margin:0 5px;background:#e3e8ef}.proposal-editor .editor-color-control{position:relative;display:inline-flex;flex-direction:column;gap:0;justify-content:center;align-items:center;width:32px;height:32px;color:#53627a;cursor:pointer}.proposal-editor .editor-color-control input[type=color]{width:22px;height:8px;min-height:0;padding:0;border:0;border-radius:0;cursor:pointer}.editor-color-control input[type=color]::-webkit-color-swatch-wrapper{padding:0}.editor-color-control input[type=color]::-webkit-color-swatch{border:0;border-radius:2px}.proposal-editor .editor-table-toolbar{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.proposal-editor .editor-table-toolbar button{flex-shrink:0}.proposal-editor .tiptap :is(p,h1,h2,h3,li,td,th){scroll-margin-top:var(--editor-scroll-offset,220px)}.proposal-editor .editor-text-toolbar :is(button,select,input):focus-visible{outline:2px solid #548ee6;outline-offset:1px}.proposal-editor .tiptap{padding:20px;min-height:260px;outline:none}.proposal-editor .tiptap:focus{box-shadow:inset 0 0 0 2px #548ee6}.editor-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:0;min-width:0;padding:10px;border:0;border-bottom:1px solid #dde0e4;background:#f7f8fa}.editor-toolbar button,.editor-toolbar select{border:1px solid #cdd2d9;border-radius:6px;padding:7px 9px;min-height:34px;font-size:12px;color:#24272c;background:white;cursor:pointer}.editor-toolbar button[aria-pressed=true]{background:#dce8ff;border-color:#5786ca}.editor-toolbar button:disabled{opacity:.4;cursor:default}.editor-toolbar label{display:inline-flex;align-items:center;gap:5px;font-size:12px}.editor-toolbar input[type=color]{width:32px;height:32px;padding:2px;border:1px solid #cdd2d9;border-radius:6px}.editor-help{margin:0;padding:10px 16px;border-top:1px solid #dde0e4;color:#626873;font-size:12px;line-height:1.5}.proposal-details span,.proposal-details strong{white-space:pre-wrap;overflow-wrap:anywhere}.admin-field,.proposal-admin-fields>div,.proposal-details>div{min-width:0}@media print{.rich-text-content{print-color-adjust:exact;-webkit-print-color-adjust:exact}.rich-text-content tr{page-break-inside:avoid;break-inside:avoid}.rich-text-content thead{display:table-header-group}.rich-text-content table{max-width:100%}}.proposal-values{padding:0 48px 38px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.proposal-values article{min-height:150px;padding:24px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center;border-radius:18px;background:var(--panel)}.proposal-values article>span{line-height:1.2;color:var(--muted)}.proposal-values article>strong{margin-top:10px;font-size:24px;line-height:1.15;letter-spacing:-.035em;font-weight:550}.proposal-values article>strong:first-child{margin-top:0}.proposal-values article small{margin-top:6px;color:var(--muted);font-size:12px}.proposal-values article .proposal-cash-label{font-size:20px;line-height:1.2}.infinitepay-logo{width:92px;height:auto;margin-top:12px;object-fit:contain;object-position:left center}.proposal-delete{color:#9a3232}.proposal-details{padding:0 48px 40px;display:grid;grid-template-columns:1fr 1fr;gap:12px}.proposal-details>div{padding:20px 0;display:grid;gap:7px;border-top:1px solid var(--line)}.proposal-details strong{font-size:16px;font-weight:550}.proposal-acceptance{padding:0 48px 48px}.proposal-accept-button{width:100%;min-height:54px;border-radius:14px;background:#0a0a0a;color:#fff;font-weight:600}.proposal-acceptance form{padding:28px;border-radius:18px;background:var(--panel)}.proposal-acceptance form h2{margin:0;font-size:22px}.proposal-acceptance form>p{margin:6px 0 22px;color:var(--muted)}.proposal-form-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;gap:10px}.proposal-form-grid label{display:grid;gap:7px;color:var(--muted);font-size:12px;font-weight:600}.proposal-cpf-note{display:block;color:#74787d;font-size:12px;line-height:1.35;font-weight:400}.proposal-form-grid input{width:100%;height:46px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fff;outline:0}.proposal-form-grid input:focus{border-color:#8d9298}.proposal-consent{margin-top:20px;display:flex;align-items:flex-start;gap:10px;line-height:1.45}.proposal-consent input{margin-top:3px}.proposal-form-footer{margin-top:20px;display:flex;align-items:flex-end;justify-content:space-between;gap:28px}.proposal-form-footer .proposal-cpf-note{max-width:420px;margin-right:8px}.proposal-admin-actions,.proposal-form-actions{margin-top:20px;display:flex;justify-content:flex-end;gap:8px}.proposal-form-footer .proposal-form-actions{flex:0 0 auto;margin-top:0}.proposal-admin-actions a,.proposal-admin-actions button,.proposal-form-actions button{min-height:42px;padding:0 15px;display:inline-flex;align-items:center;justify-content:center;gap:7px;border-radius:10px;background:#fff;box-shadow:inset 0 0 0 1px var(--line);font-weight:550}.proposal-admin-actions .admin-save,.proposal-form-actions button[type=submit]{background:#0a0a0a;color:#fff;box-shadow:none}.proposal-status{display:block;margin-top:12px;text-align:center;color:var(--muted)}.proposal-accepted,.proposal-expired{margin:0 48px 48px;padding:24px;border-radius:16px;background:#e9f8e8}.proposal-accepted{display:flex;align-items:center;gap:14px}.proposal-accepted>span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%;background:#47aa43;color:#fff;font-weight:700}.proposal-accepted p{margin:3px 0 0;color:var(--muted)}.proposal-expired{background:#f4eeee;color:#7b3333}.proposal-footer{min-height:78px;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);color:var(--muted)}.proposal-admin-list{display:grid;gap:14px}.proposal-admin-card{padding:0;overflow:hidden}.proposal-admin-card>summary{min-height:88px;padding:18px 22px;display:flex;align-items:center;justify-content:space-between;gap:20px}.proposal-admin-card>summary>div:first-child{min-width:0}.proposal-admin-card>summary>div:first-child span{color:var(--muted);font-size:12px}.proposal-admin-card>summary h3{margin:4px 0 0;overflow:hidden;font-size:18px;text-overflow:ellipsis;white-space:nowrap}.proposal-card-state{flex:0 0 auto;display:flex;align-items:center;gap:8px}.proposal-admin-card-content{padding:22px;border-top:1px solid var(--line)}.proposal-admin-fields{min-width:0;margin:0;padding:0;border:0}.proposal-admin-fields select{width:100%;height:44px;padding:0 12px;border:1px solid var(--line);border-radius:10px;background:#fafafa}.proposal-status-pill{padding:6px 10px;border-radius:999px;background:#e9eaec;font-size:12px;font-weight:600}.proposal-status-pill.is-sent{background:#e7efff;color:#315d9d}.proposal-status-pill.is-accepted{background:#e2f6e1;color:#32732f}.proposal-status-pill.is-declined{background:#f5e7e7;color:#813b3b}.proposal-admin-summary{padding:14px 0;display:flex;flex-wrap:wrap;gap:24px;border-top:1px solid var(--line);color:var(--muted)}.proposal-admin-summary strong{color:var(--ink)}.proposal-admin-acceptance{padding:14px;display:grid;gap:4px;border-radius:10px;background:#e7f7e7;color:#315f33}.proposal-login-needed{width:min(420px,100%);padding:32px;border-radius:20px;background:#fff}.proposal-login-needed a{margin-top:18px;padding:12px 16px;border-radius:10px;background:#0a0a0a;color:#fff}@media (max-width:809.98px){.site-shell{width:calc(100% - 40px);margin-top:18px}.floating-header{height:64px;padding:0 34px;grid-template-columns:minmax(0,1fr) auto;column-gap:14px}.floating-header.compact{padding-inline:22px}.desktop-nav,.header-socials{display:none}.menu-toggle{width:32px;height:32px;padding:0;display:grid;place-items:center;background:transparent}.menu-toggle svg{width:26px;height:26px;stroke-width:1.5}.mobile-nav{position:absolute;top:70px;left:0;right:0;padding:20px;display:grid;border-radius:18px;background:#fff;box-shadow:0 18px 35px rgba(0,0,0,.12)}.mobile-nav a{padding:12px 0;border-bottom:1px solid var(--line)}.mobile-nav a:last-child{border:0}.about-projects-stack,.panel{border-radius:22px}.hero-panel{min-height:0;padding:40px 32px 36px}.availability{position:static;width:max-content;margin:0 0 10px auto}.identity{gap:18px}.identity img{width:80px;height:80px}.identity h2{font-size:20px}.hero-copy{margin-top:24px}.hero-copy h1{font-size:29px;line-height:1.1}.hero-subtitle{margin-top:9px;font-size:17px;line-height:1.45}.hero-actions{flex-direction:column;gap:10px}.primary-button,.secondary-button{width:100%}.trusted{margin-top:42px}.trusted>p{margin-bottom:0;font-size:14px}.logo-track{gap:30px;animation-duration:20s}.company-logo{width:98px}.company-logo img{max-width:98px;height:25px}.about-panel{padding:40px 24px 36px}.contact-panel,.services-panel{padding:36px 20px 20px}.about-text{font-size:18px}.software-list{gap:24px}.home-tools{padding:0 2px;gap:8px}.home-tools .software-item{width:32px;height:32px;flex-basis:32px}.home-tools .software-item img{width:29px;height:29px}.projects-panel{padding:62px 20px 30px}.projects-grid{grid-template-columns:1fr;gap:36px}.project-card>p{margin-top:14px}.case-gallery{gap:20px}.case-gallery figure,.case-gallery img,.project-image{border-radius:5px}.services-grid{grid-template-columns:1fr}.services-grid article{min-height:195px}.contact-layout{gap:26px}.contact-layout,.form-row{grid-template-columns:1fr}.contact-map,.contact-map iframe{min-height:220px;height:220px}.contact-panel textarea{min-height:150px}.site-footer{padding:30px 10px;font-size:12px}.listing-panel,.resume-panel{padding:36px 20px 30px}.inner-heading h1{font-size:38px}.tools-track{gap:46px}.tools-track .software-item{width:32px;height:32px;flex-basis:32px}.tools-track .software-item img{width:29px;height:29px}@keyframes tools-marquee{0%{transform:translateX(0)}to{transform:translateX(calc(-50% - 23px))}}.experience-list article{grid-template-columns:1fr;gap:12px}.case-footer,.case-page article{width:calc(100% - 40px)}.case-page article{padding:66px 2px 2px}.case-content{padding:40px 20px}.case-hero{padding:0 0 40px}.case-hero h1{font-size:28px}.case-intro{grid-template-columns:1fr}.case-next{padding:30px 20px}.case-next span{font-size:26px}.admin-page{padding:14px 14px 50px}.admin-page:before{display:none}.admin-toolbar{position:relative;top:auto;left:auto;width:100%;transform:none;align-items:flex-start}.admin-toolbar>div:last-child{flex-wrap:wrap;justify-content:flex-end}.admin-section{padding:20px 16px}.admin-collapsible{padding:0}.admin-section-summary{min-height:68px;padding:0 20px}.admin-section-content{padding:18px 20px 20px}.admin-help{margin-bottom:18px}.proposal-admin-card>summary{align-items:flex-start;flex-direction:column;gap:10px}.proposal-card-state{width:100%;justify-content:space-between}.admin-cards,.admin-grid,.analytics-grid,.analytics-overview{grid-template-columns:1fr}.analytics-section-heading{align-items:flex-start;flex-direction:column;gap:5px}.analytics-chart-wrap{margin-inline:-8px;overflow-x:auto}.analytics-chart{width:720px}.admin-asset,.admin-inline,.admin-row{grid-template-columns:1fr}.admin-row .admin-remove,.admin-upload{margin-top:-8px}.admin-image-grid{grid-template-columns:1fr}.admin-image-card .admin-upload{margin-top:-6px}.proposal-page{padding:20px 12px}.proposal-header{padding:16px 20px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:flex-start;gap:12px 16px}.proposal-header-actions{display:contents}.proposal-header-actions>div:not(.proposal-document-actions){grid-column:2;grid-row:1}.proposal-header-actions>.proposal-document-actions{grid-column:1/-1;grid-row:2;width:100%;justify-content:flex-end}.proposal-intro{padding:42px 24px 36px}.proposal-intro h1{font-size:38px}.proposal-block{padding:30px 24px}.proposal-details,.proposal-values{padding:0 24px 30px;grid-template-columns:1fr}.proposal-details{gap:0}.proposal-acceptance{padding:0 24px 32px}.proposal-form-grid{grid-template-columns:1fr}.proposal-form-footer{align-items:stretch;flex-direction:column;gap:12px}.proposal-form-footer .proposal-cpf-note{max-width:none;margin-right:0}.proposal-accepted,.proposal-expired{margin:0 24px 32px}.proposal-footer{padding:20px 24px;flex-direction:column;align-items:flex-start;gap:7px}.proposal-admin-actions{flex-wrap:wrap}}@media (min-width:810px) and (max-width:1040px){.admin-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal{opacity:1;filter:none;transform:none}.logo-track,.tools-track{animation:none}.availability span{box-shadow:0 0 0 5px rgba(57,182,41,.12)}}@media print{.proposal-page,body{background:#fff}.proposal-page{padding:0}.proposal-sheet{width:100%;box-shadow:none}.proposal-acceptance,.proposal-accepted,.proposal-expired,.proposal-print,.proposal-share{display:none!important}}@font-face{font-family:Switzer;src:url(/assets/fonts/Switzer-Variable.woff2) format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/InterTight-LatinExt.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c0,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:Inter Tight;font-style:normal;font-weight:400 700;font-display:swap;src:url(/assets/fonts/InterTight-Latin.woff2) format("woff2");unicode-range:u+00??,u+0131,u+0152-0153,u+02bb-02bc,u+02c6,u+02da,u+02dc,u+0304,u+0308,u+0329,u+2000-206f,u+20ac,u+2122,u+2191,u+2193,u+2212,u+2215,u+feff,u+fffd}.portfolio{--portfolio-edge:40px;width:min(1440px,calc(100% - 80px));margin:0 auto;padding:0;font-size:16px;font-family:Inter Tight,sans-serif;line-height:1.5;letter-spacing:0;background:#fff}.portfolio h1,.portfolio h2,.portfolio h3{font-family:Switzer,sans-serif}.portfolio-header{font-family:Inter Tight,sans-serif}.portfolio section[id]{scroll-margin-top:112px}.portfolio a:focus-visible,.portfolio button:focus-visible{outline:2px solid #111;outline-offset:5px}.portfolio-header{position:fixed;inset:0 0 auto;z-index:60;background:rgba(255,255,255,.96);border-bottom:1px solid #ededed;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.portfolio-header-inner{width:min(1440px,calc(100% - 80px));min-height:88px;margin:auto;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:28px}.portfolio-brand{display:inline-flex;flex-shrink:0;justify-self:start;align-items:center;font-size:24px;font-weight:600}.portfolio-brand img{display:block;width:137px;height:34px;object-fit:contain}.portfolio-location{display:flex;align-items:center;justify-self:center;gap:9px;font-size:13px;white-space:nowrap}.portfolio-location time{margin-left:14px;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.portfolio-menu{min-width:0;display:flex;align-items:center;justify-content:flex-end;justify-self:end;gap:22px}.portfolio-language{display:inline-flex;align-items:center;gap:2px;flex:0 0 auto;padding:3px;border:1px solid #ededed;border-radius:999px;background:#f7f7f7;font-size:11px;white-space:nowrap}.portfolio-language button{border:0;min-width:34px;padding:5px 8px;border-radius:999px;background:transparent;color:#777;font:inherit;cursor:pointer;transition:background-color .18s ease,box-shadow .18s ease,color .18s ease}.portfolio-language button[aria-pressed=true]{color:#111;font-weight:650;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.12)}.portfolio-language button:disabled{opacity:.45;cursor:not-allowed}.portfolio-availability>span{width:7px;height:7px;flex:0 0 7px;border-radius:50%;background:#00bf49;animation:availability-pulse 1.8s ease-out infinite}@keyframes availability-pulse{0%{box-shadow:0 0 0 0 rgba(0,191,73,.35)}70%,to{box-shadow:0 0 0 7px rgba(0,191,73,0)}}.portfolio-nav{display:flex;align-items:center;flex-wrap:wrap;gap:22px;font-size:14px}.portfolio-nav a{padding:10px 0;position:relative}.portfolio-nav a:after{content:"";position:absolute;inset:auto 0 5px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .2s}.portfolio-nav a:hover:after{transform:scaleX(1)}.portfolio-hero{padding:156px 0 80px}.portfolio-hero-meta{display:flex;justify-content:flex-end;align-items:center;gap:20px;margin-bottom:38px}.portfolio-identity{display:flex;align-items:center;gap:14px}.portfolio-identity img{width:72px;height:72px;object-fit:cover;border-radius:50%}.portfolio-identity p{margin:0 0 5px;font-size:17px;font-weight:500}.portfolio-identity span{color:#666;font-size:14px}.portfolio-availability{margin:0;display:flex;align-items:center;gap:9px;font-size:13px}.portfolio-hero-heading{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:40px}.portfolio-hero-heading .portfolio-actions{padding-top:8px}.portfolio-hero h1{max-width:1200px;margin:0;font-size:clamp(44px,5.4vw,80px);line-height:1.18;letter-spacing:-.04em;font-weight:500;text-wrap:balance;overflow-wrap:break-word}.portfolio-hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:36px}.portfolio-hero-subtitle{margin:0;max-width:560px;font-size:19px;line-height:1.5;color:#666}.portfolio-actions{display:flex;align-items:center;gap:26px;flex-shrink:0;justify-content:flex-end;margin-left:auto;max-width:100%}.portfolio-button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:54px;padding:16px 22px;border-radius:8px;background:#111;color:#fff;font-size:14px;line-height:1.4;font-weight:500;transition:background .2s}.portfolio-button:hover{background:#333}.portfolio-text-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;font-size:14px;line-height:1.4;font-weight:500;min-height:58px;padding:16px 22px;border:1px solid #d8d8d8;border-radius:8px;background:#fff}.portfolio-text-button:hover{background:#f7f7f7}.portfolio-companies{margin-top:72px;padding:28px 0 36px;border-top:1px solid #e9e9e9}.portfolio-companies>p{margin:0 0 27px;color:#111;font-size:15px;font-weight:700;text-align:left}.portfolio-companies .company-logo{flex:0 0 160px;width:160px;height:50px}.portfolio-companies .company-logo img{max-width:160px;height:42px}.portfolio-company-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));align-items:center;gap:28px}.portfolio-company-list>div{min-width:0;display:flex;align-items:center;justify-content:center}.portfolio-company-list img{display:block;width:100%;max-width:130px;height:48px;object-fit:contain}.portfolio .panel{margin:0;padding:94px 0;border-radius:0;border:0;border-top:1px solid #e9e9e9;background:transparent;box-shadow:none}.portfolio .panel-heading{margin:0 0 42px}.portfolio .about-panel h2,.portfolio .inner-heading h1,.portfolio .panel-heading h2{margin:0;font-size:clamp(32px,4vw,58px);line-height:1.12;letter-spacing:-.04em;font-weight:500}.portfolio .panel-heading>p{margin-top:18px;max-width:440px;color:#666;font-size:16px;line-height:1.5}.portfolio .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:20px}.portfolio .project-image{position:relative;display:grid;place-items:center;width:100%;height:auto;aspect-ratio:3/2;border-radius:8px;overflow:hidden;background:transparent}.portfolio .project-image img{min-width:0;min-height:0;position:static;display:block;width:100%;height:100%;border-radius:8px;object-fit:cover;transform:none;filter:none;transition:none}.portfolio .project-card:hover img{transform:none;filter:none}.portfolio .project-image-placeholder{min-height:240px;border-radius:8px;background:#f5f5f5}.portfolio-project-caption{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:24px}.portfolio-project-caption>p{margin:0;color:#737373;font-size:14px;font-weight:400;line-height:1.5;text-align:right;text-transform:none}.portfolio .project-card h3{margin:0;font-family:Inter Tight,sans-serif;font-size:16px;line-height:1.5;letter-spacing:0;font-weight:400}.portfolio-project-caption svg{flex-shrink:0;transition:transform .2s}.portfolio .project-card:hover .portfolio-project-caption svg{transform:translate(3px,-3px)}.portfolio .project-card>p{margin:8px 0 0;color:#666;font-size:13px}.portfolio .center-action{margin-top:48px;justify-content:flex-start}.portfolio .about-panel .reveal{display:grid;grid-template-columns:.85fr 1.15fr;column-gap:80px;align-items:start}.portfolio .about-panel h2{grid-row:1/3}.portfolio .about-panel .portfolio-companies{grid-column:1/-1;min-width:0;margin-top:48px;padding-bottom:0}.portfolio .about-text{margin:0;max-width:none;font-size:clamp(23px,2.5vw,36px);line-height:1.5;letter-spacing:0;font-weight:400}.portfolio .about-panel .text-link{justify-self:start;margin-top:30px;color:#111;font-size:14px}.portfolio-services-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.portfolio-services-layout .panel-heading>p{max-width:100%;font-size:18px;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.portfolio-services-list{display:grid;gap:16px;min-width:0}.portfolio-service{display:flex;gap:24px;align-items:center;padding:22px;background:#f7f7f7;border-radius:14px}.portfolio-service-icon{flex:0 0 72px;width:72px;height:72px;display:grid;place-items:center;border-radius:12px}.portfolio-service-icon img{width:40px;height:40px;object-fit:contain}.portfolio-service h3{margin:0;font-size:clamp(23px,2.1vw,30px);line-height:1.2;font-weight:500;letter-spacing:-.02em}.portfolio-service p{margin:9px 0 0;font-size:14px;line-height:1.45;color:#666}.portfolio .contact-layout{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch;gap:32px}.portfolio .contact-panel form{gap:16px;grid-template-rows:auto 1fr auto}.portfolio .contact-panel form>label:not(.contact-honeypot){display:flex}.portfolio .contact-panel .form-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.portfolio .contact-details{gap:16px;grid-template-rows:auto 1fr}.portfolio .contact-links{border:0;border-radius:0;box-shadow:none}.portfolio .contact-panel input,.portfolio .contact-panel textarea{background:#f7f7f7;border-radius:8px;box-shadow:none;border:0;font-size:16px}.portfolio .contact-panel input{height:60px;padding:16px 18px}.portfolio .contact-panel textarea{min-height:240px;height:100%;padding:18px}.portfolio .contact-panel input:focus,.portfolio .contact-panel textarea:focus{outline:none;box-shadow:inset 0 0 0 1px #111}.portfolio .form-button{min-height:54px;border-radius:8px;font-size:14px;box-shadow:none}.portfolio .contact-links a{background:transparent;border-radius:0;border:0;min-height:64px;padding:8px 0}.portfolio .contact-links strong{font-size:18px;overflow-wrap:anywhere}.portfolio .contact-detail-icon{background:#f7f7f7}.portfolio .contact-map{margin-top:0;border-radius:12px;box-shadow:none;min-height:260px}.portfolio .contact-map iframe{height:100%;min-height:260px}.portfolio .case-footer,.portfolio .site-footer{width:100%;margin:0;padding:30px 0;border-top:1px solid #e9e9e9;border-radius:0;color:#666;font-size:13px}.portfolio .opening-frame{margin:0;padding:150px 0 0;border-radius:0;background:transparent;overflow:visible}.portfolio .opening-frame>.panel{border-top:0;padding-top:0}.portfolio .inner-heading{margin:0 0 56px}.portfolio .case-back{margin-bottom:30px;font-size:14px}.portfolio .inner-heading-description{max-width:860px;margin-top:32px;font-size:26px;line-height:1.4}.portfolio .resume-section{border-top:1px solid #e9e9e9;padding-top:40px;margin-top:56px}.portfolio .resume-section h2{font-size:28px;letter-spacing:-.03em;font-weight:500}.portfolio .experience-list article{padding:24px 0;background:transparent;border-radius:0}.portfolio.case-page article{width:100%;margin:0;padding:154px 0 80px}.portfolio .case-content,.portfolio.case-page article{background:transparent;border-radius:0;overflow:visible}.portfolio .case-content{padding:0}.portfolio .case-hero{width:100%;max-width:820px;margin:56px auto 64px;padding:0;background:transparent}.portfolio .case-opening-cover{margin:0}.portfolio .case-opening-cover img{display:block;width:100%;height:auto;border-radius:0}.portfolio .case-hero h1{max-width:1100px;font-size:clamp(24px,2vw,30px);line-height:1.2;letter-spacing:-.025em;font-weight:500;overflow-wrap:break-word}.portfolio .case-intro{max-width:100%;margin-top:24px}.portfolio .case-intro>p{font-size:16px;line-height:1.5;color:#666;white-space:pre-line}.portfolio .case-gallery{gap:24px}.portfolio .case-video{position:relative;width:100%;aspect-ratio:16/9;overflow:hidden;border-radius:0;background:#171717}.portfolio .case-video-loading{position:absolute;z-index:2;inset:0;pointer-events:none;background:linear-gradient(135deg,#333,#595959)}.portfolio .case-video iframe,.portfolio .case-video video,.portfolio .case-video-poster{display:block;width:100%;height:100%;border:0}.portfolio .case-video video{object-fit:contain}.portfolio .case-video-poster{position:relative;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:14px;color:#fff;cursor:pointer;background:linear-gradient(135deg,#333,#595959)}.portfolio .case-video-poster:hover{background:linear-gradient(135deg,#292929,#505050)}.portfolio .case-video-thumbnail{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.78}.portfolio .case-video-play{position:relative;z-index:1;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;color:#171717;background:#fff}.portfolio .case-video-label{position:relative;z-index:1;font-size:14px;font-weight:500}.case-image-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.portfolio .case-text-block{width:100%;max-width:820px;margin:24px auto}.case-text-block p{margin:0;font-size:16px;line-height:1.6;color:#666;white-space:pre-line;overflow-wrap:anywhere}@media (max-width:700px){.case-image-pair{grid-template-columns:minmax(0,1fr);gap:16px}.portfolio .case-text-block{width:calc(100% - 24px);margin:16px auto}.case-text-block p{font-size:14px}}.portfolio .case-gallery figure{border-radius:0;overflow:visible}.portfolio .case-gallery figure.case-video{overflow:hidden}.portfolio .case-gallery img{display:block;width:100%;height:auto;max-height:none;object-fit:contain;border-radius:0}.portfolio .case-gallery .case-video-thumbnail{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;border-radius:0}.portfolio .case-gallery figure.case-pair-image{width:100%;aspect-ratio:1/1;overflow:hidden}.portfolio .case-gallery .case-pair-image img{width:100%;height:100%;object-fit:cover;object-position:center}.portfolio .case-next{margin-top:80px;padding:40px 0 0;border-radius:0;background:transparent;border-top:1px solid #e9e9e9}.portfolio .case-more-projects{margin-top:80px;padding-top:64px;border-top:1px solid #e9e9e9}.portfolio .case-more-heading{display:flex;align-items:baseline;justify-content:space-between;gap:24px}.portfolio .case-more-heading .text-link{font-size:16px;white-space:nowrap}.portfolio .case-next span{font-size:clamp(32px,4vw,60px);line-height:1.12}.admin-service-preview{margin:16px 0;display:flex;align-items:center;gap:14px}.admin-service-preview>span{width:60px;height:60px;display:grid;place-items:center;border-radius:10px}.admin-service-preview img{object-fit:contain}@media (max-width:1199px){.portfolio-hero h1{line-height:1.2;letter-spacing:-1.44px}.portfolio .about-panel h2,.portfolio .inner-heading h1,.portfolio .panel-heading h2{line-height:1.2;letter-spacing:-1.2px}}@media (max-width:1000px){.portfolio-header-inner{grid-template-columns:auto minmax(0,1fr)}.portfolio-menu{grid-column:2}.portfolio-hero-heading{grid-template-columns:minmax(0,1fr);gap:26px}.portfolio-hero-heading .portfolio-actions{padding-top:0;justify-self:end}.portfolio-location{display:none}.portfolio .about-panel .reveal,.portfolio-services-layout{gap:40px}.portfolio .contact-layout{gap:32px}.portfolio-hero-bottom{align-items:flex-start;flex-direction:column}}@media (max-width:700px){.portfolio,.portfolio-header-inner{width:calc(100% - 40px)}.portfolio-header-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;padding:14px 0 9px;min-height:98px;gap:10px}.portfolio-menu{display:contents;justify-self:auto}.portfolio-language{grid-column:2;grid-row:1;justify-self:end;margin:0}.portfolio-nav{grid-column:1/-1;grid-row:2}.portfolio .projects-panel{padding-bottom:42px}.portfolio .contact-panel{padding-top:42px}.portfolio-brand img{width:113px;height:27px}.portfolio-nav{width:100%;gap:14px;font-size:12px}.portfolio-nav a{padding:8px 0}.portfolio-hero{padding-top:144px;padding-bottom:58px}.portfolio-hero-meta{align-items:flex-start;flex-direction:column;gap:20px;margin-bottom:28px}.portfolio-identity img{width:58px;height:58px}.portfolio-hero h1{font-size:clamp(36px,8.8vw,58px);line-height:1.2;letter-spacing:-1.44px}.portfolio-hero-bottom{margin-top:26px;gap:24px}.portfolio-hero-subtitle{font-size:17px}.portfolio-actions{gap:24px;flex-wrap:wrap}.portfolio-button{gap:20px}.portfolio-button,.portfolio-text-button{font-size:13px;min-height:54px}.portfolio-companies{margin-top:40px}.portfolio-companies .company-logo{flex-basis:140px;width:140px;height:44px}.portfolio-companies .company-logo img{max-width:140px;height:36px}.portfolio-company-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px 20px}.portfolio-company-list img{max-width:100px;height:38px}.portfolio .panel{padding:58px 0}.portfolio .panel-heading{margin-bottom:30px}.portfolio .about-panel h2,.portfolio .inner-heading h1,.portfolio .panel-heading h2{font-size:32px;line-height:1.2;letter-spacing:-1.2px}.portfolio .projects-grid{grid-template-columns:minmax(0,1fr);gap:20px}.portfolio .project-image,.portfolio .project-image img,.portfolio .project-image-placeholder{border-radius:4px}.portfolio .center-action{margin-top:34px}.portfolio .about-panel .reveal,.portfolio-services-layout{display:block}.portfolio .about-panel h2{margin-bottom:26px}.portfolio .about-text{font-size:24px}.portfolio-service{gap:16px;padding:18px}.portfolio-service-icon{width:56px;height:56px;flex-basis:56px}.portfolio-service-icon img{width:32px;height:32px}.portfolio-service h3{font-size:23px}.portfolio-service p{font-size:13px}.portfolio .contact-layout{gap:36px}.portfolio .contact-layout,.portfolio .contact-panel .form-row{grid-template-columns:minmax(0,1fr)}.portfolio .contact-map iframe{height:260px}.portfolio .contact-links strong{font-size:17px}.portfolio .opening-frame{padding-top:144px}.portfolio .inner-heading-description{font-size:22px}.portfolio.case-page article{padding:144px 0 58px}.portfolio .case-hero{width:calc(100% - 24px);margin:32px auto 40px;padding:0}.portfolio .case-intro>p{font-size:14px}.portfolio .case-gallery{gap:16px}.portfolio .case-next{margin-top:48px;padding-top:28px}.portfolio .case-more-projects{margin-top:48px;padding-top:40px}.portfolio .case-more-heading{flex-wrap:wrap;gap:16px}.portfolio .case-next svg{width:32px;height:32px;flex-shrink:0}.portfolio .case-footer,.portfolio .site-footer{padding:24px 0;gap:18px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.portfolio .reveal{opacity:1;transform:none;transition:none}.portfolio *{animation:none!important;transition:none!important}}.portfolio-footer-links{display:flex;align-items:center;flex-wrap:wrap;gap:20px}.portfolio-footer-links a{display:inline-flex;align-items:center;gap:8px}.services-overview .services-learn-more{margin-top:28px}.services-overview .portfolio-companies{margin-top:40px;padding-bottom:0}.services-personal{display:flex;align-items:flex-start;gap:24px;max-width:960px;margin-top:56px;padding-top:36px;border-top:1px solid #e9e9e9}.services-personal>img{width:144px;height:144px;flex:0 0 144px;object-fit:cover;border-radius:12px}.services-personal h3{margin:0 0 12px;font-size:24px;font-weight:500;letter-spacing:-.02em}.services-personal p{margin:0;color:#666;font-size:17px;line-height:1.6;white-space:pre-line}.services-detail-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch}.services-detail{display:flex;flex-direction:column;align-items:flex-start;min-width:0;gap:24px;padding:36px;background:#f7f7f7;border-radius:12px}.services-detail>div:last-child{width:100%}.services-detail .portfolio-service-icon{width:56px;height:56px;flex:0 0 56px;border-radius:10px}.services-detail .portfolio-service-icon img{width:32px;height:32px}.services-detail h2{margin:0 0 18px;font-size:32px;font-weight:500;line-height:1.2;letter-spacing:-.03em}.services-detail p{max-width:900px;margin:0;font-size:18px;color:#666;line-height:1.6;white-space:pre-line;overflow-wrap:anywhere}.services-contact-action{display:flex;flex-wrap:wrap;align-items:center;gap:32px;margin-top:40px}.services-closing{margin-top:64px;padding-top:40px;border-top:1px solid #e9e9e9}.services-closing h2{max-width:900px;margin:0 0 24px;font-size:clamp(28px,3vw,42px);font-weight:500;line-height:1.25;letter-spacing:-.03em;white-space:pre-line;overflow-wrap:anywhere}@media (max-width:1000px){.services-detail-list{gap:20px}.services-detail{padding:28px}.services-overview .portfolio-services-layout{grid-template-columns:minmax(0,1fr)}}@media (max-width:700px){.services-personal{flex-direction:column;gap:18px;margin-top:36px;padding-top:28px}.services-personal>img{width:112px;height:112px;flex-basis:auto}.services-personal p{font-size:16px}.services-detail-list{grid-template-columns:minmax(0,1fr);gap:20px}.services-detail{gap:24px;padding:24px}.services-detail h2{font-size:28px}.services-detail p{font-size:17px}}.admin-login,.admin-page,.proposal-page{font-family:Inter Tight,sans-serif;color:#111}.admin-login h1,.admin-page h1,.admin-page h2,.admin-page h3,.proposal-sheet h1,.proposal-sheet h2{font-family:Switzer,sans-serif;font-weight:500;letter-spacing:-.03em}.admin-login form,.admin-page .admin-card,.admin-page .admin-section,.admin-page .analytics-metric-card{border-radius:12px;box-shadow:none;border-color:#e9e9e9}.admin-login input,.admin-page input,.admin-page select,.admin-page textarea,.proposal-acceptance input{font-family:Inter Tight,sans-serif;border-radius:8px}.admin-login button,.admin-page .admin-save,.proposal-accept-button{border-radius:8px;background:#111;color:#fff}.proposal-sheet{border-radius:12px;box-shadow:none}.proposal-values article{background:#f7f7f7;border-radius:8px}.proposal-intro h1{font-weight:500}@media print{.proposal-sheet{border-radius:0;box-shadow:none}}.project-editor{margin:32px 0;border:1px solid #ddd;border-radius:12px;padding:20px;background:#fafafa}.project-editor-add,.project-editor-block-toolbar,.project-editor-toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.project-editor-toolbar{margin-bottom:12px}.project-editor-toolbar strong{margin-right:auto}.project-editor button{min-height:36px;padding:8px 12px;border:1px solid #ddd;border-radius:6px;color:#111;background:#fff;cursor:pointer}.project-editor button:disabled{opacity:.4;cursor:default}.project-editor button[aria-pressed=true]{background:#111;color:white}.project-editor-canvas{max-width:1440px;margin:24px auto 0;background:white;padding:16px}.project-editor-canvas.is-mobile{max-width:390px}.project-editor-canvas img{display:block;max-width:100%;border-radius:8px}.project-editor-intro,.project-editor-text{max-width:820px;margin:40px auto}.project-editor-intro h1,.project-editor-intro input{font-family:Switzer,sans-serif;font-size:28px;font-weight:500;letter-spacing:-.025em}.project-editor-intro p,.project-editor-text p{white-space:pre-line;color:#666;font-size:16px;line-height:1.6}.project-editor-intro label{display:block;margin-bottom:16px}.project-editor-intro label>span{display:block;font-size:12px;color:#666;margin-bottom:6px}.project-editor-intro textarea,.project-editor-text textarea{width:100%;min-height:140px;font-size:16px;line-height:1.6}.project-editor-intro input{width:100%}.project-editor-block{margin:24px 0;border:1px dashed #ddd;padding:12px;border-radius:8px}.project-editor-block.is-preview{padding:0;border:0}.project-editor-block-toolbar{margin-bottom:12px;font-size:12px}.project-editor-block-toolbar span{margin-right:auto}.project-editor-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start}.project-editor-pair>div{min-width:0}.project-editor-pair>div>img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:center}.project-editor-add{justify-content:center;margin:16px 0}.project-editor-empty{padding:60px 16px;background:#f5f5f5;text-align:center;color:#666;border-radius:8px}.project-editor .admin-asset{margin-top:12px}.project-editor-canvas.is-mobile .project-editor-pair{grid-template-columns:minmax(0,1fr);gap:16px}.project-editor-canvas.is-mobile .project-editor-intro,.project-editor-canvas.is-mobile .project-editor-text{margin:32px 12px}.project-editor-canvas.is-mobile .project-editor-intro h1{font-size:24px}.project-editor-canvas.is-mobile p{font-size:14px}@media (max-width:700px){.project-editor{padding:12px}.project-editor-canvas{padding:8px}.project-editor-pair{grid-template-columns:minmax(0,1fr)}}.portfolio-services-layout{grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(40px,5vw,80px);align-items:start}.portfolio-service{display:grid;grid-template-columns:32px minmax(0,1fr);gap:20px;padding:24px 28px;align-items:start;border-radius:10px}.portfolio-service-icon,.services-detail .portfolio-service-icon{width:32px;height:32px;flex-basis:32px;background:transparent;border-radius:0}.portfolio-service-icon img,.services-detail .portfolio-service-icon img{width:28px;height:28px}.portfolio-service h3{font-size:clamp(20px,1.7vw,25px);line-height:1.3}.portfolio-service p{margin-top:8px;line-height:1.55}.services-overview .portfolio-companies{margin-top:48px;padding:32px 0 0;display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);column-gap:clamp(40px,5vw,80px);row-gap:24px;align-items:center}.services-overview .portfolio-companies>p{margin:0;max-width:280px;line-height:1.5;font-size:14px;font-weight:600}.services-overview .logo-marquee{min-width:0}.services-overview .logo-marquee:after,.services-overview .logo-marquee:before{width:40px}.services-overview .logo-track{gap:0;animation-duration:27s}.company-logo-group{display:grid;grid-auto-flow:column;grid-auto-columns:176px;align-items:center;flex:0 0 auto}.services-overview .portfolio-companies .company-logo{width:176px;height:80px;padding:16px 24px}.services-overview .portfolio-companies .company-logo img{width:100%;max-width:128px;height:48px;object-fit:contain}@media (max-width:900px){.services-overview .portfolio-companies{grid-template-columns:minmax(0,1fr);row-gap:16px}.services-overview .portfolio-companies>p{max-width:none}}@media (max-width:700px){.portfolio-services-layout{display:block}.portfolio-service{grid-template-columns:28px minmax(0,1fr);gap:16px;padding:20px}.portfolio-service-icon{width:28px;height:28px}.portfolio-service-icon img{width:24px;height:24px}.portfolio-service h3{font-size:20px}.services-overview .portfolio-companies{margin-top:32px;padding-top:24px}.company-logo-group{grid-auto-columns:144px}.services-overview .portfolio-companies .company-logo{width:144px;height:72px;padding:16px}.services-overview .portfolio-companies .company-logo img{max-width:112px;height:40px}}.portfolio-service{min-height:124px}.services-overview .logo-track{animation-name:service-company-scroll}@keyframes service-company-scroll{0%{transform:translateX(0)}to{transform:translateX(-50%)}}.admin-service-preview>span{background:transparent}@media (max-width:700px){.portfolio-service{min-height:0}}.company-logo-group{grid-auto-columns:208px}.services-overview .portfolio-companies .company-logo{width:208px}.services-overview .portfolio-companies .company-logo img{width:auto;max-width:160px;height:42px}@media (max-width:700px){.company-logo-group{grid-auto-columns:176px}.services-overview .portfolio-companies .company-logo{width:176px}.services-overview .portfolio-companies .company-logo img{max-width:140px;height:36px}.portfolio-hero-heading .portfolio-actions{justify-content:flex-start;justify-self:start;align-self:start}.portfolio-hero .portfolio-button{min-height:44px;padding:11px 16px;gap:14px;font-size:13px;border-radius:6px;background:#f5f5f5;color:#171717}.portfolio-hero .portfolio-button:hover{background:#ebebeb}.portfolio-hero .portfolio-button svg{width:16px;height:16px}.portfolio-hero-heading .portfolio-actions{margin-left:0;margin-right:auto}}.portfolio .contact-submit,.portfolio .form-button,.portfolio .portfolio-button,.portfolio .portfolio-text-button{border-radius:999px}@media (max-width:700px){.portfolio-hero .portfolio-button{min-height:54px;min-height:50px}}.portfolio .contact-detail-icon img{width:23px;height:23px}.portfolio .form-button,.portfolio .portfolio-button{min-height:52px}@media (max-width:700px){.portfolio-hero .portfolio-button{min-height:48px}.services-overview .logo-marquee:after,.services-overview .logo-marquee:before{width:clamp(48px,13vw,88px)}}@media (min-width:701px){.services-overview .logo-marquee:after,.services-overview .logo-marquee:before{width:clamp(72px,8vw,144px)}}.services-overview .logo-marquee:before{background:linear-gradient(90deg,#fff,rgba(255,255,255,.94) 22%,rgba(255,255,255,.62) 56%,rgba(255,255,255,0))}.services-overview .logo-marquee:after{background:linear-gradient(270deg,#fff,rgba(255,255,255,.94) 22%,rgba(255,255,255,.62) 56%,rgba(255,255,255,0))}.portfolio .reveal{opacity:1;filter:none;transform:none;transition:none}@media (prefers-reduced-motion:no-preference){.portfolio .hero-word-clip{display:inline-block;overflow:clip;vertical-align:top;padding-block:.5em;margin-block:-.5em}.portfolio .hero-word{display:inline-block}.portfolio-hero .hero-word{animation:hero-word-enter 1.1s ease both;animation-play-state:var(--hero-motion-play-state,running)}.portfolio-hero .portfolio-actions,.portfolio-hero .portfolio-hero-bottom{animation:hero-support-enter 1.1s ease .2s both;animation-play-state:var(--hero-motion-play-state,running)}@keyframes hero-word-enter{0%{transform:translateY(180%)}to{transform:none}}@keyframes hero-support-enter{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.portfolio .initial-project-card .portfolio-project-caption,.portfolio .initial-project-heading{animation:initial-block-enter 1.1s ease .1s both;animation-play-state:var(--initial-motion-play-state,running)}.portfolio .initial-project-card .project-image img{animation:initial-cover-enter 1.1s ease .1s backwards;animation-play-state:var(--initial-motion-play-state,running)}.portfolio .initial-project-card:nth-child(2n) .portfolio-project-caption,.portfolio .initial-project-card:nth-child(2n) .project-image img{animation-delay:.18s}@keyframes initial-cover-enter{0%{transform:scale(1.055)}to{transform:scale(1)}}@keyframes initial-block-enter{0%{transform:translateY(32px)}to{transform:none}}.portfolio [data-motion-state]{transition:opacity 1.1s ease,transform 1.1s ease}.portfolio [data-motion-state=pending]{opacity:0;transform:translateY(24px)}.portfolio [data-motion-state=visible]{opacity:1;transform:none}.portfolio .projects-grid>[data-motion-state]:nth-child(2n),.portfolio .services-detail-list>[data-motion-state]:nth-child(2n){transition-delay:.11s}.portfolio .case-back>svg,.portfolio .contact-links a>svg,.portfolio .portfolio-button>svg,.portfolio .portfolio-service-icon img,.portfolio .text-link>svg{transition:transform .26s cubic-bezier(.22,1,.36,1)}.portfolio-nav a:after{transition:transform .32s cubic-bezier(.22,1,.36,1)}.portfolio .project-card:focus-visible .project-image img{transform:scale(1.035)}.portfolio .portfolio-button:focus-visible>svg,.portfolio .text-link:focus-visible>svg{transform:translate(3px,-3px)}@media (hover:hover) and (pointer:fine){.portfolio .project-image img{transition:transform .7s cubic-bezier(.22,1,.36,1)}.portfolio .project-card:hover .project-image img{transform:scale(1.035)}.portfolio .contact-links a:hover>svg,.portfolio .portfolio-button:hover>svg,.portfolio .text-link:hover>svg{transform:translate(3px,-3px)}.portfolio .case-back:hover>svg{transform:translateX(-3px)}.portfolio .portfolio-service:hover .portfolio-service-icon img,.portfolio .services-detail:hover .portfolio-service-icon img{transform:translateY(-3px)}.portfolio .logo-marquee:hover .logo-track{animation-play-state:paused!important}}@media (max-width:700px){.portfolio .initial-project-card .project-image img{animation:none}.portfolio [data-motion-state=pending]{transform:translateY(16px)}.portfolio [data-motion-state]{transition-delay:0s!important}}}@media (prefers-reduced-motion:reduce){.portfolio .case-back>svg,.portfolio .contact-links a>svg,.portfolio .portfolio-button>svg,.portfolio .portfolio-project-caption,.portfolio .portfolio-service-icon img,.portfolio .project-card .project-image img,.portfolio .text-link>svg,.portfolio [data-motion-state]{opacity:1;transform:none!important;transition:none!important;animation:none!important}}@media print{.portfolio .hero-word,.portfolio .portfolio-actions,.portfolio .portfolio-hero-bottom,.portfolio .portfolio-project-caption,.portfolio .project-image img{animation:none!important}.portfolio [data-motion-state]{opacity:1!important;transform:none!important;transition:none!important;animation:none!important}}@media (prefers-reduced-motion:no-preference){.portfolio.case-page [data-motion-state=enter]{animation:case-initial-enter 1.1s ease var(--case-entry-delay,0s) backwards;animation-play-state:var(--case-entry-play-state,running)}@keyframes case-initial-enter{0%{transform:translateY(24px)}to{transform:none}}@media (max-width:700px){@keyframes case-initial-enter{0%{transform:translateY(16px)}to{transform:none}}}}