.portfolio-page{flex-direction:column;min-height:100vh;display:flex}.portfolio-page-section{display:block}.portfolio-page-list{margin:0;padding:0;list-style:none}.portfolio-page-inner-grid{box-sizing:border-box;grid-template-columns:repeat(8,1fr);grid-auto-rows:auto;gap:0;width:100%;min-width:0;max-width:100%;margin:0;padding:0;display:grid}@media (max-width:1024px){.portfolio-page-inner-grid{gap:0}}@media (max-width:768px){.portfolio-page-inner-grid{grid-template-columns:repeat(4,1fr);gap:0}}
.portfolio-layout{--portfolio-shell-inline:64px;--portfolio-header-bar:80px;--portfolio-header-stack-gap:32px;min-height:100vh;padding-top:calc(var(--portfolio-header-bar) + var(--portfolio-header-stack-gap));flex-direction:column;display:flex}.portfolio-layout:has(.home-page){--portfolio-header-stack-gap:0}:is(.portfolio-layout:has(.basilar-page),.portfolio-layout:has(.saas-page),.portfolio-layout:has(.project-page)){--portfolio-header-stack-gap:0}@media (max-width:1024px){.portfolio-layout{--portfolio-shell-inline:48px;--portfolio-header-bar:64px;--portfolio-header-stack-gap:24px}.portfolio-layout:has(.home-page){--portfolio-header-stack-gap:0}:is(.portfolio-layout:has(.basilar-page),.portfolio-layout:has(.saas-page),.portfolio-layout:has(.project-page)){--portfolio-header-stack-gap:0}}@media (max-width:768px){.portfolio-layout{--portfolio-shell-inline:32px;--portfolio-header-bar:56px;--portfolio-header-stack-gap:20px}.portfolio-layout:has(.home-page){--portfolio-header-stack-gap:0}:is(.portfolio-layout:has(.basilar-page),.portfolio-layout:has(.saas-page),.portfolio-layout:has(.project-page)){--portfolio-header-stack-gap:0}}.portfolio-layout-fullbleed{width:100%}.portfolio-layout-fullbleed:empty{display:none}.portfolio-layout-grid.layout-grid{padding-left:var(--portfolio-shell-inline);padding-right:var(--portfolio-shell-inline);box-sizing:border-box;flex:auto;grid-template-rows:1fr auto;column-gap:32px;width:100%;max-width:100%;min-height:0;margin-left:0;margin-right:0}@media (max-width:1024px){.portfolio-layout-grid.layout-grid{column-gap:24px}}@media (max-width:768px){.portfolio-layout-grid.layout-grid{column-gap:20px}}@media (min-width:1025px){:is(.portfolio-layout:has(.basilar-page) .portfolio-layout-main,.portfolio-layout:has(.saas-page) .portfolio-layout-main,.portfolio-layout:has(.project-page) .portfolio-layout-main){padding-left:calc(clamp(64px,5vw + 40px,180px) - 64px);padding-right:calc(clamp(64px,5vw + 40px,180px) - 64px)}}:is(.portfolio-layout-grid.layout-grid:has(.basilar-page),.portfolio-layout-grid.layout-grid:has(.saas-page),.portfolio-layout-grid.layout-grid:has(.project-page)){row-gap:0}.portfolio-layout-main{grid-column:1/-1;min-width:0}.portfolio-layout-grid .portfolio-footer{grid-column:1/-1}@media (max-width:1024px){.portfolio-layout{min-height:100vh}}@media (max-width:768px){.portfolio-layout-main{min-height:0}}
.portfolio-cursor{background:var(--accent);pointer-events:none;z-index:9999;border-radius:50%;width:13px;height:13px;margin-top:-8px;margin-left:-8px;transition:width .3s cubic-bezier(.4,0,.2,1),height .3s cubic-bezier(.4,0,.2,1),margin .3s cubic-bezier(.4,0,.2,1),opacity .3s cubic-bezier(.4,0,.2,1);position:fixed;top:0;left:0}.portfolio-cursor[data-variant=large]{opacity:.6;width:32px;height:32px;margin-top:-12px;margin-left:-12px}.portfolio-cursor[data-variant=hidden]{opacity:0;visibility:hidden}.portfolio-cursor[data-variant=viewProject]{background:var(--accent);opacity:.9;justify-content:center;align-items:center;width:105px;height:105px;margin-top:-52.5px;margin-left:-52.5px;transition:width .16s,height .16s,margin .16s,opacity .16s;display:flex}.portfolio-cursor[data-variant=heroGiant]{background:color-mix(in srgb,var(--background)18%,transparent);-webkit-backdrop-filter:blur(12px)saturate(1.35)contrast(1.1);opacity:1;border:0 solid #ffffff7a;width:240px;height:240px;margin-top:-120px;margin-left:-120px;overflow:hidden;box-shadow:0 10px 30px #00000029,inset 0 1px #ffffff73,inset 0 -20px 32px #ffffff14}.portfolio-cursor-hero-lens{background:var(--background);border-radius:50%;position:absolute;inset:0;overflow:hidden}.portfolio-cursor-hero-lens-scene{transform-origin:0 0;will-change:transform;position:absolute;top:0;left:0}.portfolio-cursor-hero-clone{pointer-events:none;background:var(--accent);color:#111;text-align:center;width:100%;height:100%}.portfolio-cursor-hero-clone .home-hero-content{flex-direction:column;align-items:center;display:flex}.portfolio-cursor-hero-clone .hero-keyword-badge{--hero-keyword-accent:#111;border-color:#111111d6}.portfolio-cursor[data-variant=heroGiant]:before{content:"";pointer-events:none;mix-blend-mode:screen;background:radial-gradient(circle at 34% 30%,#ffffff5c,#fff0 48%),radial-gradient(circle at 68% 70%,#ffffff2e,#fff0 54%);border-radius:50%;position:absolute;inset:-12%;transform:scale(1.06)}.portfolio-cursor-view-inner{color:#fff;flex-direction:column;justify-content:center;align-items:center;gap:8px;margin-top:8px;display:flex}.portfolio-cursor-view-label{font:600 10px/1.2 var(--portfolio-font-body);letter-spacing:.08em;text-transform:uppercase}.portfolio-cursor-view-icon{color:#fff;flex-shrink:0}html.basilar-project:not([data-cursor-global-accent]) .portfolio-cursor,html.saas-project:not([data-cursor-global-accent]) .portfolio-cursor{background:var(--cursor-accent,var(--accent))}@media (max-width:768px){.portfolio-cursor[data-variant=heroGiant]{width:144px;height:144px;margin-top:-72px;margin-left:-72px}}
.portfolio-footer{border-top:1px solid var(--border-subtle);justify-content:center;align-items:flex-end;padding:30px 0 24px;display:flex}.portfolio-footer-inner{justify-items:center;gap:14px;width:100%;display:grid}.portfolio-footer-nav{flex-wrap:wrap;justify-content:center;gap:18px;display:flex}.portfolio-footer-nav-link{font:var(--portfolio-text-b3);color:color-mix(in srgb,var(--text-secondary)86%,transparent);text-decoration:none;transition:color .2s}.portfolio-footer-nav-link--button{cursor:pointer;font:var(--portfolio-text-b3);color:color-mix(in srgb,var(--text-secondary)86%,transparent);appearance:none;background:0 0;border:0;margin:0;padding:0;line-height:1.5}.portfolio-footer-nav-link:hover{color:var(--text-primary)}.portfolio-footer-contact{justify-content:center;gap:10px;display:flex}.portfolio-footer-contact-link{--footer-contact-size:34px;width:var(--footer-contact-size);height:var(--footer-contact-size);border:1px solid color-mix(in srgb,var(--text-secondary)34%,transparent);color:color-mix(in srgb,var(--text-secondary)76%,transparent);appearance:none;font:inherit;cursor:pointer;background:0 0;border-radius:999px;justify-content:center;align-items:center;padding:0;text-decoration:none;transition:color .2s,border-color .2s,background-color .2s;display:inline-flex}.portfolio-footer-contact-link:hover{color:var(--text-primary);border-color:color-mix(in srgb,var(--text-secondary)52%,transparent);background:color-mix(in srgb,var(--text-secondary)8%,transparent)}.portfolio-footer-contact-icon{width:16px;height:16px;-webkit-mask:var(--footer-contact-icon)center/contain no-repeat;mask:var(--footer-contact-icon)center/contain no-repeat;-webkit-mask:var(--footer-contact-icon)center/contain no-repeat;background:currentColor;display:block}.portfolio-footer-text{text-align:center;font:var(--portfolio-text-b3);color:color-mix(in srgb,var(--text-secondary)72%,transparent);width:100%;margin:0;display:block}@media (max-width:1024px){.portfolio-footer{padding:24px 0 20px}.portfolio-footer-nav{gap:14px}}@media (max-width:768px){.portfolio-footer{padding:20px 0 18px}.portfolio-footer-inner{gap:12px}.portfolio-footer-nav{gap:10px 14px}.portfolio-footer-contact-link{--footer-contact-size:32px}}
