@font-face{font-family:JemaDisplay;src:url('./jema-assets/BebasNeue-Regular.ttf') format('truetype');font-display:swap;font-weight:400}
@font-face{font-family:JemaSans;src:url('./jema-assets/Montserrat-VariableFont_wght.ttf') format('truetype');font-display:swap;font-weight:100 900}
:root{--ink:#131414;--paper:#f7f7f5;--muted:#727572;--accent:#fe6e0a;--line:#d7d8d3;--display:JemaDisplay,'Arial Narrow',Impact,sans-serif;--body:JemaSans,Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:6rem}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 var(--body)}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400}h1,h2,.display{font-family:var(--display);line-height:1.02;letter-spacing:0}.shell{width:min(1440px,100% - 7rem);margin-inline:auto}.eyebrow{font-size:.875rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase}.section-kicker{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.section-kicker:before{content:'';display:block;width:1.6rem;height:2px;background:var(--accent)}.accent{color:var(--accent)}.button{min-height:3.3rem;display:inline-flex;align-items:center;justify-content:center;gap:1.5rem;padding:.8rem 1.35rem;border:1px solid var(--ink);background:var(--ink);color:white;font-size:.875rem;font-weight:600;transition:background .2s,color .2s,transform .2s}.button:hover{background:var(--accent);border-color:var(--accent);color:var(--ink);transform:translateY(-2px)}.button svg{width:1.15rem;height:1.15rem;flex-shrink:0}.button--orange{background:var(--accent);border-color:var(--accent);color:var(--ink)}.button--orange:hover{background:#ff9c65;border-color:#ff9c65}.button--outline{background:transparent;color:var(--ink)}.text-link{display:inline-flex;align-items:center;gap:1rem;font-weight:600;font-size:.875rem;border-bottom:1px solid;padding-block:.35rem}.text-link svg{height:1rem;width:1rem}.skip{position:fixed;top:-5rem;left:1rem;background:var(--accent);padding:.75rem 1rem;z-index:100}.skip:focus{top:1rem}:focus-visible{outline:3px solid #ed5c13;outline-offset:5px}section{scroll-margin-top:6rem}::selection{background:var(--accent);color:var(--ink)}
.site-header{height:6.25rem;position:relative;z-index:20;background:var(--ink);color:var(--paper);border-bottom:1px solid #ffffff25}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:2rem}.brand{display:flex;align-items:center;gap:.8rem}.brand img{width:145px;max-height:50px;object-fit:contain}.brand-label{font-size:.65rem;line-height:1.4;letter-spacing:.1em;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:2rem}.desktop-nav>a{font-size:.875rem}.desktop-nav>a:hover{color:var(--accent)}.header-contact{font-size:.875rem;font-weight:600;display:inline-flex;align-items:center;gap:1.25rem}.header-contact svg{height:1.1rem;width:1.1rem}.menu-toggle{display:none;padding:.75rem;color:var(--paper);background:none;border:1px solid #ffffff55;align-items:center;gap:.5rem;font-size:.875rem}.menu-toggle svg{width:1.1rem;height:1.1rem}.mobile-nav{position:absolute;top:100%;inset-inline:0;background:var(--ink);padding:1rem 1.5rem 1.5rem;border-bottom:1px solid var(--line)}.mobile-nav a{display:block;padding:.85rem 0;border-bottom:1px solid var(--line)}[hidden]{display:none!important}
.hero{padding-top:2.2rem}.hero-topline{display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;letter-spacing:.1em;font-weight:500;text-transform:uppercase;margin-bottom:1.6rem}.hero-stage{position:relative;min-height:640px;overflow:hidden;background:#242925;color:#fff;isolation:isolate}.hero-image{position:absolute;width:100%;height:100%;inset:0;object-fit:cover;object-position:center 45%;z-index:-3}.hero-stage:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.15) 80%),linear-gradient(0deg,rgba(0,0,0,.3),transparent 60%);z-index:-1}.hero-content{padding:3.5rem;min-height:640px;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.hero h1{font-size:clamp(4.7rem,7.8vw,8.5rem);max-width:850px;margin:1.2rem 0 1.5rem}.hero h1 span{display:block}.hero-intro{max-width:28rem;color:#eee;line-height:1.7;margin-bottom:2rem}.hero-bottom{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:1.35rem 0;border-bottom:1px solid var(--line)}.hero-bottom p{font-size:.875rem;color:var(--muted)}.hero-bottom .disciplines{display:flex;gap:1.1rem;flex-wrap:wrap;font-size:.75rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase}.hero-bottom .disciplines span+span:before{content:'/';margin-right:1.1rem;color:#a9aaa5}.hero-play{position:absolute;right:3.5rem;bottom:3.5rem;display:flex;align-items:center;gap:1rem;background:transparent;color:white;border:0;font-size:.875rem}.play-circle{display:grid;place-items:center;width:3.5rem;height:3.5rem;border:1px solid #ffffff90;border-radius:50%;transition:background .2s}.play-circle svg{width:1rem;height:1rem;margin-left:.15rem}.hero-play:hover .play-circle{background:var(--accent);border-color:var(--accent);color:var(--ink)}
.intro{padding-block:7rem;display:grid;grid-template-columns:1fr 1.25fr;gap:6rem;align-items:start}.intro h2{font-size:clamp(3rem,4.6vw,5rem);max-width:36rem}.intro-copy{padding-top:3rem;max-width:34rem}.intro-copy p{font-size:1.1rem;color:#545750;line-height:1.85}.intro-copy .text-link{margin-top:1.4rem}.work-section{padding-bottom:7rem}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.5rem}.section-heading h2{font-size:clamp(3.5rem,5.5vw,6rem)}.section-heading>p{font-size:1rem;max-width:23rem;color:#5a5d55}.work-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}.work-card{min-width:0}.work-visual{position:relative;background:#242826;aspect-ratio:1.3;overflow:hidden;width:100%;padding:0;border:0;display:block;color:white}.work-visual img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.work-visual:hover img{transform:scale(1.035)}.work-visual .play-circle{position:absolute;right:1.5rem;bottom:1.5rem;background:#1118;backdrop-filter:blur(8px)}.work-visual .work-label{position:absolute;top:1.5rem;left:1.5rem;background:var(--paper);padding:.4rem .7rem;color:var(--ink);font-size:.75rem;letter-spacing:.09em;text-transform:uppercase}.work-meta{display:flex;justify-content:space-between;gap:1rem;align-items:start;padding-top:1.2rem}.work-meta h3{font-size:1.25rem;font-weight:500}.work-meta p{font-size:.875rem;color:var(--muted);padding-top:.25rem}.work-meta .number{font-size:.875rem;color:var(--muted)}.portfolio-more{display:flex;justify-content:center;margin-top:2.5rem}
.services{background:var(--ink);color:var(--paper);padding-block:6rem}.services .section-heading>p{color:#b9bcb6}.service-row{border-top:1px solid #ffffff30}.service-row:last-of-type{border-bottom:1px solid #ffffff30}.service-row summary{list-style:none;display:grid;grid-template-columns:4rem 1fr 1.15fr 2rem;align-items:center;gap:2rem;padding:1.8rem 0;cursor:pointer}.service-row summary::-webkit-details-marker{display:none}.service-row summary .service-number{font-size:.875rem;color:#a6a9a2}.service-row summary h3{font-family:var(--display);font-size:2.6rem;line-height:1.1}.service-row summary .service-summary{font-size:.875rem;color:#b9bcb6}.service-row summary .expand{font-size:1.8rem;line-height:1;transition:transform .2s;text-align:center;color:var(--accent)}.service-row[open] summary .expand{transform:rotate(45deg)}.service-detail{padding:0 4rem 2.2rem 6rem;max-width:60rem;color:#c9ccc6;font-size:1rem}.service-detail p{margin-bottom:1.25rem}.service-detail ul{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:0 0 1.5rem}.service-detail li{border:1px solid #ffffff36;font-size:.875rem;padding:.35rem .7rem}.service-detail .text-link{color:var(--paper)}
.about{padding-block:7rem;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center}.about-mark{border:1px solid var(--line);min-height:420px;padding:3rem;display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.about-mark .years{font-family:var(--display);font-size:clamp(10rem,20vw,20rem);line-height:1;color:var(--accent);margin-block:1rem -.5rem}.about-mark .anniversary{font-size:1rem;max-width:15rem}.about-mark .since{position:absolute;top:3rem;right:3rem;writing-mode:vertical-rl;font-size:.75rem;letter-spacing:.12em}.about h2{font-size:clamp(3.4rem,4.8vw,5rem);margin-bottom:1.5rem}.about-copy>p{color:#545750;font-size:1.05rem;margin-bottom:1.3rem;max-width:33rem}.about-copy .text-link{margin-top:.5rem}.people{display:flex;flex-wrap:wrap;gap:2rem;padding-top:1rem}.people div{padding-top:1rem;border-top:1px solid var(--line);flex:1;min-width:10rem}.people strong{font-size:.9rem;display:block;font-weight:600}.people span{font-size:.875rem;color:var(--muted)}
.contact{background:#f0f1f2;padding-block:5.5rem;border-top:1px solid #e0e2e3}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem}.contact h2{font-size:clamp(4rem,6vw,6.5rem);margin-bottom:1.5rem}.contact-copy>p{max-width:25rem;font-size:1.05rem;line-height:1.75}.contact-direct{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem;margin-top:2rem}.contact-form{padding-top:.5rem}.contact .section-kicker{margin-bottom:1.5rem}.contact-direct .text-link{border-bottom-color:var(--accent)}.contact-direct>a:last-child:hover{color:#a33e00}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.field{display:flex;flex-direction:column;gap:.4rem}.field-wide{grid-column:1/-1}.field label{font-size:.875rem;font-weight:600}.field input,.field select,.field textarea{width:100%;min-width:0;background:#fff;border:1px solid #cbd0d3;border-radius:0;min-height:3.2rem;padding:.65rem .85rem;color:var(--ink);outline-offset:3px}.field textarea{resize:vertical;min-height:6rem}.field input::placeholder,.field textarea::placeholder{color:#696f73;opacity:1}.field select{appearance:auto}.contact-form button[type=submit]{width:100%;margin-top:1.4rem}.contact-form button[type=submit] svg{color:var(--accent)}.contact-form button[type=submit]:hover svg{color:var(--ink)}.form-note{font-size:.875rem;line-height:1.5;margin-top:.8rem;color:#5c6368}.generated-message{background:#fff;border-left:3px solid var(--accent);padding:1rem;margin-top:1.2rem}.generated-message p{margin-bottom:.75rem;font-size:.9rem}.site-footer{background:var(--ink);color:var(--paper);padding-block:3rem 6.5rem}.footer-top{display:flex;justify-content:space-between;align-items:start;gap:3rem;padding-bottom:2.5rem}.footer-brand img{width:145px}.footer-brand p{font-size:.8rem;color:#aaa;margin-top:.75rem}.footer-address{font-size:.875rem;color:#b4b7b1}.footer-links{display:flex;gap:1.5rem;flex-wrap:wrap;font-size:.875rem}.footer-links a:hover{color:var(--accent)}.footer-bottom{display:flex;justify-content:space-between;gap:1rem;border-top:1px solid #ffffff26;padding-top:1.25rem;font-size:.75rem;color:#a7aaa4}.footer-bottom a{color:var(--paper)}
.video-dialog{width:min(1100px,calc(100% - 2rem));max-height:calc(100dvh - 2rem);padding:0;border:1px solid #ffffff30;background:var(--ink);color:#fff;overflow:auto}.video-dialog::backdrop{background:#060707df;backdrop-filter:blur(6px)}.dialog-top{display:flex;justify-content:space-between;gap:1rem;align-items:center;padding:1rem 1.25rem}.dialog-top h2{font-family:var(--body);font-size:1rem;font-weight:500;line-height:1.5}.close-dialog{background:transparent;border:1px solid #ffffff55;color:white;padding:.45rem .7rem;font-size:.875rem}.video-frame{aspect-ratio:16/9;background:#000}.video-frame iframe{width:100%;height:100%;border:0}.dialog-bottom{font-size:.875rem;padding:.8rem 1.25rem;color:#c6c6c6}.dialog-bottom a{border-bottom:1px solid}
@media(min-width:1700px){.hero-stage,.hero-content{min-height:720px}}
@media(max-width:1100px){.shell{width:calc(100% - 4rem)}.desktop-nav{gap:1.25rem}.hero-stage,.hero-content{min-height:580px}.hero-content{padding:2.5rem}.hero-play{right:2.5rem;bottom:2.5rem}.intro,.about{gap:3rem}.intro-copy{padding-top:2rem}.contact-grid{gap:3rem}.service-row summary{grid-template-columns:2rem 1fr 1fr 2rem;gap:1.5rem}.service-detail{padding-left:3.5rem}.about-mark{padding:2rem}.about-mark .since{top:2rem;right:2rem}}
@media(max-width:800px){.shell{width:calc(100% - 3rem)}.site-header{height:5rem}.desktop-nav,.header-contact{display:none}.menu-toggle{display:inline-flex}.hero{padding-top:1.25rem}.hero-topline{font-size:.65rem;margin-bottom:1rem}.hero-topline span:last-child{display:none}.hero-stage,.hero-content{min-height:590px}.hero-content{padding:2rem;justify-content:center;padding-bottom:7rem}.hero h1{font-size:clamp(4.5rem,11vw,6.3rem)}.hero-intro{max-width:24rem}.hero-play{right:2rem;bottom:1.8rem}.hero-bottom{align-items:start;flex-direction:column;gap:.5rem}.hero-bottom .disciplines{font-size:.7rem}.intro{padding-block:4rem;grid-template-columns:1fr;gap:1.5rem}.intro h2{max-width:35rem}.intro-copy{padding-top:0;max-width:35rem}.intro-copy p{font-size:1rem}.section-heading{align-items:start;flex-direction:column;gap:1rem}.work-grid{gap:1.25rem}.work-visual{aspect-ratio:.9}.work-label{max-width:calc(100% - 2rem)}.work-visual .work-label{top:1rem;left:1rem;font-size:.65rem}.work-meta h3{font-size:1.05rem}.work-meta .number{display:none}.work-section{padding-bottom:4rem}.services{padding-block:4rem}.service-row summary{grid-template-columns:1.5rem 1fr 1.5rem;gap:1rem;padding:1.5rem 0}.service-row summary h3{font-size:2.2rem}.service-summary{display:none}.service-detail{padding:0 1rem 1.75rem 2.5rem}.about{padding-block:4rem;gap:2rem}.about-mark{min-height:350px;padding:1.5rem}.about-mark .years{font-size:10rem}.about-mark .since{top:1.5rem;right:1.5rem}.about h2{font-size:3.1rem}.about-copy>p{font-size:1rem}.people{gap:1rem}.contact{padding-block:4rem}.contact-grid{grid-template-columns:1fr;gap:2.5rem}.contact h2{font-size:4.5rem}.footer-top{flex-wrap:wrap;gap:2rem}.footer-links{width:100%;gap:1.5rem}.footer-bottom{flex-wrap:wrap}}
@media(max-width:520px){.shell{width:calc(100% - 2rem)}.brand img{width:125px}.hero-stage,.hero-content{min-height:620px}.hero-content{padding:1.5rem;padding-bottom:8rem}.hero h1{font-size:clamp(3.5rem,14vw,5rem);margin-top:1rem}.hero .eyebrow{font-size:.7rem}.hero-intro{font-size:.95rem;max-width:22rem}.hero-play{left:1.5rem;right:auto;bottom:1.8rem}.hero-image{object-position:58% center}.hero-stage:after{background:linear-gradient(90deg,#000b,#0004),linear-gradient(0deg,#0005,transparent)}.hero-bottom .disciplines{gap:.65rem;font-size:.65rem}.hero-bottom .disciplines span+span:before{margin-right:.65rem}.hero-bottom p{font-size:.8rem}.intro h2{font-size:3.2rem}.section-heading h2{font-size:3.8rem}.work-grid{grid-template-columns:1fr;gap:2rem}.work-visual{aspect-ratio:1.2}.work-meta h3{font-size:1.2rem}.work-visual .work-label{font-size:.75rem}.work-meta .number{display:block}.service-row summary h3{font-size:2rem}.service-detail{padding-left:2.5rem}.about{grid-template-columns:1fr;gap:2.5rem}.about-mark{min-height:310px;order:2;padding:1.5rem 2rem}.about-mark .years{font-size:12rem;margin-block:0}.about-mark .anniversary{position:absolute;right:2rem;bottom:2rem;max-width:8rem;font-size:.875rem}.about-mark .since{right:2rem}.about h2{font-size:3.7rem}.people div{min-width:8rem}.contact h2{font-size:4.5rem}.form-grid{grid-template-columns:1fr;gap:1rem}.field-wide{grid-column:auto}.footer-top{flex-direction:column}.footer-links{column-gap:1rem;font-size:.8rem}.video-dialog{width:calc(100% - 1rem)}.dialog-top{padding:.75rem}.dialog-top h2{font-size:.9rem}.section-kicker{margin-bottom:1.5rem}}
.instagram-section{padding-block:4.5rem 7rem;border-top:1px solid var(--line)}
.instagram-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-bottom:1px solid var(--line);margin-bottom:3rem;gap:1.5rem}
.instagram-tab{background:transparent;border:0;border-bottom:3px solid transparent;padding:1.1rem 0 1.25rem;text-align:left;color:#666a63;min-width:0;transition:color .2s,border-color .2s}
.instagram-tab span{display:block;font-size:1.1rem;font-weight:600;line-height:1.5}.instagram-tab small{display:block;font-size:.875rem;line-height:1.5;margin-top:.3rem;overflow-wrap:anywhere}
.instagram-tab[aria-selected=true]{color:var(--ink);border-color:var(--accent)}.instagram-tab:hover{color:var(--ink)}
.instagram-panel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:4rem;min-height:35rem}
.instagram-profile{padding-block:2rem;display:flex;align-items:flex-start;flex-direction:column}.instagram-profile h3{font-family:var(--display);font-size:clamp(3rem,4.6vw,5rem);line-height:1.04;margin-block:1.25rem 1.5rem}.instagram-profile>p:not(.eyebrow){color:#545750;max-width:27rem;line-height:1.8}.instagram-handle{font-size:1rem;font-weight:600;margin-top:1.5rem;overflow-wrap:anywhere}.instagram-profile>.button{margin-top:1.1rem}
.instagram-preview{width:100%;max-width:540px;justify-self:end;min-width:0}.instagram-frame{min-height:31rem;background:#fff;border:1px solid var(--line);border-radius:3px;overflow:hidden}.instagram-frame .instagram-media{margin:0!important;max-width:100%!important;width:100%!important;min-width:0!important;border:0!important;box-shadow:none!important}.instagram-frame blockquote{padding:1.5rem;font:400 .875rem/1.6 var(--body)}.instagram-placeholder{display:block;padding:2rem;font-size:.875rem}.instagram-status,.instagram-note{font-size:.875rem;line-height:1.6;color:#656960;margin-top:.7rem}.instagram-status:empty{display:none}
@media(max-width:800px){.instagram-section{padding-block:3.5rem 4rem}.instagram-panel{gap:2rem}.instagram-profile{padding-block:1rem}.instagram-profile h3{font-size:3.1rem}.instagram-tabs{gap:1rem;margin-bottom:2rem}.instagram-tab span{font-size:1rem}.instagram-tab small{font-size:.875rem}.instagram-profile .eyebrow{font-size:.75rem}.instagram-profile>.button{font-size:.8rem;padding-inline:1rem;gap:.75rem}}
@media(max-width:680px){.instagram-panel{grid-template-columns:minmax(0,1fr);gap:1.5rem;min-height:0}.instagram-profile{padding:0}.instagram-profile h3{font-size:3.6rem;margin-block:1rem}.instagram-preview{justify-self:center}.instagram-tab small{display:none}.instagram-tab span{font-size:1rem}.instagram-tab{text-align:center;padding-block:1rem}.instagram-tabs{gap:.5rem}.instagram-frame{min-height:24rem}.instagram-status,.instagram-note{font-size:.8rem}.instagram-profile .eyebrow{font-size:.875rem}.instagram-profile>.button{font-size:.875rem}.instagram-handle{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.whatsapp-float{position:fixed;right:max(1.5rem,env(safe-area-inset-right));bottom:calc(1.5rem + env(safe-area-inset-bottom));z-index:50;display:inline-flex;align-items:center;justify-content:center;gap:.65rem;min-height:3.5rem;padding:.85rem 1.1rem;border:1px solid #ffffff44;border-radius:2rem;background:#087b46;color:#fff;box-shadow:0 4px 22px #0003;font-size:.875rem;font-weight:600;transition:background .2s,transform .2s}.whatsapp-float svg{width:1.5rem;height:1.5rem;flex-shrink:0}.whatsapp-float:hover{background:#056138;transform:translateY(-2px)}.whatsapp-float:focus-visible{outline:3px solid var(--ink);outline-offset:4px}.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible{outline:2px solid #b94700;outline-offset:2px}#combinados{min-height:4.75rem}.contact-form [id]{scroll-margin-bottom:6rem}
@media(max-width:520px){.whatsapp-float{right:max(1rem,env(safe-area-inset-right));bottom:calc(1rem + env(safe-area-inset-bottom));min-height:3.25rem;padding:.75rem 1rem;gap:.5rem}}
