@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--bg:#141513;--ink:#f3f4ec;--muted:#aeb0a7;--lime:#d6ff62;--line:#383a33}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--bg);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:3px solid #79a2ff;outline-offset:7px}.wrap{width:min(1200px,88%);margin-inline:auto}header{width:min(1320px,94%);height:104px;margin:auto;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font-family:'Manrope',Arial,sans-serif;font-size:48px;font-weight:800;letter-spacing:-5px;line-height:1}.brand span{display:inline-block;font-size:13px;letter-spacing:0;vertical-align:top;margin-top:5px;margin-left:8px}nav{display:flex;gap:36px;font-size:14px}nav a{color:#bfc1b7}nav a:hover,.text-link:hover{color:var(--lime)}.nav-contact{border:1px solid #66695d;border-radius:100px;padding:12px 20px;font-size:14px}.nav-contact span{margin-left:18px}.hero{padding-top:65px}.eyebrow{font-size:12px;letter-spacing:1.7px;font-weight:600}.hero .eyebrow{display:flex;gap:24px;color:#b8bbae}.hero .eyebrow span+span:before{content:'/';margin-right:24px;color:#62675b}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h1{font-size:clamp(48px,7.4vw,104px);font-weight:500;line-height:1.08;letter-spacing:-5px;margin:32px 0 40px}.accent{color:var(--lime)}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:35px}.hero-bottom p{color:var(--muted);font-size:18px;line-height:1.65}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:19px 25px;border-radius:100px;font-weight:600;font-size:15px;transition:transform .2s,background .2s}.button:hover{transform:translateY(-3px)}.button span{font-size:24px;line-height:1}.lime{background:var(--lime);color:#191c13}.hero-foot{margin-top:65px;padding:25px 0 30px;display:flex;justify-content:space-between;border-top:1px solid var(--line);font-size:12px;letter-spacing:1px;color:#aeb1a4}.hero-foot a{letter-spacing:0;font-size:14px}.hero-foot a span{margin-left:18px}.services{background:#f1f2eb;color:#20221c;padding:88px 0 94px}.section-top{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:50px;gap:30px}.section-top .eyebrow{padding-top:12px}.section-top h2{font-size:clamp(32px,3.5vw,48px);font-weight:500;line-height:1.2;letter-spacing:-1.8px;width:58%}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid #c9ccbf}.service{padding:28px 23px 10px;border-right:1px solid #c9ccbf;display:flex;flex-direction:column}.service:first-child{padding-left:0}.service:last-child{border-right:0;padding-right:0}.service-top{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:#656b5a;margin-bottom:42px}.icon{font-family:'Manrope',sans-serif;font-size:25px;font-weight:600;color:#25291d}.service h3{font-size:25px;line-height:1.2;letter-spacing:-.8px;margin-bottom:21px}.service p{font-size:16px;line-height:1.65;color:#606653}.tags{display:flex;flex-wrap:wrap;gap:7px;margin:23px 0 30px}.tags span{font-size:12px;border:1px solid #c8cdbb;border-radius:25px;padding:4px 10px}.service>a{margin-top:auto;font-size:14px;display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #adb49b;padding-bottom:9px}.projects{padding:95px 0}.projects .section-top .eyebrow{color:var(--muted)}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.project-art{height:340px;padding:30px;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.graphic .project-art{background:#e54b32;color:#171916}.project-label{position:absolute;left:30px;top:26px;font-size:12px;letter-spacing:1.8px}.project-art strong{font-family:'Manrope',sans-serif;font-size:clamp(26px,4vw,55px);line-height:1.05;letter-spacing:-2px}.project-art i{font-weight:400}.project-arrow{position:absolute;right:25px;bottom:20px;font-size:30px;transition:transform .2s}.project:hover .project-arrow{transform:translate(4px,-4px)}.product .project-art{background:#c6e888;color:#173526}.product .project-art strong{font-size:clamp(42px,6vw,78px)}.period{color:#608633}.project-sub{font-size:14px;margin-top:15px}.project-meta{display:flex;justify-content:space-between;gap:20px;align-items:baseline;padding-top:18px}.project-meta h3{font-size:18px;font-weight:500}.project-meta>span{font-size:12px;color:var(--muted)}.about{padding:25px 0 100px;display:grid;grid-template-columns:42% 58%;align-items:center;border-top:1px solid var(--line);padding-top:70px}.about-mark{font-family:'Manrope',sans-serif;font-size:clamp(120px,20vw,270px);font-weight:800;letter-spacing:-25px;line-height:1;color:var(--lime)}.about-mark span{vertical-align:top;display:inline-block;font-size:32px;letter-spacing:0;margin-top:40px;margin-left:16px}.about h2{font-size:clamp(32px,4vw,52px);font-weight:500;line-height:1.15;letter-spacing:-2px;margin:22px 0 25px}.about p{max-width:560px;color:var(--muted);font-size:17px;margin-bottom:18px}.text-link{display:inline-block;border-bottom:1px solid #6d7262;margin-top:10px;padding-bottom:8px;font-size:14px}.text-link span{margin-left:25px}.contact{background:var(--lime);color:#1c2412;padding:65px 0}.contact h2{font-size:clamp(55px,8vw,110px);font-weight:500;line-height:1.05;letter-spacing:-5px;margin:30px 0}.contact h2 span{font-style:italic}.contact-bottom{display:flex;justify-content:space-between;align-items:center;gap:28px}.contact-bottom p{font-size:18px}.dark{background:#1c2412;color:var(--lime)}.phone{display:inline-block;font-size:14px;margin-top:25px}.phone:hover{text-decoration:underline}footer{display:flex;align-items:center;gap:35px;padding-block:35px;font-size:13px;color:#b5b9aa}footer>.brand{margin-right:auto;color:var(--ink);font-size:40px}.skip{position:absolute;top:-100px;background:var(--lime);color:#141513;padding:15px;z-index:10}.skip:focus{top:10px}
@media(min-width:1550px){h1{font-size:110px}}@media(max-width:1000px){.service-grid{grid-template-columns:1fr 1fr}.service{padding:25px!important;border-bottom:1px solid #c9ccbf}.service:nth-child(2){border-right:0}.service-top{margin-bottom:25px}.project-meta{display:block}.project-meta>span{display:block;margin-top:5px}h1{letter-spacing:-3px}.hero-bottom{align-items:flex-start}.hero-bottom .button{gap:15px}.project-art{height:280px}.about-mark{letter-spacing:-14px}.about-mark span{margin-left:7px;font-size:22px;margin-top:20px}}
@media(max-width:650px){header{height:82px;width:88%;gap:10px}.brand{font-size:40px}header nav{display:none}.nav-contact{font-size:13px;padding:10px 15px}.nav-contact span{margin-left:8px}.hero{padding-top:38px}.hero .eyebrow{display:block;font-size:11px}.hero .eyebrow span{display:block}.hero .eyebrow span+span{margin-top:5px}.hero .eyebrow span+span:before{display:none}h1{font-size:clamp(37px,8.8vw,57px);letter-spacing:-1.9px;line-height:1.12;margin:28px 0}.hero-bottom{display:block}.hero-bottom p{font-size:16px}.button{font-size:14px;padding:16px 23px}.hero-bottom .button{margin-top:25px;gap:30px}.hero-foot{margin-top:38px;padding:23px 0;display:block}.hero-foot>span{display:none}.hero-foot a{display:flex;justify-content:space-between}.services{padding:55px 0}.section-top{display:block;margin-bottom:30px}.section-top h2{width:100%;margin-top:20px;font-size:32px}.service-grid{grid-template-columns:1fr}.service{padding:28px 0!important;border-right:0}.service-top{margin-bottom:18px}.service h3 br{display:none}.service h3{font-size:26px}.service p{max-width:450px}.tags{margin:18px 0 22px}.projects{padding:55px 0}.project-grid{grid-template-columns:1fr;gap:35px}.project-art{height:275px}.project-art strong{font-size:43px}.product .project-art strong{font-size:68px}.about{grid-template-columns:1fr;padding:40px 0 55px;gap:30px}.about-mark{font-size:100px;letter-spacing:-10px}.about-mark span{font-size:18px;margin-top:15px}.about h2{font-size:36px}.about p{font-size:16px}.contact{padding:45px 0}.contact .eyebrow{font-size:11px}.contact h2{font-size:62px;letter-spacing:-3px}.contact-bottom{display:block}.contact-bottom p{font-size:16px}.contact .button{margin-top:25px;gap:45px}footer{flex-wrap:wrap;gap:18px;font-size:12px}footer>.brand{width:20%}footer>span{width:65%;text-align:right}footer>a:not(.brand){font-size:14px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Motion and depth — progressive enhancement, including touch screens. */
body{overflow-x:clip}header{position:relative;z-index:20}main{overflow:clip}.reading-progress{position:fixed;inset:0 0 auto;height:3px;background:var(--lime);transform:scaleX(0);transform-origin:left;z-index:50;pointer-events:none}.hero{position:relative;isolation:isolate;padding-top:78px}.hero h1{position:relative;max-width:1000px;font-weight:500}.hero .accent{background:linear-gradient(105deg,#d6ff62 25%,#a9d83f 60%,#eaffb3);background-clip:text;-webkit-background-clip:text;color:transparent}.hero-atmosphere{position:absolute;inset:0 -6% 0;z-index:-1;overflow:hidden;pointer-events:none;background:radial-gradient(ellipse at 85% 34%,#d6ff620d,transparent 50%)}.orbit{position:absolute;border:1px solid #d6ff622e;width:460px;height:460px;border-radius:50%;right:-60px;top:40px;will-change:transform}.orbit-two{width:340px;height:340px;right:0;top:100px;border-style:dashed;opacity:.55}.floating-symbol{position:absolute;right:105px;top:150px;font-size:190px;line-height:1;color:var(--lime);opacity:.35;will-change:transform}.coordinate{position:absolute;right:75px;bottom:160px;writing-mode:vertical-rl;font-size:10px;letter-spacing:3px;color:#b3be91}.hero h1,.hero .eyebrow,.hero-bottom,.hero-foot{z-index:1}.hero-foot a span{display:inline-block}.menu-toggle{display:none}.service{transition:background .3s,transform .3s}.service:hover{background:#e4e8d9}.service .icon{transition:transform .4s}.service:hover .icon{transform:rotate(-12deg)}.service>a{min-height:44px;align-items:center}.project-art{border-radius:3px;isolation:isolate;transition:transform .45s;transform:perspective(900px) rotateX(var(--tilt-x,0deg)) rotateY(var(--tilt-y,0deg))}.project-art:before{content:'';position:absolute;width:330px;height:330px;border:1px solid currentColor;border-radius:50%;right:-80px;top:-60px;opacity:.2;z-index:-1;transform:translateY(var(--art-shift,0px))}.project-art:after{content:'';position:absolute;width:240px;height:240px;border:1px solid currentColor;right:-25px;top:-15px;border-radius:50%;opacity:.15;z-index:-1;transform:translateY(calc(var(--art-shift,0px) * -1))}.project-art strong{transform:translateY(var(--art-shift,0px));transition:color .3s}.project-arrow{width:48px;height:48px;display:grid;place-items:center;border:1px solid #17241966;border-radius:50%;font-size:25px}.project:focus-visible{outline-offset:8px}.about-mark{will-change:transform}.contact{position:relative;isolation:isolate;overflow:hidden}.contact-decoration{position:absolute;right:-70px;top:-90px;font-size:550px;line-height:1;color:#26360a0c;z-index:-1;pointer-events:none}.contact .button:hover{background:#34431e}.nav-contact:hover{border-color:var(--lime);background:#d6ff620b}.reveal-ready{opacity:0;transform:translateY(26px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}.reveal-ready.is-visible{opacity:1;transform:translateY(0)}.menu-toggle:focus-visible{outline:3px solid #79a2ff;outline-offset:4px}.motion-off .reveal-ready{opacity:1;transform:none;transition:none}.motion-off [data-parallax]{transform:none!important}.motion-off .project-art{--art-shift:0px!important;transform:none!important}.motion-off *{scroll-behavior:auto!important;transition:none!important}
@media(min-width:1001px){.hero{min-height:730px}.hero h1{font-size:clamp(70px,7.2vw,104px)}.service:hover{transform:translateY(-5px)}}
@media(max-width:650px){header{gap:16px;flex-wrap:wrap;height:82px}.nav-contact{margin-left:auto;order:1}.menu-toggle{order:2;display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:1px solid #454b39;border-radius:50%;width:42px;height:42px;padding:11px;cursor:pointer}.menu-toggle span{height:1px;width:18px;background:var(--ink);transition:transform .25s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}header nav{display:none;position:absolute;left:0;right:0;top:81px;flex-direction:column;gap:0;padding:12px 20px;background:#20231d;border:1px solid var(--line);border-radius:0 0 16px 16px}header nav.is-open{display:flex}header nav a{padding:13px 0;font-size:16px}.hero{padding-top:44px}.hero-atmosphere{inset:0 -8% 0}.orbit{width:300px;height:300px;right:-165px;top:65px}.orbit-two{width:220px;height:220px;right:-125px;top:105px}.floating-symbol{font-size:125px;right:-40px;top:155px;opacity:.17}.coordinate{display:none}.hero h1{font-size:clamp(36px,8.7vw,57px)}.hero-bottom p{max-width:95%}.contact-decoration{font-size:370px;right:-180px;top:0}.project-art{touch-action:pan-y}.reveal-ready{transform:translateY(18px)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal-ready{opacity:1;transform:none;transition:none}[data-parallax]{transform:none!important}.project-art{--art-shift:0px!important;transform:none!important}*,*:before,*:after{animation:none!important;transition:none!important}}
/* Bacast: projeto de site e sistema, com os mesmos efeitos do portfólio. */
.bacast{grid-column:1/-1}.bacast .project-art{background:#bfcaf2;color:#182444}.bacast .project-art strong{font-size:clamp(58px,8vw,110px);letter-spacing:-4px}.bacast-period{color:#485cc6}.bacast .project-sub{max-width:80%}.bacast .project-arrow{border-color:#18244466}
@media(max-width:650px){.bacast .project-art strong{font-size:68px;letter-spacing:-3px}.bacast .project-sub{font-size:13px;max-width:85%}}


/* SVG paths avoid platform-dependent emoji rendering on iOS. */
.vector-icon{display:inline-block;width:1em;height:1em;vertical-align:-.12em;flex-shrink:0;pointer-events:none}.floating-symbol>.vector-icon,.contact-decoration>.vector-icon{display:block}.contact-decoration{display:block;width:1em;height:1em}

/* Immersive chapter experience — native scrolling, no scroll hijacking. */
header{position:fixed;inset:0 0 auto;width:100%;height:82px;padding:0 4%;margin:0;background:#10110fe8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid #ffffff12;z-index:40}header .brand{font-size:42px}main{overflow:clip}.experience{position:relative;background:#10110f;color:#f3f4ec}.experience-stage{position:relative;padding:130px 8% 80px}.chapter{padding:45px 0}.chapter .eyebrow{color:#aab09f;font-size:10px;letter-spacing:2px}.chapter h1,.chapter h2{font-size:clamp(36px,4.6vw,68px);font-weight:500;line-height:1.05;letter-spacing:-2.6px;margin:24px 0}.chapter em{color:var(--lime);font-style:normal}.chapter p{font-size:15px;color:#aeb3a5;line-height:1.7}.scene-cta{display:inline-flex;align-items:center;gap:30px;border:1px solid #737968;border-radius:100px;padding:13px 22px;margin-top:22px;font-size:12px;transition:background .25s,color .25s}.scene-cta:hover{background:var(--lime);color:#15170f}.chapter-nav,.digital-scene,.scene-corners,.scene-grid,.experience-bottom,.chapter-markers{display:none}.experience-enhanced .experience{height:440svh}.experience-enhanced .experience-stage{position:sticky;top:0;height:100svh;min-height:600px;padding:0;overflow:hidden;isolation:isolate}.experience-enhanced .scene-grid{display:block;position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 70% 70%,#b9eb4920,transparent 55%),linear-gradient(90deg,#ffffff03 1px,transparent 1px),linear-gradient(#ffffff03 1px,transparent 1px);background-size:auto,90px 90px,90px 90px}.experience-enhanced .chapter-copy{position:absolute;inset:120px 8% auto;text-align:center;z-index:3;pointer-events:none}.experience-enhanced .chapter{padding:0;position:absolute;inset:0;opacity:0;visibility:hidden;transform:translateY(25px);transition:opacity .6s,transform .7s,visibility .6s}.experience-enhanced .chapter.active{opacity:1;visibility:visible;transform:translateY(0)}.chapter.active a{pointer-events:auto}.chapter h1,.chapter h2{margin-top:20px;margin-bottom:18px}.experience-enhanced .chapter-nav{display:flex;position:absolute;left:4%;top:30%;bottom:17%;flex-direction:column;justify-content:space-between;z-index:5;border-left:1px solid #ffffff1f;padding-left:16px;gap:20px}.chapter-nav a{position:relative;display:block;color:#7d8476;font-size:11px;text-transform:uppercase;letter-spacing:1px;transition:color .3s}.chapter-nav a span{display:block;font-size:10px;letter-spacing:0;margin-bottom:6px}.chapter-nav a.active{color:var(--lime)}.chapter-nav a:before{position:absolute;content:'';left:-19px;top:0;bottom:0;width:5px;background:var(--lime);transform:scaleY(0);transition:transform .4s}.chapter-nav a.active:before{transform:scaleY(1)}.experience-enhanced .digital-scene{position:absolute;display:block;width:min(680px,66vw);height:min(530px,54vw);left:50%;top:49%;transform:translate(-50%,0);perspective:1300px;z-index:1}.digital-core{width:70%;height:65%;position:absolute;left:15%;top:12%;transform-style:preserve-3d;transform:rotateX(var(--core-rx,22deg)) rotateY(var(--core-ry,-22deg)) rotateZ(var(--core-rz,-8deg)) scale(var(--core-scale,1));will-change:transform}.core-layer{position:absolute;inset:0;border:1px solid #c9e4a04d;border-radius:14px;box-shadow:0 25px 70px #0007;overflow:hidden;background:#1b2019;backface-visibility:hidden}.layer-back{transform:translate3d(calc(var(--spread,0px) * -.8),calc(var(--spread,0px) * -.45),-100px);background:linear-gradient(135deg,#353e2b,#171b14)}.layer-middle{transform:translate3d(calc(var(--spread,0px) * .4),calc(var(--spread,0px) * -.15),-50px);background:#d6ff62;color:#192211}.layer-front{transform:translate3d(calc(var(--spread,0px) * .85),calc(var(--spread,0px) * .7),0);background:linear-gradient(125deg,#343c2f,#151914 65%,#272e20)}.core-toolbar{height:38px;display:flex;align-items:center;gap:6px;padding:0 18px;border-bottom:1px solid #e0f3c01f}.core-toolbar>span{width:5px;height:5px;border-radius:50%;background:#82916b}.core-toolbar b{margin-left:auto;font-weight:400;font:8px monospace;color:#a5b18f;letter-spacing:2px}.core-monogram{position:absolute;inset:40px 0 32px;display:flex;align-items:center;justify-content:center;font-family:Manrope,Arial,sans-serif;font-weight:800;letter-spacing:-.13em;font-size:clamp(100px,16vw,220px);color:#d6ff62;line-height:1;text-shadow:1px 1px 0 #738e33,2px 2px 0 #738e33,3px 3px 0 #738e33,0 0 70px #bdfb5820}.core-monogram>span{font:300 28px Manrope,Arial;letter-spacing:0;align-self:flex-start;margin-top:30px;margin-left:16px}.core-baseline{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;padding:13px 18px;font:8px monospace;color:#97a582;letter-spacing:1px;border-top:1px solid #ffffff0d}.layer-label{display:block;padding:18px;font:9px monospace;letter-spacing:3px}.palette{display:flex;gap:8px;padding:5px 20px}.palette i{width:35px;height:35px;background:#1a2213;border:1px solid #192211}.palette i:nth-child(2){background:#f4f5ed}.palette i:nth-child(3){background:transparent}.type-sample{display:block;padding:10px 20px;font:60px Manrope,Arial}.schema{margin:25px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.schema i{height:70px;border:1px solid #c4dc8b55;background:#c4dc8b0a}.scene-orbit{position:absolute;width:95%;height:115%;left:2.5%;top:-10%;border:1px solid #b5c69722;border-radius:50%;transform:rotateX(65deg) rotateZ(var(--orbit-turn,0deg));pointer-events:none}.orbit-b{transform:rotateY(65deg) rotateZ(var(--orbit-turn,0deg));border-style:dashed}.scene-axis{position:absolute;background:#b5c69716}.axis-x{top:45%;left:-8%;width:116%;height:1px}.axis-y{top:-5%;left:50%;height:110%;width:1px}.scene-label{position:absolute;font:8px monospace;letter-spacing:2px;color:#758263;top:58%}.label-left{left:-8%;transform:rotate(-90deg)}.label-right{right:-10%;transform:rotate(90deg)}.experience-enhanced .experience-bottom{position:absolute;display:flex;align-items:center;justify-content:space-between;bottom:25px;left:4%;right:4%;gap:20px;font-size:9px;letter-spacing:1.5px;color:#8c9482;z-index:4}.experience-bottom>a{font-size:11px;letter-spacing:0}.experience-bottom>a span{display:inline-block;margin-left:20px}.scene-counter{font-family:monospace}.experience-enhanced .scene-corners{position:absolute;display:block;inset:102px 4% 62px;pointer-events:none}.scene-corners i{position:absolute;width:9px;height:9px;border-top:1px solid #8b978666;border-left:1px solid #8b978666}.scene-corners i:nth-child(2){right:0;transform:rotate(90deg)}.scene-corners i:nth-child(3){bottom:0;transform:rotate(-90deg)}.scene-corners i:nth-child(4){right:0;bottom:0;transform:rotate(180deg)}.experience-enhanced .chapter-markers{position:absolute;display:block;inset:0;pointer-events:none;z-index:-2}.chapter-markers div{position:absolute;width:1px;height:1px;scroll-margin-top:0}.chapter-markers div:nth-child(1){top:0}.chapter-markers div:nth-child(2){top:calc((100% - 100svh) / 3)}.chapter-markers div:nth-child(3){top:calc((100% - 100svh) * 2 / 3)}.chapter-markers div:nth-child(4){top:calc(100% - 100svh)}.services{padding-top:110px}.projects .section-top h2{font-size:clamp(40px,5vw,70px)}.project-art{height:390px}.bacast .project-art{height:430px}.project-meta{padding-bottom:15px}.project{border-bottom:1px solid var(--line)}
@media(min-width:1000px) and (max-height:760px){.experience-enhanced .chapter-copy{top:102px}.chapter h1,.chapter h2{font-size:48px;margin:16px 0 12px}.chapter p{font-size:13px}.scene-cta{margin-top:14px;padding:10px 18px}.experience-enhanced .digital-scene{top:48%;width:550px;height:440px}}
@media(max-width:700px){header{height:76px;padding:0 6%;gap:12px}header .brand{font-size:37px}.nav-contact{font-size:11px;padding:10px 13px}.menu-toggle{width:38px;height:38px;padding:9px}header nav{top:75px;left:5%;right:5%}.experience-enhanced .experience{height:370svh}.experience-enhanced .experience-stage{min-height:580px}.experience-enhanced .chapter-copy{inset:130px 6% auto}.chapter .eyebrow{font-size:8px;letter-spacing:1.3px}.chapter h1,.chapter h2{font-size:clamp(30px,8.4vw,49px);letter-spacing:-1.4px;line-height:1.1;margin:20px 0 15px}.chapter p{font-size:12px;line-height:1.7}.chapter p br{display:none}.scene-cta{font-size:11px;padding:12px 18px;margin-top:18px}.experience-enhanced .chapter-nav{top:93px;bottom:auto;left:6%;right:6%;padding:0 0 12px;flex-direction:row;border-left:0;border-bottom:1px solid #ffffff18;gap:8px}.chapter-nav a{font-size:8px;letter-spacing:.5px}.chapter-nav a span{display:inline;margin:0 4px 0 0;font-size:8px}.chapter-nav a:before{left:0;top:auto;bottom:-13px;width:100%;height:2px;transform:scaleX(0)}.chapter-nav a.active:before{transform:scaleX(1)}.experience-enhanced .digital-scene{width:94vw;height:74vw;top:54%;max-height:340px}.digital-core{width:76%;left:12%;height:66%}.core-toolbar{height:26px;padding:0 12px}.core-toolbar b{font-size:6px;letter-spacing:1px}.core-toolbar>span{width:4px;height:4px}.core-monogram{font-size:36vw;inset:28px 0 25px}.core-monogram>span{font-size:18px;margin-top:18px;margin-left:10px}.core-baseline{font-size:6px;padding:9px 12px}.core-layer{border-radius:10px}.scene-label{display:none}.layer-label{font-size:7px;padding:10px}.palette{padding:4px 12px}.palette i{width:20px;height:20px}.type-sample{font-size:35px;padding:8px 12px}.schema{margin:10px;gap:8px}.schema i{height:35px}.experience-enhanced .experience-bottom{bottom:18px;left:6%;right:6%}.experience-bottom>span:first-child{display:none}.experience-enhanced .scene-corners{inset:90px 4% 45px}.services{padding-top:65px}.project-art,.bacast .project-art{height:290px}.project-meta{padding-bottom:12px}}
@media(prefers-reduced-motion:reduce){.experience-enhanced .experience{height:auto}.experience-enhanced .experience-stage{position:relative;height:auto;min-height:0;padding:115px 7% 60px;overflow:visible}.experience-enhanced .chapter-copy{position:static;text-align:left}.experience-enhanced .chapter{position:static;visibility:visible;opacity:1;transform:none;padding:30px 0}.experience-enhanced .chapter a{pointer-events:auto}.experience-enhanced .digital-scene,.experience-enhanced .chapter-nav,.experience-enhanced .experience-bottom,.experience-enhanced .chapter-markers{display:none}}
/* Hide inactive chapters immediately, including the first paint on Safari. */
.experience-enhanced .chapter{transition:opacity .6s,transform .7s}
@media(max-height:580px){.experience-enhanced .experience-stage{min-height:0}.experience-enhanced .chapter-copy{top:100px;left:16%;right:5%;text-align:left}.chapter h1,.chapter h2{font-size:30px;margin:10px 0}.chapter p{font-size:11px;max-width:55%}.chapter .scene-cta{padding:8px 14px;margin-top:10px}.experience-enhanced .digital-scene{width:42vw;height:33vw;left:76%;top:42%}.experience-enhanced .experience-bottom{bottom:12px}.experience-bottom>span:first-child{display:none}}
/* Expanded composition: horizontal fan keeps the cards clear of the copy. */
.experience-enhanced .digital-scene{width:min(720px,68vw);height:clamp(230px,40svh,430px);top:auto;bottom:9svh}
.digital-core{width:64%;left:18%;height:76%;top:12%}
.layer-back{transform:translate3d(calc(var(--spread,0px) * -1),calc(var(--spread,0px) * -.65),-100px) rotateZ(calc(var(--fan,0) * -12deg))}
.layer-middle{transform:translate3d(0,calc(var(--spread,0px) * -.17),-50px) rotateZ(calc(var(--fan,0) * 3deg))}
.layer-front{transform:translate3d(calc(var(--spread,0px) * .85),calc(var(--spread,0px) * .12),0) rotateZ(calc(var(--fan,0) * 9deg))}
@media(max-width:700px){.experience-enhanced .digital-scene{width:88vw;height:min(36svh,320px);top:auto;bottom:12svh}.digital-core{width:64%;left:18%;height:76%;top:12%}.core-monogram{font-size:29vw}.core-toolbar b{font-size:5px}.core-baseline{font-size:5px;letter-spacing:.5px}}
@media(max-height:580px){.experience-enhanced .digital-scene{width:42vw;height:30vw;top:auto;bottom:8svh}}

/* Scroll-directed composition: the object travels through the whole stage. */
@media(prefers-reduced-motion:no-preference){
.experience-enhanced .experience{height:500svh}
.experience-enhanced .digital-scene{width:min(760px,62vw);height:min(470px,43vw);max-height:none;left:var(--scene-x,50%);top:var(--scene-y,74%);bottom:auto;transform:translate(-50%,-50%);pointer-events:none;will-change:left,top}
.digital-core{width:76%;height:76%;left:12%;top:12%}
.core-layer{backface-visibility:visible;border:2px solid #a8be794d;box-shadow:4px 5px 0 #505d37,8px 10px 0 #202719,0 35px 90px #0008}
.layer-back{transform:translate3d(0,calc(var(--spread,0px) * -1),-100px)}
.layer-middle{transform:translate3d(0,0,-50px)}
.layer-front{transform:translate3d(0,var(--spread,0px),0)}
.experience-enhanced .chapter-copy{inset:0;z-index:3}
.experience-enhanced .chapter{inset:auto;left:50%;top:17%;width:70%;transform:translate(-50%,30px);text-align:center}
.experience-enhanced .chapter.active{transform:translate(-50%,0)}
.experience-enhanced .chapter[data-chapter="1"]{left:71%;top:35%;width:43%;text-align:left}
.experience-enhanced .chapter[data-chapter="2"]{top:21%;width:70%}
.experience-enhanced .chapter[data-chapter="3"]{left:35%;top:34%;width:42%;text-align:left}
.chapter h1,.chapter h2{font-size:clamp(38px,4.5vw,70px)}
.chapter[data-chapter="3"] h2{font-size:clamp(36px,4vw,62px)}
.chapter p{max-width:520px;margin-inline:auto}
.chapter[data-chapter="1"] p,.chapter[data-chapter="3"] p{margin-left:0}
.scene-orbit{width:110%;height:135%;left:-5%;top:-17%}
@media(max-width:700px){
.experience-enhanced .experience{height:430svh}
.experience-enhanced .digital-scene{width:90vw;height:64vw;left:var(--scene-x,50%);top:var(--scene-y,72%)}
.experience-enhanced .chapter{left:50%;top:19%;width:88%;text-align:center}
.experience-enhanced .chapter[data-chapter="1"]{left:56%;top:24%;width:76%;text-align:right}
.experience-enhanced .chapter[data-chapter="2"]{top:20%;width:88%}
.experience-enhanced .chapter[data-chapter="3"]{left:44%;top:22%;width:76%;text-align:left}
.chapter h1,.chapter h2,.chapter[data-chapter="3"] h2{font-size:clamp(29px,8vw,48px)}
.chapter p{max-width:none;font-size:12px}
.core-monogram{font-size:36vw}
}
@media(max-height:580px) and (min-width:701px){
.experience-enhanced .chapter{top:24%}
.experience-enhanced .chapter[data-chapter="1"],.experience-enhanced .chapter[data-chapter="3"]{top:28%}
.chapter h1,.chapter h2,.chapter[data-chapter="3"] h2{font-size:32px}
.chapter p{max-width:none;font-size:11px}
.experience-enhanced .digital-scene{width:48vw;height:30vw}
}
}
@media(prefers-reduced-motion:no-preference){
.experience-enhanced .chapter-nav a{width:fit-content;background:#10110fc9;border-radius:3px;padding:3px 6px;margin-left:-6px}
.experience-enhanced .experience-bottom{padding-block:8px;background:linear-gradient(90deg,#10110f99,transparent,#10110f99)}
}
/* Each screen carries one step of the process and cycles through the stack. */
.process-card{padding:0 6%;color:#eff3e4;background:#20291d;display:flex;flex-direction:column;justify-content:center;gap:6%}
.process-card .layer-label{padding:0;font-size:clamp(7px,.8vw,11px);letter-spacing:2px;opacity:.7}
.process-card h3{font-size:clamp(18px,2.2vw,30px);letter-spacing:-1px;line-height:1.12;max-width:90%}
.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.process-grid>span{border:1px solid #d6ff6240;border-radius:6px;padding:10px;font-size:clamp(9px,1.05vw,14px);background:#d6ff6208}
.process-grid b{font:9px monospace;display:block;color:#d6ff62;margin-bottom:3px}
.process-note{font:clamp(6px,.7vw,10px) monospace;letter-spacing:1px;border-top:1px solid currentColor;padding-top:10px;opacity:.6}
.design-card{background:#d6ff62;color:#182210}
.design-sample{display:flex;justify-content:space-between;align-items:center}
.design-sample strong{font:600 clamp(38px,5vw,68px) Manrope,Arial;line-height:1;letter-spacing:-4px}
.design-sample strong span{font-size:.5em;margin-left:20px;letter-spacing:-2px}
.swatches{display:flex;gap:6px}.swatches i{width:26px;height:36px;border-radius:4px;background:#192211}.swatches i:nth-child(2){background:#f2f3e8}.swatches i:nth-child(3){background:#82935d}
.technology-card{background:#18242c;color:#e5f4f1}
.code-preview{background:#0d151a;border:1px solid #a7dac32a;border-radius:6px;padding:14px;font:clamp(8px,1vw,13px)/1.8 monospace;color:#b5e2bf;white-space:pre}
.code-preview span{display:block}.code-preview span:first-child,.code-preview span:last-child{color:#d6ff62}
@media(prefers-reduced-motion:no-preference){.core-layer{will-change:transform;backface-visibility:hidden}.experience-enhanced .digital-scene{perspective:1800px}}
@media(max-width:700px){.process-card{gap:5%}.process-card h3{font-size:18px}.process-grid{gap:5px}.process-grid>span{padding:5px;font-size:9px}.process-grid b{font-size:7px;margin:0}.process-note{font-size:6px;padding-top:6px;letter-spacing:.4px}.process-card .layer-label{font-size:7px}.design-sample strong{font-size:44px}.swatches i{width:17px;height:25px}.code-preview{font-size:7px;padding:8px}.process-card{border-radius:10px}}

/* Premium review: faster story, readable process cards and real project evidence. */
@media(prefers-reduced-motion:no-preference){
  .experience-enhanced .experience{height:400svh}
}
.premium-projects{align-items:start}
.project-case{display:block;position:relative;border-bottom:1px solid var(--line);padding-bottom:28px}
.project-case.bacast{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(280px,.75fr);gap:28px}
.project-visual{position:relative;overflow:hidden;background:#20231d;isolation:isolate}
.project-visual-wide{height:500px}
.project-visual-duo{height:480px;display:grid;grid-template-columns:1fr 1fr;gap:3px;background:#111}
.project-visual img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}
.project-visual-duo img{object-position:center top}
.project-case:hover .project-visual img{transform:scale(1.035);filter:saturate(1.08)}
.project-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,#0d100db8);pointer-events:none;z-index:1}
.project-index{position:absolute;left:22px;top:20px;z-index:2;display:grid;place-items:center;width:38px;height:38px;border:1px solid #ffffff70;border-radius:50%;background:#10110f66;backdrop-filter:blur(7px);font:10px monospace;color:#fff}
.project-case .project-arrow{z-index:2;right:22px;bottom:20px;color:#fff;border-color:#ffffff70;background:#10110f55;backdrop-filter:blur(7px)}
.project-case-copy{display:flex;flex-direction:column;align-items:flex-start;padding-top:20px;min-height:178px}
.project-case.bacast .project-case-copy{padding:28px 0 22px;min-height:0;justify-content:center;border-top:1px solid var(--line)}
.project-label-static{font:10px monospace;letter-spacing:1.7px;color:var(--muted);margin-bottom:18px}
.project-case-copy h3{font-size:clamp(28px,3.1vw,46px);font-weight:500;line-height:1.08;letter-spacing:-1.8px;margin-bottom:14px}
.project-case-copy p{color:var(--muted);font-size:15px;line-height:1.6;max-width:470px;margin-bottom:24px}
.project-link-text{margin-top:auto;border-bottom:1px solid #73776a;padding-bottom:6px;font-size:13px}
.project-link-text:after{content:'';display:inline-block;width:8px;height:8px;margin-left:18px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:translateY(-2px);transition:transform .25s}
.project-case:hover .project-link-text:after{transform:translate(4px,-4px)}

@media(max-width:700px){
  .experience-enhanced .experience{height:340svh}
  .chapter p{font-size:13px}
  .chapter-nav a,.chapter-nav a span{font-size:9px}
  .process-grid>span{font-size:11px;padding:7px}
  .process-grid b{font-size:8px;margin-bottom:2px}
  .process-note{font-size:8px;letter-spacing:.35px;padding-top:7px}
  .process-card .layer-label{font-size:8px}
  .code-preview{font-size:8.5px;line-height:1.55}
  .core-baseline{font-size:7.5px}
  .premium-projects{gap:42px}
  .project-case.bacast{display:block}
  .project-visual-wide{height:330px}
  .project-visual-duo{height:390px}
  .project-case-copy,.project-case.bacast .project-case-copy{padding-top:20px;min-height:0}
  .project-case-copy h3{font-size:29px}
  .project-case-copy p{font-size:14px;margin-bottom:20px}
}
