.hero{--section-space:clamp(2rem, 1rem + 5vw, 6rem)}.hero__grid{align-items:start;column-gap:var(--space-4);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"media status""eyebrow eyebrow""title title""lead lead""actions actions""tabs tabs""note note";row-gap:1.25rem;display:grid}.hero__content{display:contents}.hero__media{grid-area:media;align-self:center}.hero__status{place-self:center start;align-items:center;gap:var(--space-2);border:1px solid color-mix(in srgb, var(--color-mint) 55%, transparent);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--on-surface);grid-area:status;padding:.35rem .85rem;display:inline-flex}.hero__status-dot{background:var(--color-mint);border-radius:50%;flex:none;width:.5rem;height:.5rem}.hero__eyebrow{color:var(--color-mint);font-size:.75rem;font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase;grid-area:eyebrow;margin-bottom:-.5rem}.hero h1{letter-spacing:-.03em;grid-area:title;font-size:clamp(1.95rem,8.2vw,2.75rem);line-height:1.08}.hero__lead{max-width:36rem;color:var(--on-surface-muted);grid-area:lead}.hero__actions{gap:var(--space-3);flex-wrap:wrap;grid-area:actions;display:flex}.hero__actions .btn{white-space:nowrap;flex:auto}.hero__tabs{margin-top:var(--space-2);grid-area:tabs}.hero__note{font-size:var(--text-sm);color:var(--on-surface-muted);grid-area:note;display:none}.hero__note a{color:var(--on-surface)}@media (width>=40em){.hero h1{font-size:clamp(2.75rem,5.5vw,3.5rem)}.hero__lead{font-size:var(--text-lg)}.hero__actions .btn{flex:none}.hero__note{display:block}}@media (width>=64em){.hero__grid{column-gap:clamp(3rem,6vw,6rem);row-gap:var(--space-5);grid-template-rows:repeat(6,auto) 1fr;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);grid-template-areas:"status media""eyebrow media""title media""lead media""actions media""tabs media""note media"}.hero h1{font-size:clamp(3rem,4.2vw,4.25rem)}.hero__media{place-self:start end;width:100%}}.service-list{--grid-gap:var(--space-7)}.service{gap:var(--space-4);padding-top:var(--space-5);border-top:2px solid var(--on-surface);flex-direction:column;display:flex}.service__market{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.service__summary{color:var(--on-surface-muted)}.service__list{gap:var(--space-2);font-size:var(--text-sm);list-style:none;display:grid}.service__list li{padding-left:var(--space-4);position:relative}.service__list li:before{content:"";background:var(--accent-text);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.65em;left:0}.service .text-link{padding-top:var(--space-2);margin-top:auto}.projects{gap:var(--space-7);display:grid}.section__footer{margin-top:var(--space-7)}.why__intro{font-size:var(--text-lg);color:var(--on-surface-muted)}.why{align-items:start}.why-list{list-style:none}.why-item{gap:var(--space-2);padding-block:var(--space-5);border-top:1px solid var(--border);display:grid}.why-item:last-child{border-bottom:1px solid var(--border)}.why-item h3{font-size:var(--text-lg)}.why-item p{color:var(--on-surface-muted)}.filter-status{margin-top:var(--space-4);font-size:var(--text-sm);color:var(--on-surface-muted)}.portfolio-grid{--grid-gap:var(--space-7) var(--space-6);margin-top:var(--space-6);align-items:stretch}.portfolio-card{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--surface);min-width:0;color:var(--on-surface);transition:border-color var(--duration-fast) var(--ease), transform var(--duration-fast) var(--ease);flex-direction:column;display:flex;overflow:hidden}.portfolio-card:hover{border-color:var(--color-mint);transform:translateY(-3px)}.portfolio-card__media{aspect-ratio:16/10;background:var(--surface-raised);text-decoration:none;display:block;overflow:hidden}.portfolio-card__image{object-fit:cover;width:100%;height:100%;transition:transform .25s;display:block}.portfolio-card:hover .portfolio-card__image{transform:scale(1.025)}.portfolio-card__placeholder{justify-content:flex-end;align-items:flex-start;gap:var(--space-3);background:var(--cover,#252b35);color:#fff;flex-direction:column;width:100%;height:100%;padding:clamp(1.25rem,4vw,2rem);display:flex}.portfolio-card__placeholder span{font-size:var(--text-sm);opacity:.8}.portfolio-card__placeholder strong{max-width:18ch;font-family:var(--font-heading);letter-spacing:var(--tracking-tight);font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.15}.portfolio-card__body{align-items:flex-start;gap:var(--space-4);flex-direction:column;flex:1;padding:clamp(1rem,2.5vw,1.5rem);display:flex}.portfolio-card__eyebrow{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.portfolio-card__eyebrow .project-card__meta{color:var(--accent-text);font-size:var(--text-sm);font-weight:var(--weight-semibold);margin:0}.portfolio-card__status{border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-xs);color:var(--on-surface-muted);align-items:center;padding:.25rem .55rem;display:inline-flex}.portfolio-card__title{letter-spacing:var(--tracking-tight);margin:0;font-size:clamp(1.25rem,2vw,1.65rem);line-height:1.2}.portfolio-card__title a:hover{text-underline-offset:.2em;text-decoration:underline}.portfolio-card .project-card__summary{color:var(--on-surface-muted);margin:0;line-height:1.65}.portfolio-card__role{padding-left:var(--space-3);border-left:2px solid var(--color-mint);font-size:var(--text-sm);gap:.2rem;margin:0;display:grid}.portfolio-card__role span{color:var(--on-surface-muted);font-size:var(--text-xs);font-weight:var(--weight-semibold);text-transform:uppercase;letter-spacing:.04em}.portfolio-card__tags{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.portfolio-card__tags li{border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--on-surface-muted);font-size:var(--text-xs);padding:.3rem .55rem}.portfolio-card__footer{align-items:center;gap:var(--space-4);width:100%;padding-top:var(--space-4);border-top:1px solid var(--border);flex-wrap:wrap;margin-top:auto;display:flex}.portfolio-card__details,.portfolio-card__live{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--weight-semibold);text-decoration:none;display:inline-flex}.portfolio-card__details{color:var(--accent-text)}.portfolio-card__live{color:var(--on-surface-muted)}.portfolio-card__details:hover,.portfolio-card__live:hover{text-underline-offset:.2em;text-decoration:underline}.portfolio-note{max-width:65ch;margin-top:var(--space-8);color:var(--on-surface-muted);font-size:var(--text-sm);line-height:1.6}.portfolio-empty{padding-block:var(--space-8);max-width:38rem}.portfolio-empty p{margin-top:var(--space-3);color:var(--on-surface-muted);line-height:1.65}.portfolio-card a:focus-visible{outline-offset:4px}@media (width<=39.99em){.portfolio-grid{--grid-gap:var(--space-6)}.portfolio-card__body,.portfolio-card__footer{gap:var(--space-3)}}@media (prefers-reduced-motion:reduce){.portfolio-card,.portfolio-card__image{transition:none}.portfolio-card:hover,.portfolio-card:hover .portfolio-card__image{transform:none}}:root{--color-dark:#171a21;--color-mint:#80d8c0;--color-light:#f7f8fa;--color-text:#252b35;--color-white:#fff;--color-dark-raised:#1f242d;--color-mint-strong:#1f7a66;--color-mint-soft:#e4f6f1;--color-text-muted:#5b6573;--color-text-on-dark:#eef1f5;--color-text-on-dark-muted:#a5adba;--color-border:#dfe3e9;--color-border-on-dark:#2c323d;--color-success:#1f7a4d;--color-error:#b3382c;--surface:var(--color-light);--surface-raised:var(--color-white);--on-surface:var(--color-text);--on-surface-muted:var(--color-text-muted);--accent-text:var(--color-mint-strong);--border:var(--color-border);--font-heading:"Bricolage Grotesque", "Segoe UI", system-ui, sans-serif;--font-body:"Figtree", "Segoe UI", system-ui, -apple-system, sans-serif;--weight-regular:400;--weight-medium:500;--weight-semibold:600;--weight-bold:700;--text-xs:.8125rem;--text-sm:.9375rem;--text-base:clamp(1rem, .96rem + .2vw, 1.0625rem);--text-lg:clamp(1.125rem, 1.05rem + .35vw, 1.3125rem);--text-xl:clamp(1.375rem, 1.2rem + .8vw, 1.75rem);--text-2xl:clamp(1.75rem, 1.45rem + 1.4vw, 2.5rem);--text-3xl:clamp(2.125rem, 1.6rem + 2.4vw, 3.5rem);--text-4xl:clamp(2.5rem, 1.7rem + 3.8vw, 4.75rem);--leading-tight:1.1;--leading-heading:1.2;--leading-body:1.65;--tracking-tight:-.02em;--tracking-normal:0;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.5rem;--space-6:2rem;--space-7:3rem;--space-8:4rem;--space-9:6rem;--space-10:8rem;--section-space:clamp(3.5rem, 2.5rem + 5vw, 7rem);--container-max:72rem;--container-narrow:46rem;--gutter:clamp(1.25rem, .9rem + 1.8vw, 2.5rem);--header-height:4.25rem;--radius-sm:.375rem;--radius-md:.625rem;--radius-lg:1rem;--radius-pill:999px;--shadow-sm:0 1px 2px #171a210f;--shadow-md:0 8px 24px #171a2114;--ease:cubic-bezier(.2, .7, .2, 1);--duration-fast:.15s;--duration:.25s;--z-header:100;--z-overlay:200;--z-floating:90}.section--dark{--surface:var(--color-dark);--surface-raised:var(--color-dark-raised);--on-surface:var(--color-text-on-dark);--on-surface-muted:var(--color-text-on-dark-muted);--accent-text:var(--color-mint);--border:var(--color-border-on-dark)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height) + var(--space-4))}body{min-height:100vh;font-family:var(--font-body);font-size:var(--text-base);font-weight:var(--weight-regular);line-height:var(--leading-body);color:var(--color-text);background-color:var(--color-light);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:var(--weight-bold);line-height:var(--leading-heading);letter-spacing:var(--tracking-tight);text-wrap:balance;margin:0}h1{font-size:var(--text-4xl);line-height:var(--leading-tight)}h2{font-size:var(--text-3xl);line-height:var(--leading-tight)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}p{text-wrap:pretty;margin:0}p,li{max-width:68ch}ul,ol{margin:0;padding:0}a{color:inherit;text-underline-offset:.2em}img,picture,svg,video{max-width:100%;display:block}img{height:auto}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer}:focus-visible{outline:3px solid var(--color-mint-strong);outline-offset:3px;border-radius:var(--radius-sm)}.section--dark :focus-visible{outline-color:var(--color-mint)}::selection{background:var(--color-mint);color:var(--color-dark)}.skip-link{top:-100%;left:var(--space-4);z-index:var(--z-overlay);padding:var(--space-3) var(--space-4);background:var(--color-dark);color:var(--color-white);border-radius:var(--radius-md);position:absolute}.skip-link:focus{top:var(--space-4)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.container{width:100%;max-width:calc(var(--container-max) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.container--narrow{max-width:calc(var(--container-narrow) + var(--gutter) * 2)}.section{padding-block:var(--section-space);background-color:var(--surface);color:var(--on-surface)}.section--tight{padding-block:calc(var(--section-space) * .6)}.section--light{--surface:var(--color-light)}.section--white{--surface:var(--color-white)}.section__header{gap:var(--space-3);margin-bottom:var(--space-7);display:grid}.section__header p{color:var(--on-surface-muted);font-size:var(--text-lg)}.stack{gap:var(--stack-gap,var(--space-5));flex-direction:column;display:flex}.stack--sm{--stack-gap:var(--space-3)}.stack--lg{--stack-gap:var(--space-7)}.cluster{align-items:center;gap:var(--cluster-gap,var(--space-4));flex-wrap:wrap;display:flex}.cluster--sm{--cluster-gap:var(--space-2)}.grid{gap:var(--grid-gap,var(--space-5));grid-template-columns:repeat(auto-fit, minmax(min(100%, var(--grid-min,18rem)), 1fr));display:grid}.grid--2,.grid--3{grid-template-columns:1fr}@media (width>=48em){.grid--2,.grid--3{grid-template-columns:repeat(2,1fr)}}@media (width>=64em){.grid--3{grid-template-columns:repeat(3,1fr)}}.split{gap:var(--space-7);align-items:center;display:grid}@media (width>=64em){.split{gap:var(--space-9);grid-template-columns:1fr 1fr}.split--wide-start{grid-template-columns:1.3fr 1fr}}.page{flex-direction:column;min-height:100vh;display:flex}.page>main{flex:1}@media (width<=63.999em){.hide-below-lg{display:none!important}}@media (width>=64em){.hide-lg-up{display:none!important}}.section--mint{--surface:var(--color-mint);--on-surface:var(--color-dark);--on-surface-muted:#1e3b34;--accent-text:var(--color-dark);--border:#171a2140}.section--mint :focus-visible{outline-color:var(--color-dark)}.btn{border-radius:var(--radius-md);min-height:3rem;font-weight:var(--weight-semibold);font-size:var(--text-base);text-align:center;transition:background-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease);border:2px solid #0000;justify-content:center;align-items:center;padding:.7rem 1.5rem;line-height:1.2;text-decoration:none;display:inline-flex}.btn--primary{background:var(--color-dark);border-color:var(--color-dark);color:var(--color-white)}.btn--primary:hover{background:#000;border-color:#000}.btn--secondary{border-color:color-mix(in srgb, currentColor 45%, transparent);color:inherit;background:0 0}.btn--secondary:hover{border-color:currentColor}.section--dark .btn--primary{background:var(--color-mint);border-color:var(--color-mint);color:var(--color-dark)}.section--dark .btn--primary:hover{background:#a0e4d1;border-color:#a0e4d1}.text-link{font-weight:var(--weight-semibold);color:var(--accent-text)}.tabs__list{gap:var(--space-5);border-bottom:1px solid var(--border);scrollbar-width:none;display:flex;overflow-x:auto}.tabs__list::-webkit-scrollbar{display:none}.tabs__tab{padding:var(--space-3) 0;font-size:var(--text-base);font-weight:var(--weight-medium);white-space:nowrap;color:var(--on-surface-muted);background:0 0;border:0;flex:none;position:relative}.tabs__tab:hover{color:var(--on-surface)}.tabs__tab:focus-visible{outline-offset:-3px}.tabs__tab[aria-selected=true]{color:var(--on-surface)}.tabs__tab[aria-selected=true]:after{content:"";background:var(--accent-text);border-radius:2px;width:1.75rem;height:3px;position:absolute;bottom:-1px;left:0}.tabs__panel{justify-items:start;gap:var(--space-2);padding-top:var(--space-4);display:grid}.tabs__panel[hidden]{display:none}.tabs__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.tabs__text{color:var(--on-surface)}.portrait{width:4.75rem;margin:0 .35rem .35rem 0;position:relative}.portrait:before{content:"";border:2px solid var(--color-mint);border-radius:50%;position:absolute;inset:0;transform:translate(.35rem,.35rem)}.portrait__frame{z-index:1;aspect-ratio:1;background:var(--surface-raised);border-radius:50%;position:relative;overflow:hidden}.portrait__frame img{object-fit:cover;object-position:center top;width:100%;height:100%}.portrait__placeholder{justify-content:center;align-items:center;gap:var(--space-2);height:100%;font-size:var(--text-sm);text-align:center;color:var(--on-surface-muted);flex-direction:column;display:flex}.portrait__placeholder svg{width:60%;height:auto}.portrait__placeholder span{display:none}@media (width>=40em){.portrait{width:5.5rem}}@media (width>=64em){.portrait{width:100%;max-width:20rem;margin:0 1rem 1rem auto}.portrait:before{border-radius:var(--radius-lg);transform:translate(1rem,1rem)}.portrait__frame{aspect-ratio:4/5;border-radius:var(--radius-lg)}.portrait__placeholder span{display:block}.portrait__placeholder svg{width:45%}}.cta{gap:var(--space-5);max-width:44rem;display:grid}.cta__text{font-size:var(--text-lg);color:var(--on-surface-muted)}.portrait--large{width:100%;max-width:17rem;margin:0 .75rem .75rem 0}.portrait--large:before{border-radius:var(--radius-lg);transform:translate(.75rem,.75rem)}.portrait--large .portrait__frame{aspect-ratio:4/5;border-radius:var(--radius-lg)}.portrait--large .portrait__placeholder span{display:block}.portrait--large .portrait__placeholder svg{width:45%}@media (width>=64em){.portrait--large{max-width:26rem;margin:0 1rem 1rem auto}.portrait--large:before{transform:translate(1rem,1rem)}}.tabs__panel>.detail-list{width:100%}.detail-list dt{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.detail-list dd{margin:var(--space-1) 0 0;color:var(--on-surface)}.detail-list dd p{margin-top:var(--space-1);color:var(--on-surface-muted)}.detail-list__link{font-weight:var(--weight-semibold);color:inherit}.eyebrow{color:var(--accent-text);font-size:.75rem;font-weight:var(--weight-semibold);letter-spacing:.12em;text-transform:uppercase}.page-header{--section-space:clamp(2.5rem, 1.5rem + 5vw, 5rem)}.page-header__inner{justify-items:start;gap:var(--space-4);max-width:46rem;display:grid}.page-header__inner .eyebrow{margin-bottom:-.25rem}.page-header h1{letter-spacing:-.03em;font-size:clamp(2.125rem,1.3rem + 3.6vw,3.75rem);line-height:1.08}.page-header__text{max-width:38rem;font-size:var(--text-lg);color:var(--on-surface-muted)}.tag-list{gap:var(--space-2);flex-wrap:wrap;list-style:none;display:flex}.tag-list li{border:1px solid var(--border);border-radius:var(--radius-pill);font-size:var(--text-xs);font-weight:var(--weight-medium);color:var(--on-surface-muted);padding:.2rem .7rem}.bullet-list{gap:var(--space-2);list-style:none;display:grid}.bullet-list li{padding-left:var(--space-4);position:relative}.bullet-list li:before{content:"";background:var(--accent-text);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.65em;left:0}.btn[disabled]{opacity:.65;cursor:not-allowed}.site-header{z-index:var(--z-header);background:var(--color-dark);color:var(--on-surface);border-bottom:1px solid var(--border);position:sticky;top:0}.site-header__inner{height:var(--header-height);justify-content:space-between;align-items:center;display:flex}.brand{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);color:var(--on-surface);text-decoration:none}.nav-toggle{border:1px solid var(--border);border-radius:var(--radius-md);width:2.75rem;height:2.75rem;color:var(--on-surface);background:0 0;justify-content:center;align-items:center;padding:0;display:inline-flex}.site-nav{top:var(--header-height);padding:var(--space-5) var(--gutter) var(--space-7);background:var(--color-dark);opacity:0;visibility:hidden;transition:opacity var(--duration) var(--ease), transform var(--duration) var(--ease), visibility 0s linear var(--duration);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0;overflow-y:auto;transform:translateY(-.5rem)}.site-nav.is-open{opacity:1;visibility:visible;transition-delay:0s;transform:none}.site-nav__list{flex-direction:column;list-style:none;display:flex}.site-nav__link{padding:var(--space-4) 0;border-bottom:1px solid var(--border);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-semibold);color:var(--on-surface-muted);text-decoration:none;display:block}.site-nav__link:hover{color:var(--on-surface)}.site-nav__link[aria-current=page]{color:var(--color-mint)}.site-nav__cta{margin-top:var(--space-6)}@media (width>=64em){.nav-toggle{display:none}.site-nav{align-items:center;gap:var(--space-6);opacity:1;visibility:visible;background:0 0;flex-direction:row;padding:0;transition:none;position:static;overflow:visible;transform:none}.site-nav__list{gap:var(--space-5);flex-direction:row}.site-nav__link{padding:var(--space-2) 0;font-family:var(--font-body);font-size:var(--text-sm);font-weight:var(--weight-medium);border-bottom:2px solid #0000}.site-nav__link[aria-current=page]{border-bottom-color:var(--color-mint);color:var(--on-surface)}.site-nav__cta{min-height:2.75rem;font-size:var(--text-sm);margin-top:0;padding:.5rem 1.25rem}}.site-footer{padding-block:var(--space-8) var(--space-6);background:var(--color-dark);color:var(--on-surface)}.site-footer__grid{gap:var(--space-7);display:grid}@media (width>=48em){.site-footer__grid{grid-template-columns:1fr 1fr}}@media (width>=64em){.site-footer__grid{gap:var(--space-9);grid-template-columns:1.5fr 1fr 1fr}}.site-footer__brand{font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-bold)}.site-footer__muted{color:var(--on-surface-muted);font-size:var(--text-sm)}.footer-heading{margin-bottom:var(--space-4);font-size:var(--text-base);color:var(--on-surface-muted)}.footer-list{gap:var(--space-3);list-style:none;display:grid}.footer-link{color:var(--on-surface);text-decoration:none}.footer-link:hover{color:var(--color-mint);text-decoration:underline}.site-footer__bottom{margin-top:var(--space-8);padding-top:var(--space-5);border-top:1px solid var(--border);font-size:var(--text-sm);color:var(--on-surface-muted)}.whatsapp-fab{right:var(--space-4);bottom:var(--space-4);z-index:var(--z-floating);justify-content:center;align-items:center;gap:var(--space-2);border:2px solid var(--color-dark);border-radius:var(--radius-pill);background:var(--color-mint);width:3.5rem;height:3.5rem;box-shadow:var(--shadow-md);color:var(--color-dark);font-weight:var(--weight-semibold);text-decoration:none;display:inline-flex;position:fixed}.whatsapp-fab:hover{background:#a0e4d1}.whatsapp-fab__label{display:none}@media (width>=40em){.whatsapp-fab{right:var(--space-5);bottom:var(--space-5);width:auto;padding-inline:var(--space-5)}.whatsapp-fab__label{display:inline}}.project-card{gap:var(--space-4);color:inherit;flex-direction:column;text-decoration:none;display:flex}.project-cover{aspect-ratio:16/10;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--cover,var(--color-dark));color:var(--color-white);font-family:var(--font-heading);font-size:var(--text-xl);font-weight:var(--weight-bold);letter-spacing:var(--tracking-tight);align-items:flex-end;line-height:1.15;display:flex}.project-card__image{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-lg);width:100%;height:auto;display:block}.project-card__meta{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.project-card__summary{color:var(--on-surface-muted)}.project-card:hover .project-card__title{text-underline-offset:.2em;text-decoration:underline}@media (width>=64em){.project-card--lead{align-items:center;gap:var(--space-7);grid-template-columns:1.4fr 1fr;display:grid}.project-card--lead .project-cover,.project-card--lead .project-card__title{font-size:var(--text-2xl)}}.filter-bar{gap:var(--space-2);flex-wrap:wrap;display:flex}.filter-btn{min-height:2.5rem;padding:0 var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--on-surface);transition:background-color var(--duration-fast) var(--ease), color var(--duration-fast) var(--ease), border-color var(--duration-fast) var(--ease);background:0 0}.filter-btn:hover{border-color:var(--on-surface)}.filter-btn[aria-pressed=true]{background:var(--color-dark);border-color:var(--color-dark);color:var(--color-white)}.portfolio-card{gap:var(--space-4);flex-direction:column;display:flex;position:relative}.portfolio-card__image{aspect-ratio:16/10;object-fit:cover;border-radius:var(--radius-lg);width:100%}.portfolio-card__title{font-size:var(--text-xl)}.portfolio-card__title a{color:inherit;text-decoration:none}.portfolio-card__title a:after{content:"";position:absolute;inset:0}.portfolio-card__title a:focus-visible{outline:none}.portfolio-card__title a:focus-visible:after{outline:3px solid var(--color-mint-strong);outline-offset:6px;border-radius:var(--radius-lg)}.portfolio-card:hover .portfolio-card__title a{text-underline-offset:.2em;text-decoration:underline}.portfolio-card__role{gap:var(--space-2);font-size:var(--text-sm);flex-wrap:wrap;margin:0;display:flex}.portfolio-card__role dt{font-weight:var(--weight-semibold)}.portfolio-card__role dd{color:var(--on-surface-muted);margin:0}.portfolio-card__links{--cluster-gap:var(--space-5);margin-top:var(--space-1)}.portfolio-card__more{font-weight:var(--weight-semibold);color:var(--accent-text)}.portfolio-card__live{z-index:1;position:relative}.gallery{gap:var(--space-5);grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none;display:grid}.gallery>li{min-width:0}.gallery__item{gap:var(--space-3);margin:0;display:grid}.gallery__item img{aspect-ratio:3/2;object-fit:cover;background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);width:100%;display:block}.gallery__placeholder{aspect-ratio:3/2;padding:var(--space-4);background:color-mix(in srgb, var(--cover,var(--color-dark)) 10%, var(--surface-raised));border:1px dashed var(--border);border-radius:var(--radius-lg);color:var(--on-surface-muted);font-size:var(--text-sm);text-align:center;place-items:center;display:grid;overflow:hidden}.gallery__item figcaption{font-size:var(--text-sm);color:var(--on-surface-muted);line-height:1.6}@media (width>=48em){.gallery{gap:var(--space-6);grid-template-columns:repeat(2,minmax(0,1fr))}}.portfolio-card,.project-card{min-width:0}.portfolio-card__image{background:var(--surface-raised);display:block}.filter-btn:focus-visible,.portfolio-card__title a:focus-visible,.project-card:focus-visible{outline:3px solid var(--color-mint-strong);outline-offset:4px}.filter-btn{cursor:pointer}@media (prefers-reduced-motion:reduce){.filter-btn{transition:none}}.contact-form,.form-row{gap:var(--space-5);display:grid}@media (width>=40em){.form-row{grid-template-columns:repeat(2,minmax(0,1fr))}}.field{--input-border:#8a93a1;gap:var(--space-2);display:grid}.field label{font-size:var(--text-sm);font-weight:var(--weight-semibold)}.field__optional{font-weight:var(--weight-regular);color:var(--on-surface-muted)}.field input,.field select,.field textarea{background:var(--color-white);border:1px solid var(--input-border);border-radius:var(--radius-md);width:100%;min-height:3rem;color:var(--color-text);padding:.7rem 1rem}.field textarea{resize:vertical;min-height:9rem}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--color-dark)}.field [aria-invalid=true]{border-color:var(--color-error)}.field__error{font-size:var(--text-sm);font-weight:var(--weight-medium);color:var(--color-error)}.field--hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-alert{gap:var(--space-2);padding:var(--space-4) var(--space-5);border:1px solid var(--color-error);border-radius:var(--radius-md);background:#fbeceb;display:grid}.form-success{gap:var(--space-4);padding:var(--space-6);background:var(--color-mint-soft);border:1px solid var(--color-mint-strong);border-radius:var(--radius-lg);display:grid}.field input,.field select,.field textarea{font:inherit;line-height:1.5}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:3px solid var(--color-mint-strong);outline-offset:2px;border-color:var(--color-dark)}.contact-form button[type=submit]:disabled{cursor:wait;opacity:.7}.form-success:focus{outline:3px solid var(--color-mint-strong);outline-offset:4px}.about-hero{--section-space:clamp(2.5rem, 1.5rem + 5vw, 6rem)}.about-hero__grid{justify-items:start;row-gap:var(--space-5);grid-template-columns:minmax(0,1fr);grid-template-areas:"eyebrow""title""intro""media""actions";display:grid}.about-hero__text{display:contents}.about-hero__eyebrow{grid-area:eyebrow;margin-bottom:-.75rem}.about-hero__media{width:100%;margin-block:var(--space-2);grid-area:media}.about-hero__actions{grid-area:actions}.about-hero h1{letter-spacing:-.03em;grid-area:title;font-size:clamp(2.125rem,1.3rem + 3.6vw,3.75rem);line-height:1.08}.about-hero__intro{gap:var(--space-4);max-width:38rem;color:var(--on-surface-muted);grid-area:intro;display:grid}@media (width>=40em){.about-hero__intro{font-size:var(--text-lg)}}@media (width>=64em){.about-hero__grid{grid-template-rows:repeat(3,auto) 1fr;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);grid-template-areas:"eyebrow media""title media""intro media""actions media";column-gap:clamp(3rem,6vw,6rem)}.about-hero__media{place-self:center end;margin-block:0}}.about-tabs{gap:var(--space-7);display:grid}.about-tabs__intro{font-size:var(--text-lg);color:var(--on-surface-muted)}@media (width>=64em){.about-tabs{grid-template-columns:minmax(0,1fr) minmax(0,1.5fr);align-items:start;gap:clamp(3rem,6vw,6rem)}}.about-hero__intro p{margin:0;line-height:1.75}.about-hero__actions{align-items:center;gap:var(--space-3);flex-wrap:wrap}.about-tabs__intro{max-width:34rem;line-height:1.7}.detail-list{gap:var(--space-5);margin:0;display:grid}.detail-list>div{padding-bottom:var(--space-5);border-bottom:1px solid var(--border)}.detail-list>div:last-child{border-bottom:0;padding-bottom:0}.detail-list dt{margin-bottom:var(--space-2);font-weight:var(--weight-semibold)}.detail-list dd{color:var(--on-surface-muted);margin:0;line-height:1.7}.detail-list dd p{margin-top:var(--space-2)}.detail-list__link{color:var(--accent-text);font-weight:var(--weight-semibold);text-underline-offset:.2em}.detail-list__link:focus-visible{outline:3px solid var(--color-mint-strong);outline-offset:4px;border-radius:2px}@media (width<=39.99em){.about-hero__actions{width:100%}}.back-link{align-items:center;gap:var(--space-2);font-size:var(--text-sm);color:var(--on-surface-muted);text-decoration:none;transition:color .18s;display:inline-flex}.back-link:hover{color:var(--on-surface)}.project-hero__image{aspect-ratio:16/9;object-fit:cover;border-radius:var(--radius-lg);background:var(--surface-raised);width:100%;display:block}.project-hero__placeholder{aspect-ratio:16/9;place-items:center;font-size:clamp(1.5rem,1rem + 2.5vw,2.75rem);display:grid}.project-body{gap:var(--space-7);margin-top:var(--space-7);grid-template-columns:minmax(0,1fr);display:grid}.project-facts{min-width:0}.project-facts dl{gap:var(--space-5);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);margin:0;display:grid}.project-facts dt{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.project-facts dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere}.project-facts__links{gap:var(--space-2);justify-items:start;display:grid}.project-description{align-content:start;gap:var(--space-4);min-width:0;max-width:44rem;display:grid}.project-description h2{font-size:var(--text-2xl);line-height:1.2}.project-description p{font-size:var(--text-lg);line-height:1.75}@media (width>=64em){.project-body{grid-template-columns:minmax(0,1fr) minmax(16rem,20rem);align-items:start;gap:clamp(3rem,6vw,5rem)}.project-description{grid-area:1/1}.project-facts{top:calc(var(--header-height) + var(--space-5));grid-area:1/2;position:sticky}}@media (prefers-reduced-motion:reduce){.back-link{transition:none}}.service-detail{gap:var(--space-6);display:grid}.service-detail__intro{align-content:start;gap:var(--space-4);display:grid}.service-detail__market{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.service-detail__text{font-size:var(--text-lg);color:var(--on-surface-muted)}.service-detail__note{font-size:var(--text-sm);color:var(--on-surface-muted)}.service-detail__panel{align-content:start;gap:var(--space-4);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);display:grid}.service-detail__panel h3{font-size:var(--text-lg)}.service-detail__price{padding-top:var(--space-4);border-top:1px solid var(--border);font-weight:var(--weight-semibold)}.service-detail__price span{font-size:var(--text-sm);font-weight:var(--weight-regular);color:var(--on-surface-muted);display:block}@media (width>=64em){.service-detail{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:start;gap:clamp(3rem,6vw,6rem)}}.process{gap:var(--space-5);counter-reset:step;list-style:none;display:grid}.process li{gap:var(--space-1);counter-increment:step;padding-left:3rem;display:grid;position:relative}.process li:before{content:counter(step);background:var(--on-surface);width:2rem;height:2rem;font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--surface);border-radius:50%;place-items:center;display:grid;position:absolute;top:0;left:0}.process h3{font-size:var(--text-lg)}.process p{color:var(--on-surface-muted)}@media (width>=64em){.process{gap:var(--space-6);grid-template-columns:repeat(4,minmax(0,1fr))}.process li{padding-top:3rem;padding-left:0}}.contact-layout{gap:var(--space-7);display:grid}.contact-main{align-content:start;gap:var(--space-4);display:grid}.contact-main__intro{margin-bottom:var(--space-2);color:var(--on-surface-muted)}.contact-details{align-content:start;gap:var(--space-5);padding:var(--space-5);background:var(--surface-raised);border:1px solid var(--border);border-radius:var(--radius-lg);display:grid}.contact-details h2{font-size:var(--text-xl)}.contact-list{gap:var(--space-4);list-style:none;display:grid}.contact-list li{gap:var(--space-1);display:grid}.contact-list__label{font-size:var(--text-sm);font-weight:var(--weight-semibold);color:var(--accent-text)}.contact-list a{overflow-wrap:anywhere}@media (width>=64em){.contact-layout{grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:start;gap:clamp(3rem,6vw,5rem)}.contact-details{top:calc(var(--header-height) + var(--space-5));position:sticky}}.contact-main{min-width:0}.contact-main__intro{max-width:42rem;line-height:1.7}.contact-details{min-width:0}.contact-list li{padding-bottom:var(--space-3);border-bottom:1px solid var(--border)}.contact-list li:last-child{border-bottom:0;padding-bottom:0}.contact-list a{text-underline-offset:.2em;width:fit-content}.contact-list a:focus-visible{outline:3px solid var(--color-mint-strong);outline-offset:3px}
