@import "https://fonts.googleapis.com/css2?family=Crimson+Pro:ital,wght@0,200..900;1,200..900&display=swap";*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-text:#cda480;--color-accent:#fe3730;--color-sage:#9da897;--color-bg:#181616;--color-fg:#a12b26;--color-cream:#faf3e8;--color-white:#f5f0eb;--font-primary:"Crimson Pro", serif;--fs-hero:clamp(3rem, 8vw, 7rem);--fs-section-title:clamp(2rem, 5vw, 4.5rem);--fs-subtitle:clamp(1.2rem, 2.5vw, 1.8rem);--fs-body:clamp(1rem, 1.5vw, 1.15rem);--fs-small:clamp(.85rem, 1vw, .95rem);--fs-skill:clamp(2.5rem, 7vw, 5.5rem);--transition-base:.3s ease;--transition-slow:.6s ease}html{scroll-behavior:smooth;font-size:16px}body{font-family:var(--font-primary);background-color:var(--color-bg);color:var(--color-text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}img{max-width:100%;display:block}ul,ol{list-style:none}::selection{background:var(--color-fg);color:var(--color-cream)}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--color-bg)}::-webkit-scrollbar-thumb{background:var(--color-fg);border-radius:4px}.reveal{opacity:0;transition:opacity .8s,transform .8s;transform:translateY(30px)}.reveal.visible{opacity:1;transform:translateY(0)}.btn{font-family:var(--font-primary);font-size:var(--fs-small);letter-spacing:.05em;text-transform:uppercase;transition:all var(--transition-base);cursor:pointer;text-align:center;border-radius:4px;padding:.75rem 2rem;font-weight:600;display:inline-block}.btn--primary{background:var(--color-fg);color:var(--color-cream);border:1px solid var(--color-fg)}.btn--primary:hover{background:var(--color-accent);border-color:var(--color-accent);transform:translateY(-2px)}.btn--outline{color:var(--color-cream);border:1px solid var(--color-text);background:0 0}.btn--outline:hover{border-color:var(--color-accent);color:var(--color-accent);transform:translateY(-2px)}.navbar{z-index:1000;width:100%;transition:all var(--transition-base);padding:1.25rem 0;position:fixed;top:0;left:0}.navbar--scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#181616f2;border-bottom:1px solid #cda4801a;padding:.75rem 0}.navbar__inner{justify-content:space-between;align-items:center;max-width:1400px;margin:0 auto;padding:0 2rem;display:flex}.navbar__logo{color:var(--color-white);letter-spacing:.02em;font-size:1.1rem;font-weight:700}.navbar__links{gap:2.5rem;display:flex}.navbar__link{font-size:var(--fs-small);color:var(--color-text);letter-spacing:.03em;transition:color var(--transition-base);position:relative}.navbar__link:after{content:"";background:var(--color-accent);width:0;height:1px;transition:width var(--transition-base);position:absolute;bottom:-4px;left:0}.navbar__link:hover{color:var(--color-white)}.navbar__link:hover:after{width:100%}.navbar__cta{padding:.5rem 1.5rem;font-size:.8rem}.navbar__hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;gap:5px;padding:4px;display:none}.navbar__hamburger span{background:var(--color-text);width:24px;height:2px;transition:all var(--transition-base);display:block}.navbar__hamburger--open span:first-child{transform:rotate(45deg)translateY(5px)translate(5px)}.navbar__hamburger--open span:nth-child(2){opacity:0}.navbar__hamburger--open span:nth-child(3){transform:rotate(-45deg)translateY(-5px)translate(5px)}@media (width<=768px){.navbar__links{background:var(--color-bg);width:100%;height:100vh;transition:transform var(--transition-slow);flex-direction:column;justify-content:center;align-items:center;gap:2rem;position:fixed;top:0;left:0;transform:translate(-100%)}.navbar__links--open{transform:translate(0)}.navbar__link{font-size:1.5rem}.navbar__cta{display:none}.navbar__hamburger{z-index:1001;display:flex}}.decorative-arcs{pointer-events:none;z-index:0;width:100%;height:400px;position:absolute;bottom:0;left:0;overflow:hidden}.decorative-arcs svg{width:100%;height:100%}.decorative-arcs--top{top:0;bottom:auto;transform:rotate(180deg)}.decorative-arcs--dense svg ellipse{stroke-width:.5px}.hero{align-items:center;min-height:100vh;padding:8rem 2rem 4rem;display:flex;position:relative;overflow:hidden}.hero__grid-overlay{z-index:0;background-image:linear-gradient(#cda48008 1px,#0000 1px),linear-gradient(90deg,#cda48008 1px,#0000 1px);background-size:60px 60px;position:absolute;inset:0}.hero__content{z-index:2;width:100%;max-width:1400px;margin:0 auto;position:relative}.hero__eyebrow{font-size:var(--fs-small);color:var(--color-sage);letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.5rem}.hero__title{font-size:var(--fs-hero);color:var(--color-white);max-width:800px;margin-bottom:2rem;font-weight:800;line-height:1.05}.hero__title em{color:var(--color-text);font-style:italic}.hero__description{font-size:var(--fs-subtitle);color:var(--color-text);margin-bottom:2.5rem;font-weight:300;line-height:1.5}.hero__description em{font-style:italic}.hero__actions{align-items:center;gap:2rem;display:flex}.hero__tagline{font-size:var(--fs-small);color:var(--color-sage);font-style:italic}.hero__previews{z-index:1;flex-direction:column;gap:1rem;display:flex;position:absolute;top:50%;right:5%;transform:translateY(-50%)}.hero__preview-card{width:200px;transition:transform var(--transition-base);background:#181616cc;border:1px solid #cda48026;border-radius:8px;padding:.75rem}.hero__preview-card:hover{transform:scale(1.03)}.hero__preview-card--1{transform:rotate(-2deg)}.hero__preview-card--2{transform:translate(-30px)rotate(1deg)}.hero__preview-card--3{transform:rotate(-1deg)}.hero__preview-placeholder{background:linear-gradient(135deg,#cda4801a,#cda4800d);border-radius:4px;width:100%;height:120px;margin-bottom:.5rem}.hero__preview-placeholder--accent{background:linear-gradient(135deg,#a12b264d,#fe373026)}.hero__preview-card span{color:var(--color-sage);font-size:.8rem}@media (width<=1024px){.hero__previews{display:none}}@media (width<=768px){.hero{padding:7rem 1.5rem 3rem}.hero__actions{flex-direction:column;align-items:flex-start;gap:1rem}}.section-title{margin-bottom:3rem}.section-title--center{text-align:center}.section-title--left{text-align:left}.section-title__subtitle{font-size:var(--fs-small);color:var(--color-sage);letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;display:block}.section-title__heading{font-size:var(--fs-section-title);color:var(--color-white);font-weight:700;line-height:1.15}.about{text-align:center;max-width:900px;margin:0 auto;padding:8rem 2rem;position:relative}.about__icon{opacity:.7;margin-bottom:2rem}.about__body{max-width:700px;margin:0 auto}.about__text{font-size:var(--fs-subtitle);color:var(--color-text);margin-bottom:2.5rem;font-weight:300;line-height:1.7}.project-card{transition:transform var(--transition-base);text-decoration:none;display:block}.project-card:hover{transform:translateY(-5px)}.project-card__thumbnail{aspect-ratio:4/3;border-radius:6px;width:100%;margin-bottom:1rem;position:relative;overflow:hidden}.project-card__overlay{opacity:0;transition:opacity var(--transition-base);background:#181616b3;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.project-card:hover .project-card__overlay{opacity:1}.project-card__view{color:var(--color-cream);font-size:var(--fs-small);letter-spacing:.05em;text-transform:uppercase}.project-card__title{color:var(--color-white);margin-bottom:.25rem;font-size:1.1rem;font-weight:600}.project-card__meta{font-size:var(--fs-small);color:var(--color-sage)}.projects{max-width:1400px;margin:0 auto;padding:8rem 2rem}.projects__grid{grid-template-columns:repeat(3,1fr);gap:2.5rem;margin-bottom:3rem;display:grid}.projects__cta{text-align:center;margin-top:2rem}@media (width<=1024px){.projects__grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.projects__grid{grid-template-columns:1fr}}.skills{text-align:center;max-width:1200px;margin:0 auto;padding:8rem 2rem}.skills__intro{font-size:var(--fs-section-title);color:var(--color-white);margin-bottom:3rem;font-weight:700;line-height:1.15}.skills__list{margin-bottom:3rem}.skills__item{font-size:var(--fs-skill);color:var(--color-accent);letter-spacing:.02em;cursor:default;opacity:0;transition:color var(--transition-base);margin-bottom:.5rem;font-weight:900;line-height:1.1;transform:translateY(20px)}.skills__list.visible .skills__item{animation:.6s forwards skillReveal}@keyframes skillReveal{to{opacity:1;transform:translateY(0)}}.skills__item:hover{color:var(--color-fg);transform:translate(10px)}.skills__tools{flex-wrap:wrap;justify-content:center;gap:.75rem;margin-bottom:3rem;display:flex}.skills__tool{font-size:var(--fs-small);color:var(--color-sage);transition:all var(--transition-base);border:1px solid #9da8974d;border-radius:20px;padding:.4rem 1rem}.skills__tool:hover{color:var(--color-white);border-color:var(--color-text)}.skills__cta{margin-top:2rem}.highlights{padding:8rem 2rem;position:relative;overflow:hidden}.highlights__header{text-align:center;margin-bottom:4rem}.highlights__title{font-size:var(--fs-section-title);color:var(--color-white);font-weight:800;line-height:1.15}.highlights__title em{color:var(--color-text);font-style:italic}.highlights__grid{z-index:1;grid-template-columns:repeat(3,1fr);gap:2rem;max-width:1200px;margin:0 auto;display:grid;position:relative}.highlights__card{text-align:center;transition:all var(--transition-base);border:1px solid #cda4801a;border-radius:6px;padding:2rem 1.5rem;text-decoration:none;display:block}.highlights__card:hover{border-color:var(--color-fg);transform:translateY(-4px)}.highlights__card-name{color:var(--color-white);margin-bottom:.75rem;font-size:1.1rem;font-weight:700}.highlights__card-desc{font-size:var(--fs-small);color:var(--color-text);margin-bottom:1rem;line-height:1.6}.highlights__card-link{font-size:var(--fs-small);color:var(--color-sage);text-decoration:underline}@media (width<=768px){.highlights__grid{grid-template-columns:1fr}}.clients{max-width:1200px;margin:0 auto;padding:6rem 2rem}.clients__grid{grid-template-columns:repeat(4,1fr);gap:1.5rem 2rem;display:grid}.clients__name{font-size:var(--fs-small);color:var(--color-sage);text-align:center;transition:all var(--transition-base);border:1px solid #cda48014;border-radius:4px;padding:.75rem}.clients__name:hover{color:var(--color-white);border-color:#cda48033}@media (width<=768px){.clients__grid{grid-template-columns:repeat(2,1fr)}}.testimonial-card{min-width:280px;max-width:360px;transition:transform var(--transition-base);border-radius:8px;padding:2rem 2rem 1.5rem;position:relative}.testimonial-card:hover{transform:scale(1.03)}.testimonial-card--cream{background:var(--color-cream);color:var(--color-bg)}.testimonial-card--red{background:var(--color-fg);color:var(--color-cream)}.testimonial-card__quote-mark{opacity:.3;font-size:3rem;font-weight:900;line-height:1;position:absolute;top:-.5rem;left:1rem}.testimonial-card--cream .testimonial-card__quote-mark{color:var(--color-fg)}.testimonial-card--red .testimonial-card__quote-mark{color:var(--color-cream)}.testimonial-card__quote-mark--end{inset:auto 1rem .5rem auto}.testimonial-card__text{margin-bottom:1.25rem;font-size:.95rem;line-height:1.6}.testimonial-card__author{flex-direction:column;gap:.15rem;display:flex}.testimonial-card__author strong{font-size:.85rem;font-weight:700}.testimonial-card__author span{opacity:.7;font-size:.75rem}.testimonials{max-width:1400px;margin:0 auto;padding:8rem 2rem;overflow:hidden}.testimonials .section-title__heading em{color:var(--color-text);font-style:italic}.testimonials__scatter{min-height:700px;margin-top:3rem;position:relative}.testimonials__scatter .testimonial-card{top:var(--pos-top);left:var(--pos-left);transform:rotate(var(--rotate));position:absolute}@media (width<=1024px){.testimonials__scatter{flex-direction:column;align-items:center;gap:1.5rem;min-height:auto;display:flex;position:static}.testimonials__scatter .testimonial-card{width:100%;max-width:500px;position:static;transform:none}}.contact{max-width:1400px;margin:0 auto;padding:8rem 2rem}.contact__heading{font-size:var(--fs-section-title);color:var(--color-white);text-align:center;margin-bottom:4rem;font-weight:800;line-height:1.1}.contact__content{grid-template-columns:150px 1fr 250px;align-items:start;gap:3rem;display:grid}.contact__nav{flex-direction:column;gap:.5rem;display:flex}.contact__nav-link{font-size:var(--fs-small);color:var(--color-sage);transition:color var(--transition-base)}.contact__nav-link:hover{color:var(--color-white)}.contact__form{flex-direction:column;gap:1.5rem;display:flex}.contact__form input,.contact__form textarea{font-family:var(--font-primary);font-size:var(--fs-body);color:var(--color-text);transition:border-color var(--transition-base);background:0 0;border:none;border-bottom:1px solid #cda48033;outline:none;padding:.75rem 0}.contact__form input:focus,.contact__form textarea:focus{border-color:var(--color-accent)}.contact__form input::placeholder,.contact__form textarea::placeholder{color:#cda48066}.contact__form textarea{resize:vertical;border:1px solid #cda48033;border-radius:4px;min-height:120px;padding:.75rem}.contact__info{flex-direction:column;gap:1.5rem;display:flex}.contact__detail a,.contact__detail span{font-size:var(--fs-small);color:var(--color-text);transition:color var(--transition-base)}.contact__detail a:hover{color:var(--color-accent)}.contact__socials{flex-direction:column;gap:.4rem;display:flex}.contact__social-link{font-size:var(--fs-small);color:var(--color-sage);transition:color var(--transition-base)}.contact__social-link:hover{color:var(--color-white)}@media (width<=1024px){.contact__content{grid-template-columns:1fr}.contact__sidebar{display:none}.contact__info{flex-flow:wrap;gap:2rem}.contact__socials{flex-direction:row;gap:1rem}}.footer{padding:6rem 2rem 2rem;position:relative;overflow:hidden}.footer__mission{text-align:center;z-index:1;max-width:700px;margin:0 auto 6rem;position:relative}.footer__tagline{font-size:var(--fs-subtitle);color:var(--color-white);margin-bottom:2rem;font-weight:400;line-height:1.5}.footer__cta{background:var(--color-fg);color:var(--color-cream);font-size:var(--fs-small);letter-spacing:.05em;text-transform:uppercase;transition:background var(--transition-base);border-radius:4px;padding:.75rem 2rem;font-weight:600;display:inline-block}.footer__cta:hover{background:var(--color-accent)}.footer__bottom{z-index:1;border-top:1px solid #cda4801a;justify-content:space-between;align-items:flex-end;max-width:1400px;margin:0 auto;padding:2rem 0;display:flex;position:relative}.footer__logo{color:var(--color-accent);font-size:clamp(2.5rem,6vw,5rem);font-weight:900;line-height:1}.footer__meta{text-align:right;flex-direction:column;gap:1rem;display:flex}.footer__tagline-small{font-size:var(--fs-small);color:var(--color-text);font-style:italic}.footer__socials{gap:1.5rem;display:flex}.footer__socials a{font-size:var(--fs-small);color:var(--color-sage);transition:color var(--transition-base)}.footer__socials a:hover{color:var(--color-white)}.footer__copyright{text-align:center;z-index:1;padding:2rem 0 0;position:relative}.footer__copyright p{color:var(--color-sage);opacity:.6;font-size:.75rem}@media (width<=768px){.footer__bottom{text-align:center;flex-direction:column;align-items:center;gap:2rem}.footer__meta{text-align:center}}.project-detail{max-width:900px;margin:0 auto;padding:8rem 2rem 4rem}.project-detail--notfound{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:1rem;min-height:60vh;display:flex}.project-detail__back{font-size:var(--fs-small);color:var(--color-sage);transition:color var(--transition-base);margin-bottom:2rem;display:inline-block}.project-detail__back:hover{color:var(--color-white)}.project-detail__meta{gap:1rem;margin-bottom:1rem;display:flex}.project-detail__category{font-size:var(--fs-small);color:var(--color-accent);text-transform:uppercase;letter-spacing:.08em}.project-detail__date{font-size:var(--fs-small);color:var(--color-sage)}.project-detail__title{color:var(--color-white);margin-bottom:.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:800;line-height:1.1}.project-detail__location{font-size:var(--fs-small);color:var(--color-sage);margin-bottom:3rem;font-style:italic}.project-detail__hero-image{margin-bottom:3rem}.project-detail__image-placeholder{aspect-ratio:16/9;background:linear-gradient(135deg,#2a1f1f,#1a1a2e);border-radius:8px;width:100%}.project-detail__description{font-size:var(--fs-subtitle);color:var(--color-text);margin-bottom:2rem;font-weight:300;line-height:1.7}.project-detail__tags{flex-wrap:wrap;gap:.75rem;margin-bottom:3rem;display:flex}.project-detail__tag{color:var(--color-sage);border:1px solid #9da8974d;border-radius:20px;padding:.3rem .8rem;font-size:.8rem}.project-detail__actions{gap:1rem;display:flex}.app{min-height:100vh}
