@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:#0b0b11;--panel:#12121b;--text:#f3f2fa;--muted:#a6a5b6;--line:#ffffff20;--blue:#2461ff;--purple:#884dff}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--bg);color:var(--text);font-family:'DM Sans',sans-serif;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid #b18aff;outline-offset:6px}::selection{background:#7441ed;color:white}.progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--blue),#bd77ff);z-index:100;width:0}.cursor-light{pointer-events:none;position:fixed;left:0;top:0;width:500px;height:500px;background:radial-gradient(circle,#6744ff0b,transparent 65%);transform:translate(-50%,-50%);z-index:2}header{height:100px;margin:0 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:12px;font-size:20px;letter-spacing:-.7px;font-weight:700}.logo-crop{display:block;width:46px;height:38px;overflow:hidden;position:relative}.logo-crop img{width:58px;position:absolute;left:-5px;top:-12px}.brand-sub{display:block;font-size:8px;letter-spacing:2px;margin-top:5px;font-weight:500}nav{display:flex;gap:32px;font-size:13px;color:#c5c3d2}nav a:hover,.text-link:hover{color:#a985ff}.nav-cta{padding:13px 19px;border:1px solid #ffffff50;border-radius:40px;font-size:13px;display:flex;gap:25px;align-items:center}.nav-cta:hover{background:white;color:var(--bg)}.hero{padding:34px 5% 0;overflow:hidden}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow{font-size:10px;font-weight:500;letter-spacing:2px;line-height:1.7}.eyebrow i{width:7px;height:7px;background:#9e86ff;border-radius:50%;display:inline-block;margin-right:9px;box-shadow:0 0 15px #906aff}.hero-note{font-size:12px;color:var(--muted);line-height:1.5}.hero-grid{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;min-height:640px;max-width:1500px;margin:auto}.hero h1{font-family:Manrope,sans-serif;font-weight:500;font-size:clamp(72px,7.5vw,122px);line-height:1.04;letter-spacing:-7px;margin:34px 0 27px;position:relative;z-index:3}.gradient{background:linear-gradient(100deg,#4d7bff 0%,#9270ff 60%,#dbbfff);-webkit-background-clip:text;background-clip:text;color:transparent}.period{font-size:60px;color:#a585ff;display:inline-block;vertical-align:top;margin:13px 0 0 18px;animation:rotate 30s linear infinite}.hero-copy p{font-size:16px;line-height:1.7;color:var(--muted);max-width:380px}.button{border:0;display:inline-flex;align-items:center;justify-content:space-between;gap:34px;border-radius:40px;padding:19px 25px;font-size:13px;transition:transform .3s,box-shadow .3s}.button:hover{transform:translateY(-4px);box-shadow:0 10px 35px #543cff3d}.button span{font-size:21px}.primary{background:linear-gradient(110deg,#2857ef,#7644e9);color:white}.hero .button{margin-top:14px}.hero-art{height:530px;position:relative;perspective:900px;isolation:isolate;transform-style:preserve-3d}.hero-logo{width:115%;height:115%;object-fit:contain;position:absolute;left:-7%;top:-7%;filter:drop-shadow(0 30px 45px #362cbb77);animation:float 7s ease-in-out infinite;z-index:2}.art-glow{position:absolute;inset:80px 0;border-radius:50%;background:radial-gradient(ellipse,#4e32b64a,transparent 70%);filter:blur(30px)}.orbit{border:1px solid #977bff35;position:absolute;width:95%;height:65%;left:2%;top:17%;border-radius:50%;transform:rotate(-35deg)}.orbit-two{width:75%;height:95%;left:13%;top:2%;transform:rotate(35deg);border-color:#ffffff0f}.floating-tag{position:absolute;z-index:4;font-size:11px;padding:13px 17px;border:1px solid #ffffff25;background:#181824c9;backdrop-filter:blur(15px);border-radius:8px;box-shadow:0 10px 40px #0006;animation:float 6s ease-in-out infinite}.tag-one{right:0;top:13%;transform:rotate(7deg)}.tag-two{left:8%;bottom:14%;animation-delay:-3s}.tiny-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:#a18bff;margin-right:7px}.art-coordinate{position:absolute;bottom:0;right:5%;font-size:9px;color:#77738d;letter-spacing:2px}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0;margin-top:20px;font-size:9px;letter-spacing:1.5px;color:#b3b0c5}.hero-bottom a span{margin-left:30px;font-size:18px}.ticker{overflow:hidden;border-block:1px solid var(--line);background:#14121d;padding:22px 0;margin-top:35px}.ticker div{width:max-content;display:flex;align-items:center;gap:36px;font-size:24px;letter-spacing:-.5px;animation:marquee 40s linear infinite}.ticker span{color:#9671ff;font-size:34px}.section{padding:110px 7%;max-width:1700px;margin:auto}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:30px;margin-bottom:50px}h2{font-family:Manrope,sans-serif;font-size:clamp(40px,5.1vw,76px);font-weight:500;letter-spacing:-3.5px;line-height:1.12;margin:20px 0 0}h2 em{font-family:Georgia,serif;font-weight:400;color:#b29bff}.section-heading p{color:var(--muted);font-size:14px;line-height:1.7;margin:0 0 6px}.project{border-bottom:1px solid var(--line)}.project-visual{height:535px;border-radius:14px;overflow:hidden;background:radial-gradient(ellipse at 20% 20%,#7965ad,#393348 55%,#191721);position:relative;padding:30px 34px}.project-topline{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.8px;color:#efebffb0}.nexo-word{position:absolute;font-family:Manrope,sans-serif;font-size:clamp(100px,20vw,280px);font-weight:500;letter-spacing:-15px;left:6%;top:65px;color:#f0e8ff;line-height:1}.nexo-word span{font-size:110px;vertical-align:top;margin-left:20px;color:#beaccd}.calendar{position:absolute;width:370px;bottom:75px;right:7%;background:#f2eff9;border:1px solid #fff9;color:#322b40;border-radius:14px;box-shadow:0 35px 80px #10091d70;transform:rotate(-6deg);padding:23px;transition:transform .6s}.project:hover .calendar{transform:rotate(0deg) translateY(-10px)}.calendar-title{display:flex;align-items:center;gap:10px;font-size:12px;font-weight:600}.calendar-icon{background:#d8c8f8;border-radius:8px;padding:9px;font-size:20px}.calendar-title small{display:block;color:#766c85;font-weight:400;font-size:9px;margin-top:5px}.calendar-star{font-size:25px;margin-left:auto;color:#8c64ca}.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);text-align:center;gap:12px 5px;margin-top:25px;align-items:center;font-size:12px}.calendar-days span{font-size:9px;color:#93849e}.calendar-days b{padding:9px 0;font-weight:400}.chosen{background:#8353cf;border-radius:50%;color:white}.time-slots{display:flex;gap:8px;margin-top:20px}.time-slots span{font-size:10px;border:1px solid #d7ccdf;border-radius:5px;padding:9px 13px;flex:1;text-align:center}.time-slots .selected{background:#e2d6f5;border-color:#a184c8}.project-caption{position:absolute;bottom:24px;left:34px;font-size:8px;letter-spacing:1px;color:#e9e0f3a8}.project-info{display:flex;justify-content:space-between;align-items:center;padding:28px 0}.project-info h3{font-size:32px;font-weight:500;letter-spacing:-1px;margin:8px 0}.project-info p{color:var(--muted);font-size:14px;margin:10px 0;max-width:540px;line-height:1.7}.round-link{border:1px solid #ffffff40;width:60px;height:60px;border-radius:50%;display:grid;place-items:center;font-size:25px;transition:.3s}.round-link:hover{background:#7351dc;transform:rotate(45deg)}summary{cursor:pointer;list-style:none}summary::-webkit-details-marker{display:none}#nexo-detalle summary{padding:20px 0;font-size:12px;border-top:1px solid var(--line);display:flex;justify-content:space-between}.case-detail{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-bottom:25px;color:var(--muted);font-size:13px;line-height:1.8}.case-detail strong{display:block;color:white;margin-bottom:8px}.case-detail a{text-decoration:underline}.services{padding-top:65px}.service{border-top:1px solid var(--line);transition:background .3s}.service:last-child{border-bottom:1px solid var(--line)}.service summary{display:flex;align-items:center;gap:35px;padding:33px 0;font-family:Manrope,sans-serif;font-size:clamp(25px,3.5vw,50px);letter-spacing:-1.8px}.service-number{font:11px 'DM Sans',sans-serif;color:#8d869f;letter-spacing:1px}.service-symbol{margin-left:auto;font-size:38px;color:#9981db;transition:transform .3s}.service[open] .service-symbol{transform:rotate(90deg)}.service-body{padding:0 0 35px 52px;display:grid;grid-template-columns:1fr 1fr;gap:60px}.service-body p{font-size:14px;line-height:1.8;color:var(--muted);max-width:490px;margin:0}.pills{display:flex;flex-wrap:wrap;gap:8px;align-content:center}.pills span{padding:8px 13px;border:1px solid #ffffff28;border-radius:30px;font-size:10px;color:#cecadb}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:50px}.about-art{min-height:490px;padding:32px;position:relative;border-radius:12px;background:linear-gradient(135deg,#d7cdf8,#b5b9f0 60%,#8e9fe1);color:#242038;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between}.about-art:after{content:'';width:370px;height:370px;position:absolute;right:-180px;top:0;border:1px solid #5541a84d;border-radius:50%;box-shadow:0 0 0 45px #6551b00b,0 0 0 90px #6551b009}.about-art .eyebrow{font-size:8px;position:relative;z-index:1}.about-name{font-family:Manrope,sans-serif;font-size:clamp(55px,6.5vw,95px);line-height:1.04;letter-spacing:-5px}.about-name em{font-family:Georgia,serif;font-weight:400}.about-seal{width:100px;height:100px;border:1px solid #4e47737a;border-radius:50%;position:absolute;right:25px;bottom:65px;padding:23px;text-align:center;font-size:8px;line-height:1.3;letter-spacing:1px;transform:rotate(13deg)}.about-seal span{display:block;font-size:18px}.about-foot{font-size:7px;letter-spacing:1.3px}.about-copy{align-self:center}.about-copy h2{margin-bottom:28px}.about-copy p{color:var(--muted);font-size:14px;line-height:1.9}.text-link{display:inline-block;border-bottom:1px solid #8e70d8;padding-bottom:10px;font-size:13px;margin-top:22px}.process{padding-top:40px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.steps article{border-top:1px solid #5d4c86;padding-top:25px}.steps span{font-size:9px;letter-spacing:1.5px;color:#b395ed}.steps h3{font-size:22px;font-weight:500;letter-spacing:-.7px;margin:22px 0 14px}.steps p{font-size:13px;color:var(--muted);line-height:1.8;max-width:290px}.contact{padding-top:75px;padding-bottom:60px;position:relative;overflow:hidden;border-top:1px solid var(--line);background:#11101c;max-width:none}.contact-glow{position:absolute;width:700px;height:700px;right:-200px;top:-80px;background:radial-gradient(ellipse,#6135c644,transparent 65%);pointer-events:none}.contact h2{position:relative;font-size:clamp(55px,8vw,120px);letter-spacing:-5px}.contact h2>span{display:inline-block;margin-left:40px;font-size:110px;color:#a782f2}.contact-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:45px;gap:20px}.contact-bottom p{font-size:14px;color:var(--muted);line-height:1.8}.light{background:#f2effc;color:#241c36}.contact-links{display:flex;align-items:center;gap:20px;border-top:1px solid var(--line);padding-top:25px;margin-top:35px;font-size:12px;position:relative}.contact-links button{border:0;border-bottom:1px solid #75688d;background:none;color:#a99dbf;font-size:10px;padding:4px 0}footer{display:flex;align-items:center;justify-content:space-between;padding:30px 5%;gap:20px}footer>span{font-size:10px;color:#8e879f}footer>a:last-child{font-size:8px;letter-spacing:1.3px}dialog{color:var(--text);background:#16131f;border:1px solid #6e578d;padding:36px;width:min(520px,92vw);border-radius:18px;max-height:90vh}dialog::backdrop{background:#050309bb;backdrop-filter:blur(12px)}dialog h2{font-size:34px;letter-spacing:-1.5px;margin:12px 0 25px}.close-modal{position:absolute;right:15px;top:10px;color:white;background:none;border:0;font-size:28px}label{font-size:12px;display:block;margin:15px 0}input,select,textarea{display:block;width:100%;margin-top:8px;padding:12px;color:white;background:#24202e;border:1px solid #5a4b69;border-radius:7px;font-size:13px}textarea{resize:vertical}.form-note{font-size:11px;color:#b8aec7;line-height:1.6}.direct-email{display:block;font-size:11px;text-align:center;margin-top:20px;text-decoration:underline}#brief-form>.button{width:100%}.reveal{opacity:1;transform:none}.motion-ready .reveal{opacity:0;transform:translateY(32px);transition:opacity .8s,transform .8s}.motion-ready .reveal.visible{opacity:1;transform:none}@keyframes float{0%,100%{translate:0 0}50%{translate:0 -14px}}@keyframes rotate{to{rotate:360deg}}@keyframes marquee{to{transform:translateX(-50%)}}@media(min-width:1700px){.hero{max-width:1700px;margin:auto}}@media(max-width:900px){header{height:80px}nav{gap:16px}.hero-grid{min-height:560px}.hero h1{font-size:76px;letter-spacing:-5px}.period{font-size:32px;margin-left:8px}.hero-art{height:400px}.floating-tag{font-size:8px;padding:10px}.section{padding:75px 6%}.about{gap:6%}.about-art{min-height:420px}.about-name{font-size:65px}.service-body{gap:25px}.nexo-word{font-size:190px}.calendar{width:330px}.section-heading p{max-width:220px}.contact h2>span{font-size:70px;margin-left:10px}}@media(max-width:600px){header{margin-inline:6%;height:78px}.brand{font-size:17px;gap:6px}.brand-sub{font-size:6px;letter-spacing:1.5px}.logo-crop{width:35px}nav{display:none}.nav-cta{font-size:11px;padding:10px 13px;gap:10px}.hero{padding:26px 6% 0}.hero-note{display:none}.hero-top .eyebrow{font-size:8px;letter-spacing:1.4px}.hero-grid{display:block;position:relative;min-height:0}.hero h1{font-size:clamp(58px,14vw,84px);letter-spacing:-4px;margin-top:35px}.period{font-size:30px}.hero-copy p{font-size:14px;max-width:300px}.hero-art{height:290px;margin:0 auto;width:90%;max-width:390px}.hero-logo{width:100%;height:125%;left:0;top:-12%}.orbit{height:70%;top:15%}.tag-one{right:-10px;top:16%}.tag-two{left:-10px;bottom:14%}.art-coordinate{display:none}.hero-bottom{margin-top:0;font-size:7px;letter-spacing:.6px}.hero-bottom a span{margin-left:8px}.ticker{margin-top:14px;padding:13px 0}.ticker div{font-size:17px;gap:25px}.ticker span{font-size:25px}.section{padding:65px 6%}.section-heading{display:block;margin-bottom:30px}h2{font-size:43px;letter-spacing:-2px}.section-heading p{margin-top:20px;font-size:13px;max-width:none}.eyebrow{font-size:8px;letter-spacing:1.6px}.project-visual{height:390px;padding:22px 20px}.project-topline{font-size:7px;letter-spacing:1px}.nexo-word{font-size:125px;letter-spacing:-8px;top:65px;left:7%}.nexo-word span{font-size:55px;margin-left:12px}.calendar{width:270px;right:8%;bottom:50px;padding:15px}.calendar-title{font-size:10px}.calendar-title small{font-size:8px}.calendar-days{margin-top:16px;font-size:10px;gap:6px}.calendar-icon{font-size:13px}.calendar-star{font-size:18px}.time-slots{margin-top:12px}.time-slots span{padding:6px 8px;font-size:8px}.project-caption{left:20px;bottom:16px;right:20px;font-size:6px;line-height:1.6}.project-info{gap:15px}.project-info p{font-size:12px}.round-link{width:45px;height:45px;flex-shrink:0;font-size:20px}.case-detail{grid-template-columns:1fr;gap:5px}.service summary{font-size:27px;gap:15px;letter-spacing:-1px;padding:25px 0}.service-symbol{font-size:25px}.service-body{display:block;padding-left:28px}.service-body p{font-size:13px}.pills{margin-top:20px}.about{display:flex;flex-direction:column;gap:35px}.about-art{min-height:390px}.about-name{font-size:82px}.about-seal{bottom:45px}.about-copy h2{font-size:46px}.steps{grid-template-columns:1fr;gap:25px}.steps h3{margin:14px 0 10px}.steps p{max-width:none}.contact h2{font-size:52px;letter-spacing:-3px}.contact h2>span{font-size:40px;margin-left:10px}.contact-bottom{display:block;margin-top:25px}.contact-bottom .button{margin-top:15px}.contact-links{font-size:10px;gap:15px}footer{flex-wrap:wrap;padding:25px 6%}footer>span{order:3;width:100%;font-size:9px}.cursor-light{display:none}dialog{padding:30px 23px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.motion-ready .reveal{opacity:1;transform:none}.cursor-light{display:none}}
.real-visual{display:block;padding:34px 40px 0;background:radial-gradient(ellipse at top,#443658,#231d30);height:550px}.real-visual>img{width:100%;display:block;object-fit:cover;object-position:top;transition:transform .7s}.real-visual:hover>img{transform:translateY(-12px)}.browser-bar{height:32px;background:#f4f1f9;border-radius:8px 8px 0 0;display:flex;align-items:center;gap:5px;padding:0 14px;color:#645b70;font-size:9px}.browser-bar i{width:5px;height:5px;border-radius:50%;background:#c2b7cf}.browser-bar span{margin:auto}.browser-bar b{font-size:14px}.portfolio-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:45px 30px;margin-top:55px}.portfolio-card:last-child{grid-column:1/-1;max-width:calc(50% - 15px)}.portfolio-image{display:block;width:100%;border:0;padding:22px 22px 0;background:#22272b;height:300px;overflow:hidden;position:relative;border-radius:10px;margin-bottom:22px}.portfolio-card:nth-child(2) .portfolio-image{background:#18283b}.portfolio-card:nth-child(3) .portfolio-image{background:#353e29}.portfolio-image img{display:block;width:100%;height:auto;transition:transform .7s;box-shadow:0 10px 30px #0006}.portfolio-image:hover img{transform:scale(1.04) translateY(-7px)}.portfolio-image>span{position:absolute;right:15px;bottom:15px;background:#14121fd9;border:1px solid #fff4;color:white;padding:10px 15px;border-radius:30px;font-size:10px;backdrop-filter:blur(12px)}.portfolio-card h3,.direction-card h3{font-size:27px;font-weight:500;letter-spacing:-.8px;margin:10px 0}.portfolio-card p{font-size:13px;line-height:1.7;color:var(--muted);max-width:400px}.direction-heading{margin-top:90px;padding-top:50px;border-top:1px solid var(--line)}.direction-heading h3{font:500 47px/1.15 Manrope,sans-serif;letter-spacing:-2px;margin:20px 0}.direction-heading h3 em{font-family:Georgia,serif;font-weight:400;color:#b29bff}.direction-heading p{font-size:14px;color:var(--muted);line-height:1.7}.direction-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:35px}.direction-image{height:220px;overflow:hidden;border-radius:8px;background:#222;margin-bottom:20px}.direction-image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .6s}.direction-card a:hover img{transform:scale(1.06)}.direction-card .eyebrow{font-size:8px;letter-spacing:1px}.direction-card h3{font-size:23px;display:flex;justify-content:space-between}.direction-card h3 span{color:#b29bff}#image-viewer{width:min(1200px,94vw);max-height:92vh;padding:25px;overflow:auto}#image-viewer h2{font-size:24px;margin:0 40px 20px 0}#full-image{width:100%;height:auto;display:block}.close-image{position:absolute;right:15px;top:10px;color:white;background:none;border:0;font-size:28px}@media(max-width:900px){.portfolio-image{height:240px}.direction-grid{gap:16px}.direction-image{height:170px}}@media(max-width:600px){.real-visual{height:300px;padding:20px 14px 0}.real-visual>img{min-height:260px;object-fit:cover;object-position:top}.portfolio-grid{grid-template-columns:1fr;gap:30px;margin-top:35px}.portfolio-card:last-child{grid-column:auto;max-width:none}.portfolio-image{height:270px}.direction-heading{margin-top:55px;padding-top:35px}.direction-heading h3{font-size:39px}.direction-grid{grid-template-columns:1fr;gap:35px}.direction-image{height:230px}.direction-image img{height:auto}.service summary{font-size:25px}.service-number{font-size:10px}.service-symbol{font-size:23px}}

.direction-grid{grid-template-columns:repeat(2,1fr)}.direction-image{height:280px}@media(max-width:600px){.direction-grid{grid-template-columns:1fr}.direction-image{height:230px}}
header .logo-crop,footer .logo-crop{width:88px;height:50px}header .logo-crop img,footer .logo-crop img{width:94px;left:-4px;top:-24px}.hero-copy p.tech-note{font-size:10px;letter-spacing:.5px;color:#c1b2e6;margin-top:18px}.design-preview{position:absolute;top:22px;left:22px;width:1440px;height:1100px;border:0;transform-origin:top left;pointer-events:none;background:white}#full-preview{width:100%;height:70vh;border:0;background:white}#full-image[hidden],#full-preview[hidden]{display:none}.portfolio-image:has(.design-preview){isolation:isolate}.real-visual>img{height:100%;object-fit:cover;object-position:center}.real-visual{padding:0}.real-visual .browser-bar{position:absolute;z-index:1;top:20px;left:20px;right:20px;border-radius:6px;background:#ffffffdf}.portfolio-card:last-child .portfolio-image img{height:100%;object-fit:cover;object-position:center 30%}.direction-image img{object-position:center}.direction-card .direction-image{position:relative}.direction-card .direction-image:after{content:'↗';position:absolute;right:14px;bottom:14px;border-radius:50%;background:#12101acc;color:white;width:34px;height:34px;display:grid;place-items:center}@media(max-width:600px){header .logo-crop,footer .logo-crop{width:70px;height:40px}header .logo-crop img,footer .logo-crop img{width:77px;top:-20px}.service summary{font-size:21px;letter-spacing:-.6px;gap:12px}}
header .logo-crop{width:130px;height:72px}header .logo-crop img{width:142px;left:-7px;top:-36px}.portfolio-card:last-child{grid-column:auto;max-width:none}.portfolio-card.own-project .own-preview{background:radial-gradient(ellipse at 90% 50%,#3c226b,#11121e 65%);padding:30px;text-align:left}.own-preview strong{position:relative;z-index:1;font:500 48px/1.05 Manrope,sans-serif;letter-spacing:-3px;color:#f4f1fc}.own-preview strong em{font-style:normal;color:#a184f3}.portfolio-card.own-project .own-preview>img{position:absolute;width:60%;height:auto;object-fit:contain;right:-15px;top:-15px;box-shadow:none}.own-preview .own-label{position:static;display:block;background:none;border:0;padding:0;margin-bottom:25px;font-size:7px;letter-spacing:1.7px;backdrop-filter:none}.own-preview>span:last-child{font-size:9px}@media(max-width:600px){header .logo-crop{width:104px;height:58px}header .logo-crop img{width:115px;left:-6px;top:-30px}.own-preview strong{font-size:43px}.portfolio-card.own-project .own-preview{padding:24px}}
/* Full-size project viewer: no thumbnail scaling in the modal. */
#image-viewer{position:fixed;inset:0;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;padding:0;border:0;border-radius:0;overflow:hidden;background:#101019}#image-viewer[open]{display:grid;grid-template-rows:auto minmax(0,1fr)}.viewer-toolbar{display:flex;align-items:center;gap:24px;justify-content:space-between;padding:18px 28px;border-bottom:1px solid #fff2;background:#14111f}.viewer-toolbar>div{margin-right:auto}#image-viewer h2{font-size:23px;line-height:1.2;margin:4px 0 0;letter-spacing:-.6px}.viewer-toolbar .eyebrow{font-size:8px}.viewer-toolbar a{font-size:12px;color:#d0baff}.viewer-toolbar .close-image{position:static;flex-shrink:0;border:1px solid #ffffff55;border-radius:30px;background:#24202f;color:#fff;padding:10px 17px;font-size:13px;min-height:44px}.viewer-content{min-height:0;overflow:auto;overscroll-behavior:contain;background:#fff}#full-preview{display:block;width:100%;height:100%;border:0;transform:none;position:static}#full-image{display:block;width:100%;max-width:1200px;height:auto;margin:auto;object-fit:contain}#full-image[hidden],#full-preview[hidden]{display:none}.shireo-section{display:grid;grid-template-columns:1.2fr 1fr;gap:8%;align-items:center;border-top:1px solid var(--line)}.shireo-copy h2{font-size:clamp(36px,4vw,58px)}.shireo-copy>p{font-size:14px;color:var(--muted);line-height:1.8;max-width:540px}.shireo-copy .pills{margin:25px 0}.shireo-actions{display:flex;align-items:center;gap:22px;flex-wrap:wrap}.shireo-actions .text-link{margin:0}.shireo-art{padding:35px;border:1px solid #ffffff20;background:linear-gradient(145deg,#f6f3ff,#e5e0f4);border-radius:16px;color:#211a31;min-height:420px;display:flex;flex-direction:column}.shireo-art>img{width:130px;height:auto;align-self:flex-start}.shireo-art-label{font-size:9px;letter-spacing:2px;margin:35px 0 20px;color:#736587}.time-display{font:500 clamp(28px,3.6vw,49px)/1.15 Manrope,sans-serif;letter-spacing:-2px}.time-display em{font-family:Georgia,serif;color:#7850b9;font-weight:400}.shireo-line{display:flex;justify-content:space-between;border-top:1px solid #76618540;padding-top:20px;margin-top:auto;font-size:10px;letter-spacing:1px}.shireo-line>span:last-child{font-size:20px}@media(max-width:600px){.viewer-toolbar{padding:12px 14px;gap:10px}.viewer-toolbar .eyebrow{display:none}#image-viewer h2{font-size:18px}.viewer-toolbar a{font-size:9px;max-width:85px;line-height:1.4}.viewer-toolbar .close-image{padding:9px 12px;font-size:12px}.shireo-section{grid-template-columns:1fr;gap:30px}.shireo-art{min-height:370px}.time-display{font-size:42px}}
/* Readable type hierarchy across desktop and mobile. */
body{font-size:16px}.eyebrow{font-size:12px;letter-spacing:1.5px}nav{font-size:16px}.nav-cta{font-size:15px}.hero-copy p{font-size:19px;max-width:460px;line-height:1.65}.hero-copy p strong{font-weight:600;color:#e5ddfa}.hero-copy p.tech-note{font-size:15px;line-height:1.7}.button{font-size:16px}.section-heading p,.project-info p,.portfolio-card p,.service-body p,.about-copy p,.steps p,.shireo-copy>p,.direction-heading p{font-size:17px;line-height:1.75}.service-body p{max-width:540px}.pills span{font-size:13px;padding:9px 14px}.service-number{font-size:13px}.portfolio-card h3{font-size:31px}.portfolio-card>.eyebrow,.project-info .eyebrow{font-size:12px}.direction-card .eyebrow{font-size:11px;line-height:1.6}.direction-card h3{font-size:27px}.text-link{font-size:16px}.steps span{font-size:12px}.steps h3{font-size:26px}.contact-bottom p{font-size:18px}.contact-links{font-size:16px}.contact-links button{font-size:13px}.portfolio-image>span{font-size:13px}#nexo-detalle summary{font-size:16px}.case-detail{font-size:16px}.contact .eyebrow{font-size:13px}label{font-size:15px}input,select,textarea{font-size:16px}.form-note,.direct-email{font-size:13px}.hero-bottom{font-size:11px}footer>span{font-size:12px}footer>a:last-child{font-size:11px}.faq-section{padding-top:30px}.faq-section details{border-top:1px solid var(--line);padding:24px 0}.faq-section details:last-child{border-bottom:1px solid var(--line)}.faq-section summary{display:flex;justify-content:space-between;gap:25px;font-size:21px;line-height:1.5}.faq-section summary span{color:#bea1ff}.faq-section details p{max-width:850px;font-size:17px;line-height:1.8;color:var(--muted);margin:20px 0 0}.hero-note{font-size:14px;color:#bcb6ce}.service summary{font-size:clamp(25px,3.15vw,46px)}@media(max-width:600px){nav{font-size:15px}.nav-cta{font-size:14px}.hero-top .eyebrow{font-size:11px;letter-spacing:1px}.hero-copy p{font-size:17px;max-width:none}.hero-copy p.tech-note{font-size:14px}.button{font-size:15px}.eyebrow{font-size:11px}.section-heading p,.project-info p,.portfolio-card p,.service-body p,.about-copy p,.steps p,.shireo-copy>p,.direction-heading p{font-size:16px}.service summary{font-size:24px;letter-spacing:-.7px;gap:12px}.service-number{font-size:12px}.pills span{font-size:12px}.hero-bottom{font-size:9px;letter-spacing:.4px}.hero-bottom a{max-width:140px;text-align:right}.direction-card .eyebrow{font-size:11px}.contact-bottom p{font-size:16px}.contact-links{font-size:13px;flex-wrap:wrap}.contact-links button{font-size:12px}.faq-section summary{font-size:18px}.faq-section details p{font-size:16px}.service-body{padding-left:0}.project-info h3{font-size:35px}}
/* Final composition: Shireo as a prominent, readable product section. */
nav{gap:25px}.nav-shireo{color:#ffc19c}.hero-shireo-link{position:relative;z-index:3;display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;padding:19px 22px;margin:12px 0 25px;border:1px solid #ff98543b;border-radius:12px;background:linear-gradient(110deg,#ef76200e,#18131f);font-size:15px;color:#d7cede}.hero-shireo-link strong{font-weight:500;color:#ffc19c;margin-left:auto}.shireo-link-dot,.shireo-kicker i{display:inline-block;width:7px;height:7px;border-radius:50%;background:#ff9b5b;flex-shrink:0}.shireo-section{position:relative;gap:7%;grid-template-columns:1.15fr 1fr;padding-top:95px;padding-bottom:95px;border-bottom:1px solid #ffffff14;isolation:isolate}.shireo-section:before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse at 85% 40%,#9b411919,transparent 60%);z-index:-1;pointer-events:none}.shireo-kicker{color:#ffc49d;display:flex;align-items:center;gap:9px}.shireo-brand{display:block;width:280px;max-width:80%;height:auto;margin:15px 0 16px}.shireo-copy h2{font-size:clamp(35px,3.6vw,56px);letter-spacing:-2.5px;margin-top:0}.shireo-copy h2 em{color:#ffc49d}.shireo-copy p.shireo-intro{font-size:19px;line-height:1.65;max-width:550px;color:#bdb5c5;margin:22px 0}.shireo-intro strong{color:#f7f2fb;font-weight:500}.shireo-benefits{padding:0;margin:28px 0 30px;list-style:none;display:grid;gap:21px}.shireo-benefits li{display:flex;gap:17px;align-items:flex-start}.shireo-benefits li>span{font-size:11px;color:#ec9c6a;letter-spacing:1px;border:1px solid #f7ae7e3d;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;flex-shrink:0}.shireo-benefits strong{display:block;font-size:17px;font-weight:500}.shireo-benefits p{margin:5px 0 0;font-size:15px;color:#bdb5c5;line-height:1.5}.shireo-actions{gap:20px}.shireo-button{background:#ffac72;color:#29170d;font-weight:600;padding:19px 23px;gap:18px;font-size:15px;line-height:1.4}.shireo-button:hover{box-shadow:0 12px 35px #b95b2833; background:#ffbd90}.shireo-actions .text-link{border-color:#d3926a;color:#f0be9c;font-size:14px}.shireo-copy p.shireo-contact-note{font-size:13px;color:#b0a7b9;line-height:1.6;max-width:460px;margin-top:18px}.shireo-art{position:relative;min-height:0;display:block;padding:0;background:linear-gradient(145deg,#292530,#16151c);border:1px solid #ffffff29;border-radius:24px;color:#faf7ff;box-shadow:0 40px 90px #0004;transform:rotate(2deg);overflow:visible;align-self:center}.shireo-art.visible{transform:rotate(2deg)}.app-preview-top{height:76px;padding:0 28px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #ffffff18;gap:18px}.app-preview-mark{font:700 33px/1 Manrope,sans-serif}.app-preview-mark>span{font-size:10px;color:#f87e39;vertical-align:top;margin-left:2px}.app-preview-top>span:nth-child(2){font-size:10px;letter-spacing:2px;color:#c6bccf}.app-preview-dot{width:7px;height:7px;border-radius:50%;background:#ecb184}.app-preview-body{padding:35px 30px}.app-preview-greeting{font-size:13px;color:#c0b6c8}.app-preview-body h3{font:500 37px/1.17 Manrope,sans-serif;letter-spacing:-1.7px;margin:14px 0 28px}.app-time-card{padding:25px;border:1px solid #ffffff19;border-radius:18px;background:#ffffff07}.app-time-card>span{font-size:9px;letter-spacing:1.7px;color:#c0b6c8}.app-time-card>strong{display:block;font:500 69px/1.4 Manrope,sans-serif;letter-spacing:-3px;font-variant-numeric:tabular-nums}.app-time-card>strong>span{color:#ffac72}.app-status{font-size:12px;color:#e7c1a8;display:flex;align-items:center;gap:8px}.app-status i{width:6px;height:6px;border-radius:50%;background:#ffac72}.app-timeline{margin-top:26px;border-top:1px solid #ffffff27;padding-top:15px;display:flex;justify-content:space-between;font-size:11px;color:#b9b0c1}.app-timeline>span:first-child{color:#ffbc8b}.app-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px;margin-top:15px}.app-mini-grid>div{padding:18px;background:#ffffff05;border:1px solid #ffffff12;border-radius:12px}.app-mini-grid>div>span{color:#ffac72;font-size:23px}.app-mini-grid strong{display:block;margin-top:7px;font-size:14px;font-weight:500}.app-mini-grid small{display:block;font-size:12px;color:#b9b0c1;margin-top:4px}.shireo-preview-caption{padding:0 20px 23px;font-size:8px;letter-spacing:1px;text-align:center;color:#aaa1b3}.app-floating-note{position:absolute;bottom:95px;right:-20px;border-radius:10px;background:#ffbe93;color:#3f2514;padding:15px 20px;font-size:13px;box-shadow:0 12px 30px #0003;transform:rotate(-7deg)}.app-floating-note>span{margin-left:23px}.viewer-content{position:relative}.viewer-loading{position:absolute;inset:0;z-index:2;display:grid;place-items:center;background:#17131f;color:#ded4ed;font-size:16px;pointer-events:none}.viewer-loading[hidden]{display:none}.viewer-toolbar{position:relative;z-index:3}#company-fields[hidden]{display:none}.hero-art{transition:transform .35s ease-out}.ticker:hover>div{animation-play-state:paused}.hero-copy{animation:hero-entrance .85s cubic-bezier(.2,.75,.25,1) both}.hero-art{animation:art-entrance 1.1s ease-out both}.button{position:relative;overflow:hidden}.button:after{content:'';position:absolute;top:-70%;left:-100%;width:45%;height:250%;background:linear-gradient(90deg,transparent,#ffffff26,transparent);transform:rotate(25deg);transition:left .6s;pointer-events:none}.button:hover:after{left:140%}.portfolio-image,.direction-image{transition:box-shadow .4s,transform .4s}.portfolio-image:hover,.direction-card a:hover .direction-image{box-shadow:0 14px 50px #0004;transform:translateY(-3px)}.portfolio-card:nth-child(even).reveal{transition-delay:90ms}#image-viewer[open],#brief[open]{animation:dialog-enter .22s ease-out}#brief{scrollbar-width:thin}.faq-section summary:hover{color:#ceb8ff}@keyframes hero-entrance{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}@keyframes art-entrance{from{opacity:0;scale:.93}to{opacity:1;scale:1}}@keyframes dialog-enter{from{opacity:0}to{opacity:1}}@media(max-width:1000px){nav{gap:15px;font-size:14px}.shireo-section{gap:5%}.shireo-art{transform:none}.shireo-art.visible{transform:none}.app-floating-note{right:-10px}.app-preview-body{padding:27px 22px}.app-preview-body h3{font-size:31px}.shireo-button{font-size:14px}}@media(max-width:700px){header nav{display:none}.shireo-section{grid-template-columns:1fr;padding-top:60px;padding-bottom:65px;gap:35px}.shireo-brand{width:250px;margin-top:13px}.shireo-copy h2{font-size:38px;letter-spacing:-1.9px}.shireo-copy p.shireo-intro{font-size:17px}.shireo-benefits strong{font-size:16px}.shireo-benefits p{font-size:14px}.shireo-art{width:100%;max-width:460px;margin:auto}.app-floating-note{right:0;bottom:88px}.shireo-button{font-size:15px;width:100%;justify-content:space-between}.shireo-actions{gap:18px}.shireo-contact-note{max-width:none}.hero-shireo-link{font-size:14px;padding:17px;line-height:1.6}.hero-shireo-link strong{margin-left:19px}.app-time-card>strong{font-size:62px}.shireo-preview-caption{font-size:8px}.app-preview-body{padding:28px 24px}.app-preview-top{padding:0 24px}.shireo-benefits{gap:19px}.viewer-toolbar a{font-size:11px;max-width:95px}}@media(prefers-reduced-motion:reduce){.hero-copy,.hero-art,#image-viewer[open],#brief[open]{animation:none!important}.shireo-art,.shireo-art.visible{transform:none}.button:after{display:none}.portfolio-image:hover,.direction-card a:hover .direction-image{transform:none}}
/* Vector icons render consistently in Safari, Chrome and Firefox. */
.icon{display:inline-block;width:1em;height:1em;flex-shrink:0;vertical-align:-.12em;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}.button>.icon,.button>span>.icon,.nav-cta .icon,.text-link .icon{width:20px;height:20px}.round-link .icon{width:25px;height:25px}.service-symbol .icon{width:1em;height:1em}.ticker span{display:inline-flex;align-items:center}.period .icon{stroke-width:1.4}.direction-image:after{display:none!important}.direction-open{position:absolute;right:14px;bottom:14px;border-radius:50%;background:#12101add;color:#fff;width:36px;height:36px;display:grid;place-items:center}.direction-open .icon{width:18px;height:18px}.close-modal{display:grid;place-items:center;width:44px;height:44px;top:6px;right:7px}.close-modal .icon{width:22px;height:22px}.close-image{display:inline-flex;align-items:center;justify-content:center;gap:8px}.close-image .icon{width:17px;height:17px}.faq-section summary>span{display:inline-flex;align-items:center}.app-preview-logo{width:95px;height:auto;flex-shrink:0}.app-mini-grid>div>span{display:inline-flex}.hero-shireo-link strong{display:inline-flex;align-items:center;gap:7px}.hero-shireo-link strong .icon{width:18px;height:18px}.shireo-actions .text-link{display:inline-flex;align-items:center;gap:8px}.viewer-toolbar #open-full-design{display:inline-flex;align-items:center;gap:5px}#open-full-design .icon{width:16px;height:16px}.contact h2>span .icon{stroke-width:1.2}.button,.nav-cta,.shireo-art,.floating-tag{-webkit-backface-visibility:hidden}.floating-tag{-webkit-backdrop-filter:blur(15px)}.portfolio-image>span{-webkit-backdrop-filter:blur(12px)}#image-viewer{height:100vh;height:100dvh}html.modal-open,html.modal-open body{overflow:hidden}.viewer-content{-webkit-overflow-scrolling:touch}.hero-art{will-change:transform}@media(max-width:600px){.viewer-toolbar #open-full-design{font-size:11px}.viewer-toolbar #open-full-design .icon{width:14px;height:14px}}
/* One shared hover treatment for every portfolio preview, including iframes. */
.project-visual,.portfolio-image,.direction-image{transition:transform .32s ease,box-shadow .32s ease;box-shadow:inset 0 0 0 1px #ffffff12;transform:translateY(0)}
.project-visual>img,.portfolio-image>img,.direction-image>img{transition:none}
.real-visual:hover>img,.portfolio-image:hover>img,.direction-card a:hover .direction-image>img{transform:none}
.project-visual:hover,.project-visual:focus-visible,.portfolio-image:hover,.portfolio-image:focus-visible,.direction-card a:hover .direction-image,.direction-card a:focus-visible .direction-image{transform:translateY(-4px);box-shadow:inset 0 0 0 2px #aa89f0,0 16px 40px #0005}
@media(hover:none){.project-visual:hover,.portfolio-image:hover,.direction-card a:hover .direction-image{transform:none;box-shadow:inset 0 0 0 1px #ffffff12}}
@media(prefers-reduced-motion:reduce){.project-visual:hover,.project-visual:focus-visible,.portfolio-image:hover,.portfolio-image:focus-visible,.direction-card a:hover .direction-image,.direction-card a:focus-visible .direction-image{transform:none}}

/* Keep project thumbnails filling their cards on mobile too. */
.direction-image img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
