/* MAIOR Studio: a digital workshop, electric blue with a warm action colour. */
:root{--paper:#071126;--ink:#f4f7ff;--blue:#2962ff;--cyan:#77ddff;--green:#ff936b;--muted:#a8b9d1;--line:#294366;--panel:#0e203d;--action:#ff936b}
body{font-family:'DM Sans',sans-serif;background:#071126;overflow-x:clip}h1,h2,h3{font-family:'Sora',sans-serif}h2{font-weight:700}.wordmark{font-family:'Inter Tight',sans-serif}.site-header{background:#071126ed}.site-header nav{gap:23px}.site-header nav .nav-contact{border-color:#3969d2;background:#153a85;border-radius:40px}.site-header nav .nav-contact span{color:var(--action)}
.eyebrow,.eyebrow.light,.manifesto-side .eyebrow{font-family:'DM Sans',sans-serif;text-transform:none;letter-spacing:.1px;color:var(--cyan);font-size:13px}.hero-signature{color:#8dadd2}.hero-small-note,.scroll-invite{color:#94abcd}.portal-hero{overflow:hidden}.portal-hero h1{font-family:'Sora',sans-serif;font-size:clamp(65px,7.1vw,112px);font-weight:800;letter-spacing:-.07em;line-height:1.08}.portal-hero h1 em{font-family:inherit;font-size:1em;letter-spacing:inherit;font-weight:800;font-style:normal;color:var(--cyan);background:none}.portal-hero .hero-description{color:#b6c9e1}.portal-hero .hero-kicker{color:#91c8ff;letter-spacing:.4px;font-family:'DM Sans',sans-serif;font-size:12px;text-transform:none}.kicker-line{background:var(--action);height:3px;width:30px}.portal-hero .hero-actions .button,.contact .button-dark,.button-dark{background:var(--action);color:#17223a;border-radius:50px;box-shadow:none;border-color:var(--action);font-size:13px}.portal-hero .hero-actions .button:hover,.contact .button-dark:hover,.button-dark:hover{background:#ffae90;box-shadow:0 8px 28px #ff936b26}.hero-discover{color:#d0e3fc}.hero-discover span{color:var(--cyan)}body[data-ambiente=blueprint]{--art-primary:#4096ff;--art-secondary:#77ddff}body[data-ambiente=blueprint] .hero-atmosphere{background:radial-gradient(ellipse at 85% 38%,#103e77,#071126 70%)}.hero-art{opacity:.95}.scroll-circle{border-color:#4a82b3;color:var(--cyan)}
.intro-playing .door-left,.intro-playing .door-right,.intro-playing .portal-seam,.intro-playing .hero-copy{animation-duration:5s}.skip-intro{color:#dceaff;border-color:#4f7bb4}.door-note{color:#aac8e7}.portal-seam{box-shadow:0 0 35px 5px #498df088}
.statement-strip{padding:23px 0;background:var(--blue);border:0;overflow:hidden}.strip-track{gap:0;transform:none;animation:word-carousel 28s linear infinite}.strip-group{display:flex;align-items:center;gap:42px;padding-right:42px;flex-shrink:0}.strip-track span{color:white;font-family:'Sora',sans-serif;font-size:clamp(26px,3vw,43px);font-weight:700;letter-spacing:-1.4px}.strip-track svg{width:29px;fill:var(--action);animation:strip-star 12s linear infinite}@keyframes word-carousel{to{transform:translateX(-50%)}}@keyframes strip-star{to{transform:rotate(360deg)}}
.manifesto{border-color:var(--line)}.manifesto h2{font-weight:600}.manifesto h2 em{font-family:inherit;font-size:1em;font-style:normal}.scroll-words .word{color:#485c77}.scroll-words em .word.lit{color:var(--cyan)}.idea-glyph{color:var(--action)}.manifesto-description{color:#adc0db}.manifesto-note{color:#8a9dbb}
.story{height:auto;min-height:0;background:#0a1730;background-image:none;--cycle-opacity:1}.story-stage{position:relative;top:auto;min-height:0;height:auto;padding-block:105px;overflow:clip}.story-layout{grid-template-columns:minmax(0,.7fr) minmax(0,1.5fr);gap:6%}.story-copy h2{font-size:clamp(37px,3.8vw,59px);font-weight:700;letter-spacing:-3px}.story-copy h2 em,h2 em,.contact-heading h2 span{font-family:inherit;font-style:normal;font-size:1em;background:none;color:var(--cyan)}.story-intro{display:block;color:#adc0db;max-width:420px}.scene-controls button{color:#91abc9}.scene-controls button[aria-pressed=true]{color:var(--action)}.scene-descriptions{min-height:110px}.scene-descriptions p{color:#abc0d8}.construction-workspace{min-width:0}.construction-canvas{background:#07162f;border-color:#345c93}.workspace-top,.build-console{background:#102449;border-color:#345c93}.workspace-top,.build-console p{color:#a4c9f5}.workspace-top i,.workspace-status{color:var(--cyan)}.build-browser,.build-phone{filter:opacity(var(--cycle-opacity));}.scene-progress span{transform:scaleX(var(--story-progress));background:var(--action)}.demo-note{color:#92accc;font-family:'DM Sans',sans-serif;font-size:10px}.built-nav>b,.phone-nav>b{font-family:'Inter Tight',sans-serif;font-weight:900;letter-spacing:-.06em}.built-nav>b span,.phone-nav>b span{color:#367be6}.built-copy h3,.phone-site h3{font-family:'Sora',sans-serif}.built-copy h3 em,.phone-site h3 em{background:none;color:var(--cyan)}.built-cta,.phone-cta{background:var(--action);color:#17223a}.build-cursor span{background:var(--blue);color:#fff}.build-cursor svg{fill:var(--cyan)}
.services,.portfolio,.process{padding-block:110px}.service-row{background:transparent;border:0;border-top:1px solid #345075;border-radius:0;box-shadow:none}.service-row:last-child{border-bottom:1px solid #345075}.service-row:hover{background:#102545;border-color:#4a81ca}.service-number{border-color:#396ec2;color:var(--cyan)}.service-link{border-color:#477bb2;color:var(--action)}.service-row h3{letter-spacing:-1px}.tags span{color:#adc0db;border-color:#365271}.principles{background:#103a8b;border:0}.principles h2{letter-spacing:-2px}.principle-list article>span,.process-index{color:var(--action)}.principle-list p,.principles .eyebrow{color:#b7d4ff}.process-grid li::before{background:var(--action)}
.portfolio .heading-split{margin-bottom:50px}.portfolio-project{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:stretch;gap:0}.project-showcase{position:relative;min-width:0;padding:65px 36px 75px;background:#e9dfce;overflow:hidden;border-radius:16px 0 0 16px;display:flex;align-items:center}.project-edition{position:absolute;left:30px;top:25px;color:#806753;font-size:10px;letter-spacing:1.3px}.portfolio-browser{display:block;width:100%;overflow:hidden;border:1px solid #9c8065;border-radius:9px;background:#f5ede0;box-shadow:0 24px 50px #3e281e30;transform:rotate(-3deg);animation:project-float 9s ease-in-out infinite;transition:box-shadow .4s}.portfolio-browser:hover{box-shadow:0 30px 55px #3e281e50}.portfolio-browser:focus-visible{outline-color:#224dda}.portfolio-browser-bar{height:30px;padding:0 12px;background:#d5c4ac;display:flex;align-items:center;justify-content:space-between;font-size:9px;color:#422e21}.portfolio-browser-bar .window-dots i{background:#93735c}.project-screen{overflow:hidden;aspect-ratio:1.48}.project-screen img{width:100%;height:100%;object-fit:cover;object-position:top;animation:project-breathe 12s ease-in-out infinite}.project-stamp{position:absolute;bottom:22px;right:26px;background:#452919;color:#fff4dd;padding:17px 23px;transform:rotate(5deg);display:grid;gap:3px;border-radius:3px}.project-stamp>span:first-child{font-size:11px}.project-stamp strong{font-family:'Sora',sans-serif;font-size:22px;letter-spacing:-1px}.project-stamp>span:last-child{font-size:7px;letter-spacing:1px;margin-top:6px}.project-story{background:#0e2548;border:1px solid #2e4b76;border-left:0;padding:48px 40px;border-radius:0 16px 16px 0}.project-story h3{font-size:clamp(30px,3.2vw,50px);letter-spacing:-2.6px;line-height:1.12;margin:18px 0 26px}.project-story h3 em{font-style:normal;color:#f3d4a6}.project-story>p:not(.eyebrow){color:#bacbe0;max-width:40ch;font-size:14px;line-height:1.85}.project-deliverables{display:grid;gap:10px;margin:25px 0 30px;font-size:11px;color:#bdd5f5}.project-deliverables span::before{content:'+';color:var(--action);margin-right:10px}.project-visit{display:flex;justify-content:space-between;align-items:center;padding:15px 0;border-block:1px solid #41628c;font-weight:600;font-size:14px}.project-visit span{color:var(--action);font-size:25px;transition:transform .3s}.project-visit:hover span{transform:translate(4px,-4px)}.project-next{font-size:11px;color:#94bee9;display:inline-block;margin-top:23px}.project-next:hover{color:white}@keyframes project-float{0%,100%{transform:rotate(-3deg) translateY(0)}50%{transform:rotate(-1deg) translateY(-10px)}}@keyframes project-breathe{50%{transform:scale(1.025)}}
.contact{background:#0b2044;border-top:1px solid #355888}.contact::before{background:none}.contact-heading h2{font-family:'Sora',sans-serif;font-size:clamp(46px,5.2vw,80px);letter-spacing:-4px;line-height:1.06}.contact-grid{grid-template-columns:1fr;gap:45px;margin-top:42px}.contact-info{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;align-items:start}.contact-info>p{max-width:45ch;margin:0 0 20px}.contact-info .phone-link{grid-column:1;font-size:30px;margin-bottom:0}.contact-info .contact-meta{grid-column:1;margin-top:3px}.contact-info .plain-link{grid-column:1;margin-top:14px;justify-self:start;color:var(--cyan)}.contact-info .contact-place{grid-column:2;grid-row:1/5;margin:0;border-left:1px solid #315888;padding-left:40px;max-width:390px}.phone-link{color:white}.phone-link>span{color:var(--action)}
.project-builder{min-width:0;scroll-margin-top:105px}.wizard-layout{display:grid;grid-template-columns:minmax(0,1.8fr) minmax(270px,1fr);gap:22px;align-items:start}.project-wizard{background:#07172f;border:1px solid #315689;border-radius:18px;padding:34px;min-width:0}.wizard-top{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:12px;color:#adcaef}.wizard-top #step-count{font-size:10px;letter-spacing:1px}.wizard-meter{height:3px;background:#1d3657;margin:19px 0 23px;overflow:hidden}.wizard-meter span{display:block;width:20%;height:100%;background:var(--action);transition:width .5s cubic-bezier(.2,.8,.2,1)}.wizard-steps{display:flex;justify-content:space-between;gap:8px;margin-bottom:35px}.wizard-steps button{display:grid;justify-items:center;gap:7px;min-width:45px;border:0;background:none;color:#94adcd;font-size:10px;padding:0}.wizard-steps button b{display:grid;place-items:center;height:30px;width:30px;border:1px solid #34577e;border-radius:50%;font-size:12px;transition:background .35s,color .35s,box-shadow .35s}.wizard-steps button[aria-current=step]{color:#fff}.wizard-steps button[aria-current=step] b{background:var(--action);border-color:var(--action);color:#14223b;box-shadow:0 0 0 4px #ff936b20}.wizard-steps button:disabled{opacity:.45;cursor:default}.wizard-panels{min-height:340px;transition:min-height .4s}.wizard-panel h3{font-size:25px;line-height:1.25;letter-spacing:-1.3px;margin:0 0 11px;outline:none}.wizard-panel h3>span{font-family:'DM Sans',sans-serif;font-size:13px;letter-spacing:0;color:var(--action);margin-right:12px}.wizard-hint{font-size:12px;line-height:1.7;color:#9fb9da;margin:0 0 24px;max-width:55ch}.wizard-panel fieldset{margin:0;padding:0;border:0;min-width:0}.choice-grid{display:grid;grid-template-columns:1fr 1fr;gap:11px}.choice{position:relative;display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:95px;padding:18px 15px;background:#102442;border:1px solid #315274;border-radius:9px;cursor:pointer;transition:background .25s,border-color .25s,transform .25s}.choice:hover{background:#153058;border-color:#629be1;transform:translateY(-2px)}.choice input{position:absolute;opacity:0;width:1px;height:1px;inset:18px auto auto 18px}.choice:has(input:checked){background:#1a3b72;border-color:#6fb6ff}.choice:has(input:focus-visible){outline:2px solid var(--action);outline-offset:3px}.choice strong{display:block;font-size:12px;font-weight:600;line-height:1.45}.choice small{display:block;font-size:10px;line-height:1.6;color:#a6bfdf;margin-top:5px}.choice i{height:16px;width:16px;flex-shrink:0;border:1px solid #6883a6;border-radius:50%;display:grid;place-items:center}.choice:has(input:checked) i{border-color:var(--action);background:var(--action)}.choice:has(input:checked) i::after{content:'✓';font-style:normal;font-size:11px;color:#0c1c35}.wizard-details{margin-top:23px!important}.wizard-panel .field{color:#d5e7ff;font-size:12px}.wizard-panel .field input,.wizard-panel .field textarea{background:#102442;border:1px solid #34577e;color:white;border-radius:7px;font-size:13px;padding:12px}.wizard-panel .field textarea{min-height:78px;resize:vertical}.wizard-panel .field input::placeholder,.wizard-panel .field textarea::placeholder{color:#8da6c7}.wizard-panel .field-row{gap:15px}.wizard-privacy{font-size:11px;line-height:1.7;color:#92adcf;margin-top:25px}.form-error{font-size:12px;min-height:20px;color:#ffb697;margin:15px 0 12px}.wizard-actions{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-top:20px;border-top:1px solid #2c476c}.wizard-back{background:none;border:1px solid #6081aa;border-radius:40px;color:#c2d7f1;padding:13px 20px;font-size:12px;display:flex;align-items:center;gap:15px;transition:background .2s}.wizard-back:hover{background:#173459}.wizard-back:disabled{opacity:.35;cursor:default}.wizard-actions .button{min-height:45px;padding:12px 21px;font-size:12px}.project-wizard .form-note{font-size:10px;color:#8ca8cc;text-align:right;margin:18px 0 0}.project-ticket{position:sticky;top:105px;border:1px solid #3866a3;background:#123b88;border-radius:18px;padding:30px;min-width:0}.ticket-top{display:flex;justify-content:space-between;gap:14px;align-items:center}.mini-wordmark{font-family:'Inter Tight',sans-serif;letter-spacing:-2px;font-size:32px;font-weight:900;line-height:1}.mini-wordmark>span{color:#77ddff}.ticket-top>span:last-child{font-size:8px;letter-spacing:.8px;color:#c0d6ff;max-width:90px}.project-ticket h3{font-size:29px;letter-spacing:-1.8px;line-height:1.15;margin:37px 0 29px;font-weight:600}.project-ticket h3 em{font-style:normal;color:var(--cyan)}.project-ticket dl{margin:0}.project-ticket dl>div{border-top:1px solid #5685c680;padding:14px 0;display:grid;gap:6px}.project-ticket dt{color:#a7ccff;font-size:10px}.project-ticket dd{margin:0;font-size:12px;color:#fff;line-height:1.5;overflow-wrap:anywhere;transition:color .25s}.ticket-bottom{border-top:1px dashed #6c9fe1;padding-top:23px;margin-top:14px;display:flex;align-items:center;gap:16px}.ticket-spark{color:var(--action);font-size:37px;line-height:1}.ticket-bottom p{font-size:12px;margin:0}.ticket-bottom small{display:block;font-size:10px;color:#b5d0f2;line-height:1.6;margin-top:5px}.project-review{grid-column:1/-1;background:#07172f;border:1px solid #315689;border-radius:18px;padding:40px;min-width:0}.project-review h3{font-family:'Sora',sans-serif;font-size:clamp(32px,4vw,52px);font-weight:700;letter-spacing:-2px;line-height:1.1;margin:15px 0}.project-review h3 em{font-style:normal;color:var(--cyan)}.project-review>p{color:#adc6e7;font-size:13px}.project-review pre{background:#102442;border-color:#315274;border-radius:9px;color:#dcecff;font-family:'DM Sans',sans-serif;white-space:pre-wrap;overflow-wrap:anywhere;font-size:13px;line-height:1.8;max-width:850px;margin:25px 0}.edit-project{color:#a9ceff;padding:15px;margin-left:12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.footer{background:#050c1b}.footer-top .wordmark-dot{color:#367be6}
@media(min-width:1600px){.portal-hero h1{font-size:clamp(112px,7.5vw,155px)}}
@media(max-width:1100px){.site-header nav{gap:16px;font-size:11px}.project-story{padding:36px 26px}.project-showcase{padding-inline:24px}.wizard-layout{grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr)}.project-wizard{padding:26px}.project-ticket{padding:25px}.choice{padding:15px 12px}}
@media(max-width:760px){.portal-hero h1{font-size:clamp(47px,10.6vw,79px);letter-spacing:-.065em;line-height:1.12}.portal-hero h1 em{font-size:1em}.portal-hero .hero-kicker{font-size:10px}.portal-hero .hero-actions .button{font-size:11px}.site-header nav{font-size:16px;gap:0}.strip-group{gap:27px;padding-right:27px}.strip-track span{font-size:28px}.strip-track svg{width:23px}.story-stage{padding-block:65px}.story-layout{grid-template-columns:1fr;gap:30px}.story-copy h2{font-size:39px;letter-spacing:-2.3px;line-height:1.12}.story-intro{display:block;font-size:13px;max-width:46ch}.scene-controls{margin-top:23px;display:flex;flex-direction:row;flex-wrap:wrap;gap:4px 18px;border:0}.scene-controls button{font-size:10px;border:0;padding:8px 0;gap:6px}.scene-controls button span{font-size:8px}.scene-controls button[aria-pressed=true]::after{display:none}.scene-descriptions{min-height:67px;margin-top:13px}.scene-descriptions p{font-size:12px;line-height:1.7}.construction-canvas{height:310px;padding:14px}.workspace-top{font-size:7px;padding:12px}.demo-note{font-size:9px;margin-top:13px}.story .built-copy h3{font-size:clamp(15px,4.3vw,23px);line-height:1.12}.story .built-media{min-height:100px}.services,.portfolio,.process{padding-block:70px}.portfolio-project{grid-template-columns:1fr}.project-showcase{padding:65px 24px 75px;border-radius:14px 14px 0 0;min-height:350px}.project-story{padding:32px 26px;border:1px solid #2e4b76;border-top:0;border-radius:0 0 14px 14px}.project-story h3{font-size:40px}.project-story>p:not(.eyebrow){max-width:none}.project-stamp{bottom:20px;right:22px;padding:12px 18px}.project-stamp strong{font-size:19px}.project-showcase .project-screen{aspect-ratio:1.48}.portfolio .heading-split{margin-bottom:30px}.contact-heading h2{font-size:clamp(39px,9vw,65px);letter-spacing:-2.7px}.contact-info{display:block}.contact-info .contact-place{border:0;padding:0;margin-top:30px;max-width:370px}.contact-info .phone-link{font-size:29px}.wizard-layout{grid-template-columns:1fr;gap:18px}.project-wizard{padding:24px 20px;border-radius:14px}.project-ticket{position:relative;top:0;border-radius:14px;padding:23px}.project-ticket h3{font-size:27px;margin:22px 0}.project-ticket dl{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.ticket-bottom{padding-top:15px;margin-top:5px}.wizard-panel h3{font-size:23px}.wizard-panels{min-height:350px}.wizard-steps{margin-bottom:29px;gap:3px}.wizard-steps button{font-size:9px;min-width:38px}.wizard-steps button b{height:27px;width:27px}.choice-grid{gap:10px;grid-template-columns:1fr}.choice{min-height:76px;padding:15px}.choice strong{font-size:12px}.choice small{font-size:11px}.wizard-panels{min-height:390px}.wizard-hint{font-size:12px;margin-bottom:20px}.wizard-panel .field-row{grid-template-columns:1fr}.project-review{padding:25px 20px;border-radius:14px}.edit-project{margin-left:0;display:block;padding-left:0}.project-ticket[hidden]{display:none!important}.project-wizard .form-note{text-align:left}.wizard-top #step-count{font-size:9px}.wizard-top #step-name{font-size:11px}.contact-grid{gap:35px}.project-ticket .ticket-top>span:last-child{max-width:none}}
@media(max-width:360px){.portal-hero h1{font-size:10.5vw}.portal-hero .hero-actions{gap:12px}.portal-hero .hero-actions .button{padding:12px 13px;font-size:10px;gap:10px}.hero-discover{font-size:8px}.story-copy h2{font-size:34px}.scene-controls{gap:4px 12px}.scene-controls button{font-size:9px}.construction-canvas{height:285px;padding:9px}.story .built-copy h3{font-size:14px}.project-wizard{padding:22px 16px}.wizard-panel h3{font-size:21px}.wizard-actions .button{padding:11px 15px;font-size:11px;gap:13px}.wizard-back{padding:12px 15px;gap:10px}.project-showcase{padding-inline:16px;min-height:300px}.project-ticket dl{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.strip-track{animation-duration:80s}.strip-track svg,.portfolio-browser,.project-screen img{animation:none}.choice,.wizard-meter span{transition:none}}
@media print{.strip-track,.portfolio-browser{animation:none}.project-wizard,.project-ticket{break-inside:avoid}.story-stage{padding-block:20px}}
/* Keep directional symbols on a font with complete arrow coverage. */
.button>span,.nav-contact>span,.project-visit>span,.service-link,.plain-link>span,.phone-link>span{font-family:Arial,sans-serif}
.arrow-icon{width:19px;height:19px;flex-shrink:0}.service-link .arrow-icon{width:23px;height:23px}.built-cta .arrow-icon{width:10px;height:10px}.ticket-spark,.idea-glyph{font-family:Arial,sans-serif}.scene-controls button[aria-pressed=true]::after{content:'';height:12px;width:12px;background:no-repeat center/contain url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23ff936b' stroke-width='2'%3E%3Cpath d='M5 19 19 5M5 5h14v14'/%3E%3C/svg%3E")}.project-builder{scroll-margin-top:0}.project-wizard,.project-review{scroll-margin-top:0}
.ticket-spark svg{width:37px;height:37px}
