:root{--ivory:#f8f7f2;--ivory-deep:#efece3;--night:#172b46;--night-deep:#0f1c2e;--orange:#e48a05;--orange-deep:#c47404;--green:#286b5b;--graphite:#282d33;--muted:#5c636b;--line:color-mix(in srgb, var(--night) 10%, transparent);--line-strong:color-mix(in srgb, var(--night) 18%, transparent);--paper:color-mix(in srgb, var(--ivory) 82%, white);--max:1180px;--font-display:"Fraunces", Georgia, "Times New Roman", serif;--font-body:"DM Sans", system-ui, -apple-system, sans-serif;--ease:cubic-bezier(.22, 1, .36, 1);color:var(--graphite);background:var(--ivory);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;color:var(--graphite);background:radial-gradient(ellipse 80% 50% at 100% -10%, color-mix(in srgb, var(--orange) 10%, transparent), transparent 55%), radial-gradient(ellipse 60% 40% at -10% 20%, color-mix(in srgb, var(--green) 8%, transparent), transparent 50%), linear-gradient(180deg, var(--ivory), var(--paper) 40%, var(--ivory));background-attachment:fixed;margin:0;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}button,input,textarea,select{font:inherit}h1,h2,h3,h4{font-family:var(--font-display);color:var(--night);letter-spacing:-.03em;margin:0;font-weight:600;line-height:1.08}p{margin:0}ul,ol{margin:0;padding:0;list-style:none}#root{min-height:100vh}.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.site-shell{flex-direction:column;min-height:100vh;display:flex}.site-main{flex:1}.container{width:min(100% - 2rem, var(--max));margin-inline:auto}.container--narrow{width:min(100% - 2rem,720px)}.section{padding:clamp(4.5rem,9vw,7.5rem) 0;position:relative}.section--tight{padding:clamp(3rem,6vw,4.5rem) 0}.section--night{background:radial-gradient(circle at 85% 15%, color-mix(in srgb, var(--orange) 18%, transparent), transparent 35%), linear-gradient(160deg, var(--night-deep), var(--night) 55%, #1d3554);color:color-mix(in srgb, var(--ivory) 88%, white)}.section--night h2,.section--night h3{color:var(--ivory)}.section--band{background:color-mix(in srgb, var(--ivory-deep) 70%, white);border-block:1px solid var(--line)}.eyebrow{color:var(--green);letter-spacing:.14em;text-transform:uppercase;margin-bottom:1rem;padding-left:1.1rem;font-size:.78rem;font-weight:700;display:inline-block;position:relative}.eyebrow:before{content:"";background:var(--orange);opacity:.85;width:.55rem;height:.55rem;transition:transform .45s var(--ease);border-radius:999px;position:absolute;top:50%;left:0;transform:translateY(-50%)scale(.6)}.reveal.is-visible .eyebrow:before,.hero .eyebrow:before{transform:translateY(-50%)scale(1)}.section--night .eyebrow{color:color-mix(in srgb, var(--orange) 80%, white)}.section-heading{gap:1rem;max-width:38rem;margin-bottom:clamp(2.25rem,5vw,3.5rem);display:grid}.section-heading h2{font-size:clamp(2.1rem,4.4vw,3.35rem)}.section-heading p,.lede{color:var(--muted);max-width:36rem;font-size:1.06rem}.btn{cursor:pointer;min-height:3.1rem;transition:background .25s var(--ease), color .25s var(--ease), border-color .25s var(--ease), transform .25s var(--ease), box-shadow .25s var(--ease);border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;gap:.55rem;padding:.85rem 1.35rem;font-size:.95rem;font-weight:600;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-2px)}.btn:focus-visible,.nav-link:focus-visible,.logo:focus-visible,.faq-trigger:focus-visible,.site-link:focus-visible,.text-link:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.btn-primary{background:var(--orange);color:#fff;box-shadow:0 12px 30px color-mix(in srgb, var(--orange) 28%, transparent)}.btn-primary:hover{background:var(--orange-deep);box-shadow:0 16px 34px color-mix(in srgb, var(--orange) 36%, transparent)}.btn-pulse{animation:pulse-glow 2.8s var(--ease) 1.2s 2}.btn-secondary{color:var(--night);border-color:var(--line-strong);background:0 0}.btn-secondary:hover{border-color:var(--night);background:color-mix(in srgb, var(--night) 4%, transparent)}.btn-ghost{color:var(--ivory);border-color:color-mix(in srgb, var(--ivory) 28%, transparent);background:0 0}.btn-ghost:hover{border-color:var(--ivory);background:color-mix(in srgb, var(--ivory) 8%, transparent)}.btn-row{flex-wrap:wrap;align-items:center;gap:.85rem;display:flex}.text-link{color:var(--night);background-image:linear-gradient(var(--orange), var(--orange));transition:background-size .3s var(--ease);background-position:0 100%;background-repeat:no-repeat;background-size:0 1.5px;font-weight:600;text-decoration:none}.text-link:hover{background-size:100% 1.5px}.site-header{z-index:40;-webkit-backdrop-filter:blur(16px)saturate(1.2);backdrop-filter:blur(16px)saturate(1.2);background:color-mix(in srgb, var(--ivory) 78%, transparent);border-bottom:1px solid #0000;transition:border-color .3s;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--line)}.header-inner{justify-content:space-between;align-items:center;gap:1rem;min-height:4.5rem;display:flex}.logo{font-family:var(--font-display);color:var(--night);letter-spacing:-.04em;font-size:1.2rem;font-weight:650;text-decoration:none}.logo span{color:var(--orange);font-weight:700}.nav-desktop{align-items:center;gap:1.6rem;display:none}.nav-link{color:var(--muted);font-size:.94rem;font-weight:500;text-decoration:none;transition:color .2s}.nav-link[aria-current=page],.nav-link:hover{color:var(--night)}.menu-toggle{border:1px solid var(--line);width:2.8rem;height:2.8rem;color:var(--night);cursor:pointer;background:#ffffffb3;border-radius:999px;justify-content:center;align-items:center;display:inline-flex}.nav-mobile{padding:0 0 1.25rem;display:none}.nav-mobile.open{gap:.25rem;display:grid}.nav-mobile .nav-link,.nav-mobile .btn{justify-content:flex-start;width:100%;padding:.9rem .15rem}.hero{--hero-h:calc(100svh - 4.5rem);height:var(--hero-h);max-height:var(--hero-h);align-items:stretch;min-height:0;padding:clamp(1rem,2.5vh,1.75rem) 0 clamp(3.4rem,6vh,4rem);display:grid;position:relative;overflow:hidden}.hero:before{content:"";background:linear-gradient(105deg, color-mix(in srgb, var(--ivory) 94%, transparent) 0%, color-mix(in srgb, var(--ivory) 78%, transparent) 42%, color-mix(in srgb, var(--night) 18%, transparent) 100%), radial-gradient(circle at 78% 42%, color-mix(in srgb, var(--orange) 16%, transparent), transparent 32%);pointer-events:none;position:absolute;inset:0}.hero-grid{z-index:1;align-items:center;gap:clamp(1.25rem,3vh,2.5rem);height:100%;min-height:0;display:grid;position:relative}.hero-copy{max-width:34rem;animation:rise .9s var(--ease) both;gap:clamp(.75rem,1.8vh,1.15rem);display:grid}.brand-mark{gap:.35rem;display:grid}.brand-mark strong{font-family:var(--font-display);color:var(--night);letter-spacing:-.045em;font-size:clamp(1.55rem,3.4vw,2.35rem);font-weight:650;line-height:1}.brand-mark strong span{color:var(--orange)}.brand-mark>span{color:var(--muted);font-size:.95rem;font-weight:500}.hero h1{max-width:11ch;animation:rise .9s var(--ease) 80ms both;font-size:clamp(2rem,5.2vw,3.7rem)}.hero .lede{animation:rise .9s var(--ease) .14s both;font-size:clamp(.98rem,1.5vw,1.08rem)}.hero .btn-row{animation:rise .9s var(--ease) .2s both}.hero-note{color:var(--green);animation:rise .9s var(--ease) .26s both;font-size:.95rem;font-weight:500}.hero-visual{height:100%;min-height:0;animation:rise 1s var(--ease) .18s both;place-items:center;display:grid;position:relative}.hero-stage{aspect-ratio:1/1.05;width:min(100%,400px);max-height:min(58vh,460px);position:relative}.hero-stage:before{content:"";background:radial-gradient(circle at 40% 35%, #ffffff8c, transparent 55%), linear-gradient(160deg, color-mix(in srgb, var(--night) 18%, transparent), color-mix(in srgb, var(--green) 16%, transparent));filter:blur(2px);border-radius:48% 52% 42% 58%/42% 38% 62% 58%;animation:8s ease-in-out infinite blob-breathe;position:absolute;inset:8% 6% 4%}.mockup{width:min(52%,230px);filter:drop-shadow(0 28px 50px color-mix(in srgb, var(--night) 28%, transparent));animation:6s ease-in-out infinite float;position:absolute}.mockup--front{z-index:2;bottom:2%;right:4%}.scroll-invite{z-index:3;color:var(--night);letter-spacing:.14em;text-transform:uppercase;opacity:.82;transition:opacity .35s ease, transform .35s var(--ease);animation:rise .9s var(--ease) .45s both;flex-direction:column;align-items:center;gap:.35rem;font-size:.78rem;font-weight:700;text-decoration:none;display:inline-flex;position:absolute;bottom:.85rem;left:50%;transform:translate(-50%)}.scroll-invite:hover{opacity:1}.scroll-invite.is-hidden{opacity:0;pointer-events:none;transform:translate(-50%)translateY(8px)}.scroll-invite-arrow{border:1px solid var(--line-strong);border-radius:999px;place-items:center;width:2rem;height:2rem;font-size:.95rem;animation:1.8s ease-in-out infinite scroll-bounce;display:grid}.cookie-float{z-index:50;width:3.4rem;height:3.4rem;filter:drop-shadow(0 10px 18px color-mix(in srgb, var(--night) 22%, transparent));transition:transform .25s var(--ease);background:0 0;border:0;border-radius:999px;place-items:center;padding:0;text-decoration:none;display:grid;position:fixed;bottom:1rem;left:1rem}.cookie-biscuit{animation:4.5s ease-in-out infinite cookie-wobble;display:block}.cookie-float:hover{transform:translateY(-3px)scale(1.06)}.cookie-float:hover .cookie-biscuit{animation:none}.cookie-float:focus-visible{outline:2px solid var(--orange);outline-offset:4px}@keyframes cookie-wobble{0%,to{transform:rotate(-4deg)}50%{transform:rotate(5deg)}}@keyframes scroll-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(5px)}}.mockup--back{opacity:.95;width:min(48%,210px);animation-delay:-2.5s;top:4%;left:2%;transform:rotate(-8deg)}.service-split{border-top:1px solid var(--line-strong);gap:0;display:grid}.service-panel{border-bottom:1px solid var(--line-strong);gap:1rem;padding:clamp(1.75rem,4vw,2.75rem) 0;display:grid}.service-visual{background:radial-gradient(circle at 70% 20%, color-mix(in srgb, var(--orange) 12%, transparent), transparent 42%), linear-gradient(165deg, #ebe7dc, #d9dee6);border:1px solid var(--line);aspect-ratio:4/3;border-radius:22px;margin:0 0 .35rem;overflow:hidden}.service-visual img{object-fit:cover;width:100%;height:100%;transition:transform .55s var(--ease)}.service-panel:hover .service-visual img{transform:scale(1.03)}.service-visual--hero{box-shadow:0 24px 50px color-mix(in srgb, var(--night) 12%, transparent);margin:0}.service-panel h3{font-size:clamp(1.8rem,3vw,2.4rem)}.service-top{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:.75rem 1.5rem;display:flex}.service-label{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.85rem;font-weight:600}.price{color:var(--night);align-items:baseline;gap:.35rem;display:flex}.price strong{font-family:var(--font-display);letter-spacing:-.03em;font-size:clamp(2rem,3.5vw,2.7rem);font-weight:650}.price span,.card-meta,.small{color:var(--muted);font-size:.95rem}.checklist{gap:.75rem;margin:1.1rem 0 1.5rem;display:grid}.checklist li{color:var(--graphite);grid-template-columns:.85rem 1fr;align-items:start;gap:.8rem;display:grid}.checklist li:before{content:"";background:var(--green);border-radius:999px;width:.45rem;height:.45rem;margin-top:.55rem}.checklist--warn li:before{background:var(--orange)}.project-grid{gap:2rem;display:grid}.project-card{color:inherit;border-bottom:1px solid var(--line);gap:1.5rem;padding-bottom:2rem;text-decoration:none;transition:opacity .25s;display:grid}.project-card:hover{opacity:.92}.project-card-media{background:radial-gradient(circle at 70% 20%, color-mix(in srgb, var(--orange) 14%, transparent), transparent 40%), linear-gradient(165deg, #e7e4da, #d8dde6 55%, #c9d0db);border-radius:28px;place-items:end center;min-height:320px;padding:1.5rem 1rem 0;display:grid;overflow:hidden}.project-card-media img{width:min(56%,200px);transition:transform .5s var(--ease)}.project-card-media--site{place-items:center;min-height:280px;padding:1.4rem 1.1rem 1.6rem}.project-card:hover .project-card-media img{transform:translateY(-8px)}.project-card:hover .project-card-media--site .laptop{transform:translateY(-4px)}.laptop{width:min(100%,520px);transition:transform .45s var(--ease);margin-inline:auto;position:relative}.laptop--lg{width:min(100%,820px)}.laptop-screen{z-index:2;box-shadow:inset 0 1px 0 #ffffff2e, 0 18px 40px color-mix(in srgb, var(--night) 18%, transparent);background:linear-gradient(#3a4250,#1b222c);border-radius:14px 14px 0 0;padding:.55rem .55rem .35rem;position:relative}.laptop-bezel{aspect-ratio:16/10;background:#0b0f14;border:1px solid #20242c;border-radius:6px;overflow:hidden}.laptop-bezel img{object-fit:cover;object-position:top center;display:block;width:100%!important;height:100%!important;max-height:none!important;transform:none!important}.laptop-base{z-index:3;background:linear-gradient(#d7dbe3,#b7bec9 55%,#9aa3b0);border-radius:0 0 10px 10px;height:.85rem;margin-top:-1px;position:relative;box-shadow:inset 0 1px #ffffff8c,0 2px #0000001f}.laptop-base:before,.laptop-base:after{content:"";background:linear-gradient(#c5cad3,#8f98a5);width:4%;position:absolute;top:0;bottom:0}.laptop-base:before{border-radius:0 0 0 10px;left:0}.laptop-base:after{border-radius:0 0 10px;right:0}.laptop-notch{background:#7d8694;border-radius:0 0 5px 5px;width:18%;height:.28rem;position:absolute;top:.12rem;left:50%;transform:translate(-50%);box-shadow:inset 0 -1px #0000002e}.laptop-shadow{background:radial-gradient(ellipse at center, color-mix(in srgb, var(--night) 28%, transparent), transparent 70%);filter:blur(2px);z-index:1;border-radius:50%;height:1.1rem;position:absolute;bottom:-.85rem;left:8%;right:8%}.project-card-body{gap:.7rem;max-width:36rem;display:grid}.project-card-body h3{font-size:clamp(1.7rem,3vw,2.2rem)}.project-meta{gap:.55rem;display:grid}.project-meta p strong{color:var(--night);font-weight:650}.tag{width:fit-content;color:var(--green);letter-spacing:.1em;text-transform:uppercase;font-size:.78rem;font-weight:700;display:inline-flex}.about-grid{align-items:center;gap:2.5rem;display:grid}.portrait{aspect-ratio:4/5;width:100%;max-width:380px;box-shadow:0 30px 60px color-mix(in srgb, var(--night) 22%, transparent);background:#cfc9c0;border-radius:32px;margin-inline:auto;overflow:hidden}.portrait img{object-fit:cover;object-position:center top;width:100%;height:100%;transition:transform .7s var(--ease);display:block}.about-copy{gap:1.1rem;max-width:38rem;display:grid}.method-list{border-top:1px solid color-mix(in srgb, var(--ivory) 14%, transparent);gap:0;display:grid}.method-item{border-bottom:1px solid color-mix(in srgb, var(--ivory) 14%, transparent);gap:.45rem;padding:1.35rem 0;display:grid}.method-item h3{font-size:1.35rem}.method-item p{color:color-mix(in srgb, var(--ivory) 72%, transparent);max-width:34rem}.faq-list{border-top:1px solid var(--line-strong);gap:0;max-width:48rem;display:grid}.faq-item{border-bottom:1px solid var(--line-strong);background:0 0}.faq-trigger{width:100%;color:var(--night);text-align:left;cursor:pointer;background:0 0;border:0;justify-content:space-between;align-items:center;gap:1rem;padding:1.2rem 0;font-size:1.02rem;font-weight:600;transition:color .25s;display:flex}.faq-item.is-open .faq-trigger,.faq-trigger:hover{color:color-mix(in srgb, var(--night) 88%, var(--orange))}.faq-icon{color:var(--orange);transition:transform .3s var(--ease);font-size:1.4rem;font-weight:400;line-height:1}.faq-item.is-open .faq-icon{transform:rotate(180deg)}.faq-panel-wrap{transition:grid-template-rows .35s var(--ease);grid-template-rows:0fr;display:grid}.faq-item.is-open .faq-panel-wrap{grid-template-rows:1fr}.faq-panel{color:var(--muted);opacity:0;max-width:42rem;transition:opacity .3s ease, transform .3s var(--ease), padding .3s ease;padding:0;overflow:hidden;transform:translateY(-4px)}.faq-item.is-open .faq-panel{opacity:1;padding:0 0 1.25rem;transform:translateY(0)}.final-cta{gap:1.25rem;max-width:42rem;display:grid}.final-cta h2{font-size:clamp(2.2rem,4.5vw,3.5rem)}.page-hero{animation:rise .75s var(--ease) both;padding:clamp(3.5rem,8vw,5.5rem) 0 1.5rem}.page-hero h1{max-width:13ch;margin-bottom:1rem;font-size:clamp(2.4rem,5.5vw,4rem)}.page-hero .lede{max-width:40rem}.split-list{gap:0;display:grid}.split-list li{border-top:1px solid var(--line);color:var(--muted);padding:1.15rem 0}.split-list strong{color:var(--night);font-family:var(--font-display);letter-spacing:-.02em;margin-bottom:.3rem;font-size:1.15rem;font-weight:600;display:block}.form{gap:1.1rem;display:grid}.form-grid{gap:1rem;display:grid}.field{gap:.45rem;display:grid}.field label{color:var(--night);font-size:.9rem;font-weight:650}.field input,.field textarea,.field select{border:1px solid var(--line-strong);background:color-mix(in srgb, white 80%, var(--ivory));width:100%;color:var(--graphite);border-radius:14px;padding:.9rem 1rem;transition:border-color .2s,box-shadow .2s}.field input:focus,.field textarea:focus,.field select:focus{border-color:color-mix(in srgb, var(--orange) 55%, var(--night));box-shadow:0 0 0 4px color-mix(in srgb, var(--orange) 16%, transparent);outline:none}.field textarea{resize:vertical;min-height:8.5rem}.form-note,.form-success,.form-error{color:var(--muted);font-size:.95rem}.form-success{background:color-mix(in srgb, var(--green) 12%, white);color:var(--green);border-radius:16px;padding:1.1rem 1.2rem;font-weight:600}.form-error{color:#8f1f16;background:#f8e9e8;border-radius:14px;padding:.9rem 1rem;font-weight:600}.btn:disabled{opacity:.7;cursor:wait;transform:none}.form-shell,.aside-shell{background:color-mix(in srgb, white 72%, var(--ivory));border:1px solid var(--line);border-radius:24px;padding:clamp(1.4rem,3vw,2rem)}.site-footer{border-top:1px solid var(--line);background:color-mix(in srgb, var(--ivory-deep) 55%, white);padding:3rem 0 2.25rem}.footer-grid{gap:1.75rem;display:grid}.footer-brand{gap:.65rem;max-width:28rem;display:grid}.footer-contact{gap:.35rem;display:grid}.footer-brand .logo{font-size:1.25rem}.footer-links{flex-wrap:wrap;gap:.85rem 1.35rem;display:flex}.site-link{color:var(--muted);font-size:.95rem;text-decoration:none}.site-link:hover{color:var(--night)}.footer-meta{color:var(--muted);font-size:.88rem}.project-detail{gap:2rem;display:grid}.project-detail-media{background:radial-gradient(circle at 30% 20%, color-mix(in srgb, var(--orange) 14%, transparent), transparent 40%), linear-gradient(165deg, #e7e4da, #d2d8e2);border-radius:28px;place-items:end center;min-height:420px;padding:2rem 1rem 0;display:grid}.project-detail-media img{width:min(54%,250px)}.project-detail--site{grid-template-columns:1fr}.project-detail-media--site{background:radial-gradient(circle at 50% 20%, color-mix(in srgb, var(--orange) 10%, transparent), transparent 45%), linear-gradient(165deg, #ebe7dc, #d7dde6);place-items:center;min-height:auto;padding:1.75rem 1.25rem 2rem}@media (width>=760px){.project-detail--site{grid-template-columns:1fr}}.detail-block{gap:.8rem;max-width:42rem;display:grid}.detail-block h2{font-size:1.55rem}.detail-block ul{gap:.55rem;display:grid}.detail-block li{color:var(--muted);padding-left:1rem;position:relative}.detail-block li:before{content:"";background:var(--orange);border-radius:999px;width:.35rem;height:.35rem;position:absolute;top:.6rem;left:0}.reviews-summary{border-bottom:1px solid var(--line-strong);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem 1.5rem;margin-bottom:2rem;padding-bottom:1.25rem;display:flex}.reviews-score{flex-wrap:wrap;align-items:baseline;gap:.75rem 1rem;display:flex}.reviews-score strong{font-family:var(--font-display);color:var(--night);letter-spacing:-.04em;font-size:clamp(2.4rem,5vw,3.4rem);line-height:1}.reviews-score span:last-child{color:var(--muted);font-size:.95rem}.review-stars{color:var(--orange);letter-spacing:.08em;font-size:1.05rem}.review-stars span{color:color-mix(in srgb, var(--night) 18%, transparent)}.reviews-grid{gap:1.25rem;display:grid}.review-card{border-bottom:1px solid var(--line);gap:.85rem;padding:1.35rem 0;display:grid}.review-card:last-child{border-bottom:0;padding-bottom:0}.review-card-top{justify-content:space-between;align-items:center;gap:1rem;display:flex}.review-source{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:700}.review-text{color:var(--graphite);max-width:42rem;font-size:1.05rem}.review-text--muted{color:var(--muted)}.review-author{color:var(--night);font-weight:650}@media (width>=760px){.reviews-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem}.review-card{border-bottom:0;border-right:1px solid var(--line);padding:0 1.25rem 0 0}.review-card:last-child{border-right:0;padding-right:0}}.pricing-grid,.service-grid{gap:1.5rem;display:grid}.card{background:color-mix(in srgb, white 70%, var(--ivory));border:1px solid var(--line);border-radius:24px;padding:clamp(1.4rem,3vw,1.9rem)}.card h3{margin-bottom:.75rem;font-size:1.55rem}.card p+p,.card .card-meta{margin-top:.85rem}.reveal{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:var(--reveal-delay,0s);will-change:opacity, transform;transform:translateY(28px)}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal.is-visible .portrait img{animation:portrait-settle 1s var(--ease) both}.service-visual img,.project-card-media img,.laptop{will-change:transform}@keyframes rise{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}.mockup--back{animation-name:float-tilt}@keyframes float-tilt{0%,to{transform:rotate(-8deg)translateY(0)}50%{transform:rotate(-8deg)translateY(-10px)}}@keyframes blob-breathe{0%,to{transform:scale(1)translate(0)}50%{transform:scale(1.06)translate(2%,-2%)}}@keyframes pulse-glow{0%,to{box-shadow:0 12px 30px color-mix(in srgb, var(--orange) 28%, transparent)}50%{box-shadow:0 16px 40px color-mix(in srgb, var(--orange) 48%, transparent)}}@keyframes portrait-settle{0%{transform:scale(1.04)}to{transform:scale(1)}}@media (width>=760px){.nav-desktop{display:flex}.menu-toggle{display:none}.hero-grid,.about-grid,.project-detail,.pricing-grid,.footer-grid{grid-template-columns:1.05fr .95fr}.service-split{border-top:0;grid-template-columns:1fr 1fr;gap:0 3rem}.service-panel{border-bottom:0;border-top:1px solid var(--line-strong);padding-top:2rem}.project-grid{grid-template-columns:1fr 1fr;gap:2.5rem 2rem}.method-list{grid-template-columns:1fr 1fr;gap:0 2.5rem}.form-grid{grid-template-columns:1fr 1fr}.form-grid .field--full{grid-column:1/-1}.hero-visual{min-height:0}.hero-stage{width:min(100%,420px)}}@media (width<=759px){.hero{height:auto;min-height:calc(100svh - 4.5rem);max-height:none;padding-bottom:4rem}.hero-grid{height:auto}.hero-visual{height:auto;min-height:280px}.hero-stage{width:min(100%,300px);max-height:340px}}@media (width>=980px){.hero-grid{grid-template-columns:.95fr 1.05fr}.project-card{grid-template-rows:auto 1fr}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-copy,.hero h1,.hero .lede,.hero .btn-row,.hero-note,.hero-visual,.mockup,.mockup--back,.project-card-media img,.btn,.btn-pulse,.hero-stage:before,.page-hero,.reveal,.reveal.is-visible .portrait img,.faq-panel-wrap,.faq-panel,.faq-icon,.laptop,.scroll-invite,.scroll-invite-arrow,.cookie-biscuit{transition:none!important;animation:none!important}.reveal{opacity:1;transform:none}.faq-panel-wrap{display:block}.faq-item:not(.is-open) .faq-panel-wrap{display:none}}
