:root{--ink:#1d1d1f;--muted:#6e6e73;--red:#d90929;--bg:#f5f5f7;--shadow:0 8px 30px #00000008;--ease:cubic-bezier(.22,1,.36,1);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a,summary{-webkit-tap-highlight-color:transparent}button{border:0}img{display:block;max-width:100%;height:auto}figure,p,h1,h2,h3{margin:0}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:5px}button,a{touch-action:manipulation}.sr-only,.skip:not(:focus){position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip:focus{position:fixed;z-index:100;background:white;padding:20px}.header{height:72px;padding:0 max(28px,calc((100% - 1200px)/2));display:flex;align-items:center;justify-content:space-between;gap:28px;position:sticky;top:0;background:#ffffffd9;backdrop-filter:blur(20px);z-index:20;border-bottom:1px solid #00000008}.wordmark{font-size:23px;font-weight:700;letter-spacing:-1px;display:flex;align-items:baseline;gap:5px}.wordmark small{font-size:13px;font-weight:400;letter-spacing:0;color:var(--muted)}.desktop-nav{display:flex;gap:32px;align-items:center;font-size:14px}.desktop-nav a:hover,.footer a:hover{color:var(--red)}sup{font-size:11px;color:var(--muted);margin-left:3px}.header-actions{display:flex;align-items:center;gap:20px}.contact-link{font-size:14px;color:var(--red)}.menu-toggle{display:none;width:44px;height:44px;background:none;padding:12px}.menu-toggle span{display:block;height:2px;background:var(--ink);margin:6px 0}.hero{padding:72px 28px 0;text-align:center;background:linear-gradient(#fff,var(--bg));overflow:hidden}.eyebrow{font-size:14px;font-weight:500;letter-spacing:.01em}.hero .eyebrow{font-size:17px;margin-bottom:22px}.hero h1{font-size:clamp(40px,5vw,70px);line-height:1.07;letter-spacing:-.055em;font-weight:650}.hero h1 span{color:var(--red)}.hero-description{font-size:21px;line-height:1.5;color:var(--muted);margin-top:23px}.hero-actions{display:flex;align-items:center;justify-content:center;gap:27px;margin-top:27px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:14px 25px;border-radius:999px;background:var(--red);color:white;font-size:16px;font-weight:500;transition:background .25s,box-shadow .25s}.button:hover{background:#be0824;box-shadow:0 4px 14px #d9092920}.hero-work-link{font-size:16px;color:var(--red);padding:14px 0}.hero-work-link:hover{text-decoration:underline}.hero-showcase{max-width:1140px;margin:60px auto 55px;display:grid;grid-template-columns:minmax(0,1fr) 180px minmax(0,1fr);align-items:center;gap:40px}.hero-project{display:block;background:#fff;box-shadow:var(--shadow);border-radius:20px;overflow:hidden;transition:box-shadow .3s}.hero-project:hover{box-shadow:0 12px 35px #00000012}.hero-project img{width:100%;height:auto;object-fit:contain}.hero-project span{display:block;font-size:14px;padding:15px 10px}.hero-logo img{width:152px;height:152px;margin:auto;border-radius:30px;box-shadow:0 8px 24px #d9092919}.hero-logo span{display:block;margin-top:18px;font-size:14px;font-weight:500;letter-spacing:-.025em}.proof{max-width:1140px;margin:auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:0 0 42px;gap:18px}.proof-tile{min-width:0;min-height:170px;padding:30px 16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;background:#fff;border-radius:22px;box-shadow:var(--shadow)}.proof strong{display:flex;align-items:center;height:56px;font-size:42px;font-weight:600;line-height:1;letter-spacing:-.04em}.proof strong span{color:var(--red)}.proof p{font-size:14px;line-height:1.45;color:var(--muted)}.proof-logo{height:56px;width:100%;display:flex;align-items:center;justify-content:center}.proof-logo img{width:180px;max-width:100%;height:56px;object-fit:contain;filter:brightness(0)}.proof-brand:last-child img{width:168px}.section{max-width:1200px;margin:auto;padding:96px 28px}.section-top{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:35px}.section-top p,.muted{font-size:14px;color:var(--muted);line-height:1.5}.section-top i{display:none}h2{font-size:clamp(32px,3.7vw,50px);line-height:1.12;letter-spacing:-.045em;font-weight:600}h2 span{color:var(--muted)}.work-title{display:flex;align-items:end;justify-content:space-between;gap:20px}.count{font-size:22px;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:32px 0}.filters button{background:white;min-height:44px;padding:12px 19px;border-radius:99px;font-size:14px;transition:background .2s,color .2s}.filters button.active{background:var(--ink);color:white}.filters button.active sup{color:#c7c7cd}.filters button:hover:not(.active){background:#e8e8ed}.work-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.project{background:white;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);align-self:start}.project[hidden]{display:none}.project-image{display:block;width:100%;padding:0;background:white;overflow:hidden}.project-image img{width:100%;height:auto;object-fit:contain;transition:opacity .3s}.project-image:hover img{opacity:.94}.project-meta{padding:23px 25px 26px}.project-meta h3{font-size:20px;line-height:1.3;font-weight:600;letter-spacing:-.025em}.project-meta>span{display:block;font-size:14px;color:var(--muted);margin-top:9px}.about{border-top:1px solid #d2d2d7}.about-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:65px;align-items:center}.about-photo{background:#fff;border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.about-photo img{width:100%;height:auto;object-fit:contain}.about-photo figcaption{padding:23px 26px;font-size:19px;font-weight:600}.about-photo figcaption span{display:block;font-size:14px;font-weight:400;color:var(--muted);margin-top:7px}.about-copy h2{font-size:38px;margin-bottom:25px}.about-copy p{font-size:17px;line-height:1.65;color:var(--muted);margin:16px 0}.tools{display:flex;flex-wrap:wrap;gap:9px;margin-top:25px}.tools span{padding:10px 14px;background:#fff;border-radius:99px;font-size:14px}.expertise{border-top:1px solid #d2d2d7}.expertise-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:65px}.expertise h2{font-size:38px}.service-list{background:#fff;border-radius:24px;padding:5px 28px;box-shadow:var(--shadow)}details+details{border-top:1px solid #e5e5ea}summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:13px;font-size:18px;line-height:1.4;font-weight:500;min-height:80px;padding:18px 0}summary::-webkit-details-marker{display:none}summary>span{font-size:13px;color:var(--muted)}summary b{font-size:24px;font-weight:400;margin-left:auto;color:var(--red)}details[open] summary b{transform:rotate(45deg)}details p{font-size:16px;line-height:1.6;color:var(--muted);padding:0 0 24px 29px}.footer{--ink:#f5f5f7;--muted:#a1a1a6;color:var(--ink);padding:60px max(28px,calc((100% - 1144px)/2)) 24px;background:#1d1d1f}.footer-intro{display:flex;justify-content:space-between;gap:25px}.footer-up{font-size:14px;color:var(--muted)}.footer-invitation{display:flex;justify-content:space-between;align-items:center;gap:45px;padding:48px 0 60px}.footer-invitation h2{font-size:56px}.footer-invitation h2 span{color:var(--ink)}.footer-invitation p{font-size:18px;line-height:1.6;color:var(--muted);margin:23px 0}.footer-qr{--ink:#1d1d1f;--muted:#6e6e73;display:flex;align-items:center;flex-direction:column;gap:14px;text-align:center;padding:22px;background:var(--bg);border-radius:22px}.footer-qr img{width:132px;border-radius:10px}.footer-qr span{font-size:14px;line-height:1.5;color:var(--muted)}.footer-qr b{color:var(--ink);font-weight:500}.footer-directory{display:grid;grid-template-columns:1.3fr 1fr 1.3fr;gap:40px;border-top:1px solid #ffffff26;padding:35px 0}.footer-identity p{font-size:14px;line-height:1.6;color:var(--muted);margin-top:15px}.footer-directory nav,.footer-contacts{display:flex;flex-direction:column;align-items:flex-start;gap:13px;font-size:14px}.footer-label{color:var(--muted);font-size:12px;letter-spacing:.04em;margin-bottom:5px}.footer-contacts a{overflow-wrap:anywhere}.footer-signoff{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff26;padding-top:22px;color:var(--muted);font-size:12px;line-height:1.5}.reveal{transition:opacity .8s var(--ease),transform .8s var(--ease);transition-delay:var(--reveal-delay,0ms)}.reveal.pending{opacity:0;transform:translateY(22px)}dialog{border:0;color:var(--ink);background:#fff;padding:0;border-radius:24px;max-height:90dvh;box-shadow:0 24px 100px #0003}dialog::backdrop{background:#0006;backdrop-filter:blur(8px)}.icon-button{background:var(--bg);border-radius:50%;width:44px;height:44px;flex-shrink:0;font-size:28px;line-height:1}.project-dialog{width:min(1100px,94vw)}.modal-head{display:flex;justify-content:space-between;gap:20px;padding:26px;align-items:center}.modal-head h2{font-size:28px;margin-top:8px}.modal-head .eyebrow{color:var(--muted);font-size:12px}.modal-image-wrap{background:var(--bg)}.modal-image-wrap img{width:100%;height:auto;object-fit:contain}.modal-footer{padding:26px;display:flex;align-items:center;gap:30px}.modal-footer p{font-size:16px;line-height:1.6;color:var(--muted);flex:1}.modal-footer .button{flex-shrink:0}.modal-controls{padding:20px 26px;border-top:1px solid #eee;display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}.modal-controls button{background:var(--bg);padding:12px 16px;border-radius:99px}.menu-dialog{width:min(500px,94vw);padding:25px}.menu-head{display:flex;justify-content:space-between;align-items:center}.menu-dialog nav{display:flex;flex-direction:column;margin:30px 0}.menu-dialog nav a{font-size:30px;letter-spacing:-.03em;padding:16px 0;border-bottom:1px solid #eee}.menu-dialog nav small{font-size:14px;color:var(--muted);margin-right:17px}.menu-bottom{display:flex;flex-direction:column;gap:16px;font-size:15px;overflow-wrap:anywhere}
@media(min-width:1500px){.hero{padding-top:88px}.hero-showcase{margin-top:65px}}
@media(max-width:900px){.desktop-nav{gap:18px}.hero-showcase{grid-template-columns:minmax(0,1fr) 120px minmax(0,1fr);gap:24px}.hero-logo img{width:110px;height:110px;border-radius:24px}.hero-project span{font-size:12px}.about-grid,.expertise-grid{gap:35px}.about-copy h2,.expertise h2{font-size:32px}.about-copy p{font-size:16px}.project-meta{padding:19px}.project-meta h3{font-size:18px}.footer-invitation h2{font-size:44px}}
@media(max-width:640px){html{scroll-padding-top:76px}.header{height:64px;padding:0 20px;gap:10px}.wordmark{font-size:21px}.desktop-nav{display:none}.menu-toggle{display:block}.header-actions{gap:8px}.contact-link{font-size:12px}.hero{padding:45px 20px 0}.hero .eyebrow{font-size:14px;margin-bottom:20px}.hero h1{font-size:clamp(34px,8.8vw,48px);letter-spacing:-.05em}.hero-description{font-size:18px;margin-top:20px}.hero-actions{gap:17px;flex-wrap:wrap;margin-top:22px}.button{font-size:15px;padding:13px 21px;min-height:46px}.hero-work-link{font-size:15px}.hero-showcase{grid-template-columns:minmax(0,1fr) 76px minmax(0,1fr);gap:12px;margin:42px auto 32px}.hero-logo img{width:70px;height:70px;border-radius:16px}.hero-logo span{font-size:10px;margin-top:10px}.hero-project{border-radius:10px}.hero-project span{display:none}.proof{padding:0 0 30px;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.proof-tile{min-height:150px;padding:24px 12px;gap:12px;border-radius:18px}.proof strong{font-size:36px;height:48px}.proof p{font-size:14px}.proof-logo,.proof-logo img{height:48px}.proof-logo img{width:148px}.proof-brand:last-child img{width:132px}.section{padding:60px 20px}.section-top{margin-bottom:26px}.section-top .eyebrow{font-size:12px}.section-top>p,.section-top>.muted{display:none}h2{font-size:32px}.count{font-size:18px}.filters{gap:7px;margin:25px 0}.filters button{font-size:13px;padding:11px 14px}.work-grid{grid-template-columns:1fr;gap:23px}.project{border-radius:18px}.project-meta{padding:20px}.project-meta h3{font-size:20px}.project-meta>span{font-size:13px}.about-grid,.expertise-grid{grid-template-columns:1fr;gap:30px}.about-photo{max-width:420px;width:100%;margin:auto;border-radius:22px}.about-copy h2{font-size:32px}.about-copy p{font-size:17px}.expertise h2{font-size:32px}.service-list{padding:3px 20px}summary{font-size:17px;gap:10px}details p{padding-left:0}.footer{padding:45px 20px 22px}.footer-intro .eyebrow{font-size:12px}.footer-invitation{padding:35px 0 42px;flex-direction:column;align-items:flex-start;gap:30px}.footer-invitation h2{font-size:38px}.footer-invitation p{font-size:17px}.footer-qr{display:flex;align-self:flex-start;width:min(100%,240px)}.footer-directory{grid-template-columns:1fr 1fr;gap:30px}.footer-contacts{grid-column:1/-1}.footer-signoff{flex-wrap:wrap;gap:7px}.modal-head{padding:20px}.modal-head h2{font-size:23px}.modal-footer{padding:20px;flex-direction:column;align-items:stretch;gap:20px}.modal-controls{padding:16px 12px;font-size:12px;gap:5px}.modal-controls button{font-size:12px;padding:12px}.project-dialog{width:96vw;border-radius:18px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal.pending{opacity:1;transform:none}}

.footer .order-button:hover{color:#fff}

/* Shared content grid and uniform portfolio previews. */
:root{--content-width:1520px;--page-gutter:28px}
.header{padding-inline:max(var(--page-gutter),calc((100% - var(--content-width))/2))}
.section{max-width:calc(var(--content-width) + var(--page-gutter)*2);padding-inline:var(--page-gutter)}
.hero{padding-inline:var(--page-gutter)}
.proof,.hero-showcase{max-width:var(--content-width)}
.footer{padding-inline:max(var(--page-gutter),calc((100% - var(--content-width))/2))}
.work-grid{align-items:stretch}
.project{align-self:stretch;min-width:0;display:flex;flex-direction:column}
.project[hidden]{display:none}
.project-image{aspect-ratio:3/2;display:flex;align-items:center;justify-content:center;flex:none}
.project-image img{width:100%;height:100%;object-fit:contain}
.project-meta{flex:1;min-height:112px}
.about-grid>*,.expertise-grid>*{min-width:0}
.portfolio-channel{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px 32px;margin-top:32px;background:#fff;border-radius:22px;box-shadow:var(--shadow)}
.portfolio-channel h3{font-size:23px;letter-spacing:-.025em}
.portfolio-channel p{font-size:16px;line-height:1.5;color:var(--muted);margin-top:8px}
.portfolio-channel .button{flex-shrink:0}
.proof-tile{transition:background .3s,color .3s,box-shadow .3s,opacity .8s var(--ease),transform .8s var(--ease)}
.proof-tile p,.proof-tile strong span{transition:color .3s}
.proof-logo img{transition:filter .3s}
@media(hover:hover){.proof-tile:hover{background:var(--red);color:#fff;box-shadow:0 10px 30px #d9092920}.proof-tile:hover p,.proof-tile:hover strong span{color:#fff}.proof-tile:hover .proof-logo img{filter:brightness(0) invert(1)}}
.hero-showcase{perspective:1200px;padding:24px 22px;gap:54px;margin-top:40px;margin-bottom:35px}
.hero-project{transform:translateY(var(--float-y,0px)) rotateY(9deg) rotateZ(calc(-2deg - var(--float-tilt,0deg)));transform-origin:center}
.hero-project:last-child{transform:translateY(var(--float-y,0px)) rotateY(-9deg) rotateZ(calc(2deg + var(--float-tilt,0deg)))}
@media(max-width:900px){.hero-showcase{gap:28px;padding-inline:16px}}
@media(max-width:640px){:root{--page-gutter:20px}.hero-showcase{gap:12px;padding:16px 6px;margin-top:28px;margin-bottom:24px}.project-meta{min-height:112px}.portfolio-channel{align-items:flex-start;flex-direction:column;padding:24px}.portfolio-channel h3{font-size:22px}.portfolio-channel .button{width:100%}.footer-invitation>div{min-width:0;max-width:100%}.footer-invitation h2{font-size:clamp(30px,9vw,38px)}}
@media(prefers-reduced-motion:reduce){.hero-project,.hero-project:last-child{transform:none}}
