@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500&display=swap";@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-scale-x:1;--tw-scale-y:1;--tw-scale-z:1}}}.fixed{position:fixed}.z-50{z-index:50}.mx-auto{margin-inline:auto}.flex{display:flex}.grid{display:grid}.max-h-\[80vh\]{max-height:80vh}.w-full{width:100%}.cursor-pointer{cursor:pointer}.items-center{align-items:center}.justify-center{justify-content:center}.overflow-hidden{overflow:hidden}.object-contain{-o-object-fit:contain;object-fit:contain}.object-cover{-o-object-fit:cover;object-fit:cover}.underline{text-decoration-line:underline}.opacity-70{opacity:.7}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,ease);transition-duration:var(--tw-duration,0s)}@media(hover:hover){.group-hover\:scale-105:is(:where(.group):hover *){--tw-scale-x:105%;--tw-scale-y:105%;--tw-scale-z:105%;scale:var(--tw-scale-x)var(--tw-scale-y)}}body{font-family:Inter,sans-serif}@property --tw-scale-x{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-y{syntax:"*";inherits:false;initial-value:1}@property --tw-scale-z{syntax:"*";inherits:false;initial-value:1}html,body{margin:0;padding:0}.navbar{position:fixed;top:0;width:100%;background-color:#000;border-bottom:1px solid rgba(255,255,255,.1);z-index:1000;transition:height .3s}.navbar-container{max-width:1200px;margin:0 auto;height:96px;display:flex;justify-content:space-between;align-items:center;padding:0 20px}.logo{font-size:14px;letter-spacing:.5em;font-weight:300;color:#fff}.nav-links{display:flex;gap:56px;align-items:center}.nav-link{position:relative;font-size:12px;letter-spacing:.25em;text-transform:uppercase;color:#fff9;text-decoration:none;transition:color .2s}.nav-link:hover{color:#fff}.nav-link .underline{position:absolute;bottom:0;left:0;height:2px;background-color:#fff;width:0;transition:width .3s}.nav-link.active .underline{width:100%}.nav-link.active{color:#fff}.mobile-menu-btn{display:none;font-size:28px;color:#fff;background:none;border:none;cursor:pointer}.mobile-slide-menu{position:fixed;top:0;right:-100%;width:250px;height:100%;background-color:#000;display:flex;flex-direction:column;padding:20px;gap:30px;transition:right .3s ease;z-index:999}.mobile-slide-menu.open{right:0}.mobile-menu-close{font-size:28px;color:#fff;background:none;border:none;align-self:flex-end;cursor:pointer}@media(max-width:768px){.navbar-container{height:60px}.desktop{display:none}.mobile-menu-btn{display:block}}.footer{background:#0b0b0b;color:#f5f5f5;padding:4rem 1.5rem 2rem;margin-top:0;text-align:center;font-family:Inter,sans-serif}.footer-inner{display:grid;gap:3rem;margin-bottom:2rem}.footer-block{font-size:.95rem;line-height:1.7;opacity:.85}.footer-block a{color:inherit;text-decoration:none;opacity:.7;transition:opacity .3s ease}.footer-block a:hover{opacity:1}.footer-links{display:flex;justify-content:center;gap:.8rem;flex-wrap:wrap;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase}.footer-credit{font-size:.7rem;letter-spacing:.2em;opacity:.4;text-align:center}.footer-credit span{opacity:.8}@media(min-width:900px){.footer-inner{grid-template-columns:repeat(3,1fr);text-align:left;max-width:1100px;margin:0 auto 2rem}.footer-links{justify-content:flex-end}.footer-credit{text-align:center}.footer-top-separator{width:100%;height:1px;background:#ffffff26;margin-bottom:2rem}}.hero-section{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;color:#fff;overflow:hidden}.hero-video{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;z-index:1;transform:scale(1.08)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(to bottom,#0009,#000000e6);z-index:2}.hero-content{position:relative;z-index:3;max-width:1200px;padding:0 20px;text-align:center}.hero-content h1{font-size:4rem;font-weight:200;letter-spacing:.2em;margin-bottom:20px;line-height:1.1}.hero-content p{font-size:1.2rem;opacity:.7;margin-bottom:40px;line-height:1.4}.hero-content a{border:1px solid white;padding:15px 40px;font-size:.8rem;letter-spacing:.3em;color:#fff;text-decoration:none;transition:all .3s ease}.hero-content a:hover{background:#fff;color:#000;transform:scale(1.05)}@media(max-width:1024px){.hero-content h1{font-size:3rem}.hero-content p{font-size:1rem;margin-bottom:30px}.hero-content a{padding:12px 30px;font-size:.75rem}}@media(max-width:768px){.hero-content h1{font-size:2.5rem;letter-spacing:.15em}.hero-content p{font-size:.95rem;margin-bottom:25px}.hero-content a{padding:10px 25px;font-size:.7rem;letter-spacing:.25em}}@media(max-width:480px){.hero-content h1{font-size:2rem;letter-spacing:.1em}.hero-content p{font-size:.85rem;margin-bottom:20px}.hero-content a{padding:8px 20px;font-size:.65rem;letter-spacing:.2em}}.about{position:relative;display:grid;grid-template-columns:1.3fr 1fr;min-height:100vh;background:#0b0b0b;color:#f5f5f5;overflow:hidden}.about-image{background-image:url(/images/architecture.jpg);background-size:cover;background-position:center;filter:grayscale(100%) contrast(1.1)}.about-watermark{position:absolute;bottom:5%;left:5%;font-size:12rem;font-weight:600;letter-spacing:.3em;color:#ffffff08;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none}.about-panel{background:#0f0f0ff2;padding:6rem 5rem;display:flex;flex-direction:column;justify-content:center}.about-label{font-size:.7rem;letter-spacing:.35em;text-transform:uppercase;opacity:.6;margin-bottom:1.5rem}.about-title{font-size:3rem;font-weight:300;letter-spacing:.08em;margin-bottom:2.5rem}.about-text{font-size:1.05rem;line-height:1.9;opacity:.8;margin-bottom:1.8rem;max-width:520px}.about-footer{margin-top:3rem;display:flex;justify-content:space-between;align-items:center}.about-category{font-size:.8rem;letter-spacing:.25em;text-transform:uppercase;opacity:.5}.about-socials{display:flex;gap:1rem}.about-socials a{width:36px;height:36px;border:1px solid rgba(255,255,255,.25);border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;transition:all .3s ease}.about-socials a:hover{background:#fff;color:#000}@media(max-width:900px){.about{grid-template-columns:1fr}.about-image{height:45vh}.about-panel{padding:4rem 2.5rem}.about-watermark{font-size:6rem;bottom:2%}}.services{background:#0b0b0b;color:#f5f5f5;padding:10rem 1.5rem}.services-container{max-width:1100px;margin:0 auto}.services-title{font-size:2.8rem;font-weight:300;letter-spacing:.08em;margin-bottom:6rem}.services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:3rem}.service-card{position:relative;padding:3.5rem 3rem;border:1px solid rgba(255,255,255,.2);background:transparent;transition:all .4s ease;cursor:default}.service-card:hover{background:#f5f5f5;color:#0b0b0b}.service-index{position:absolute;top:2rem;right:2.5rem;font-size:.8rem;letter-spacing:.25em;opacity:.5}.service-name{font-size:1.3rem;font-weight:300;line-height:1.4;max-width:260px}@media(max-width:900px){.services-grid{grid-template-columns:1fr}.services-title{font-size:2.2rem;margin-bottom:4rem}.service-card{padding:3rem 2.5rem}}.portfolio-grid{-moz-column-count:1;column-count:1;-moz-column-gap:2rem;column-gap:2rem;margin:2rem 0}@media(min-width:768px){.portfolio-grid{-moz-column-count:2;column-count:2}}@media(min-width:1024px){.portfolio-grid{-moz-column-count:3;column-count:3}}.portfolio-card{position:relative;margin-bottom:2rem;overflow:hidden;-moz-column-break-inside:avoid;break-inside:avoid;border-radius:.5rem;box-shadow:0 10px 25px #0003;transition:transform .7s ease,box-shadow .7s ease}.portfolio-card:hover{transform:scale(1.03);box-shadow:0 15px 35px #0000004d}.portfolio-image{width:100%;display:block;-o-object-fit:cover;object-fit:cover;transition:transform .7s ease}.portfolio-overlay{position:absolute;inset:0;background-color:#0006;opacity:0;display:flex;align-items:flex-end;justify-content:flex-start;transition:opacity .5s ease}.portfolio-card:hover .portfolio-overlay{opacity:1}.portfolio-title{color:#f5f5f5;padding:1.5rem;font-weight:300;font-size:1.1rem;letter-spacing:.05em;line-height:1.4}.skeleton-card{width:100%;height:24rem;background:linear-gradient(90deg,#111 25%,#222,#111 75%);background-size:200% 100%;animation:shimmer 1.5s infinite;border-radius:.5rem}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.portfolio{min-height:100vh;background:#0b0b0b;color:#f5f5f5;padding:8rem 2rem 6rem;font-family:Inter,sans-serif;position:relative;overflow:hidden}.portfolio:before{content:"PORTFOLIO";position:absolute;top:12%;left:4%;font-size:10rem;font-weight:600;letter-spacing:.35em;color:#ffffff09;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.portfolio-container{max-width:1400px;margin:0 auto;position:relative;z-index:1}.portfolio-title{font-size:3.5rem;font-weight:300;letter-spacing:.25em;margin-bottom:6rem}.portfolio-grid{-moz-column-count:3;column-count:3;-moz-column-gap:2rem;column-gap:2rem}.portfolio-item{-moz-column-break-inside:avoid;break-inside:avoid;margin-bottom:2rem;position:relative;overflow:hidden;cursor:pointer}.portfolio-item img{width:100%;display:block;filter:grayscale(100%);transition:transform .9s ease,filter .9s ease;height:200px;-o-object-fit:cover;object-fit:cover}.portfolio-item:hover img{transform:scale(1.05);filter:grayscale(0%)}.portfolio-overlay{position:absolute;inset:0;background:#0000008c;opacity:0;display:flex;align-items:flex-end;transition:opacity .4s ease}.portfolio-item:hover .portfolio-overlay{opacity:1}.portfolio-overlay p{color:#fff;padding:2rem;font-size:.75rem;letter-spacing:.22em;text-transform:uppercase}@media(max-width:1100px){.portfolio-grid{-moz-column-count:2;column-count:2}}@media(max-width:700px){.portfolio{padding:6rem 1.5rem}.portfolio-title{font-size:2.3rem;margin-bottom:4rem}.portfolio-grid{-moz-column-count:1;column-count:1}.portfolio:before{font-size:5rem;top:6%;left:2%}.portfolio-item img{height:150px}}.appointment{min-height:100vh;background:#0b0b0b;display:flex;align-items:center;justify-content:center;padding:6rem 1.5rem;font-family:Inter,sans-serif;color:#f5f5f5;position:relative;overflow:hidden}.appointment:before{content:"RENDEZ-VOUS";position:absolute;font-size:10rem;font-weight:600;letter-spacing:.3em;color:#ffffff08;top:10%;left:5%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.appointment-container{background:#0f0f0ff2;padding:5rem 4.5rem;max-width:800px;width:100%;box-shadow:0 30px 80px #00000026;border-radius:10px;position:relative;z-index:1}.appointment-title{font-size:2.6rem;font-weight:300;letter-spacing:.08em;margin-bottom:1.2rem}.appointment-subtitle{font-size:1rem;opacity:.6;margin-bottom:3.5rem}.appointment-form{display:flex;flex-direction:column;width:100%}.appointment-form input,.appointment-form select,.appointment-form textarea{width:100%;padding:1rem 0;border:none;border-bottom:1px solid rgba(255,255,255,.3);font-size:.95rem;background:transparent;outline:none;color:#f5f5f5;transition:border-color .3s ease,color .3s ease}.appointment-form input:focus,.appointment-form select:focus,.appointment-form textarea:focus{border-color:#fff}.appointment-form select{-webkit-appearance:none;-moz-appearance:none;appearance:none;cursor:pointer}.appointment-form textarea{resize:none;margin-bottom:3rem;line-height:1.6}.appointment-form button{align-self:flex-start;padding:.9rem 2.5rem;border:1px solid #fff;background:transparent;font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;color:#f5f5f5;cursor:pointer;transition:all .35s ease}.appointment-form button:hover{background:#fff;color:#0b0b0b}.form-success{background:#00ff001a;color:#0f0;padding:.8rem 1rem;margin-bottom:1.5rem;border-radius:4px;text-align:center;font-weight:500}.form-error{background:#ff00001a;color:red;padding:.8rem 1rem;margin-bottom:1.5rem;border-radius:4px;text-align:center;font-weight:500}@media(max-width:700px){.appointment-container{padding:3.5rem 2.5rem}.form-grid{grid-template-columns:1fr}.appointment-title{font-size:2.1rem}.appointment:before{font-size:5rem;top:5%;left:2%}}.internship{min-height:100vh;background:#0b0b0b;display:flex;align-items:center;justify-content:center;padding:6rem 1.5rem;font-family:Inter,sans-serif;color:#f5f5f5;position:relative;overflow:hidden}.internship:before{content:"STAGE";position:absolute;font-size:12rem;font-weight:700;letter-spacing:.35em;color:#ffffff09;top:10%;left:5%;pointer-events:none;-webkit-user-select:none;-moz-user-select:none;user-select:none;z-index:0}.internship-container{background:#0f0f0ff2;padding:5rem 4.5rem;max-width:850px;width:100%;box-shadow:0 30px 80px #00000040;border-radius:12px;position:relative;z-index:1}.internship-title{font-size:2.6rem;font-weight:300;letter-spacing:.08em;margin-bottom:1.2rem}.internship-subtitle{font-size:1rem;opacity:.6;margin-bottom:3.5rem}.internship-form{display:flex;flex-direction:column;width:100%}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:2rem}.internship-form input,.internship-form textarea{width:100%;padding:1rem 0;border:none;border-bottom:1px solid rgba(255,255,255,.3);font-size:.95rem;background:transparent;outline:none;color:#f5f5f5;transition:all .3s ease}.internship-form input:focus,.internship-form textarea:focus{border-color:#fff}.internship-form textarea{resize:none;margin-bottom:3rem;line-height:1.6}.file-group{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem;margin-bottom:3rem}.file-upload{position:relative;padding:1.5rem 0;border-bottom:1px dashed rgba(255,255,255,.3);cursor:pointer;transition:all .3s ease}.file-upload:hover{border-color:#fff}.file-upload label{font-size:.9rem;opacity:.8;cursor:pointer}.file-hint{display:block;font-size:.7rem;opacity:.5;margin-top:.3rem}.file-upload input{position:absolute;inset:0;opacity:0;cursor:pointer}.file-name{margin-top:.6rem;font-size:.75rem;color:#0fc;word-break:break-all}.internship-form button{align-self:flex-start;padding:.9rem 2.5rem;border:1px solid #fff;background:transparent;font-size:.75rem;letter-spacing:.25em;text-transform:uppercase;color:#f5f5f5;cursor:pointer;transition:all .35s ease}.internship-form button:hover{background:#fff;color:#0b0b0b}.internship-form button:disabled{opacity:.5;cursor:not-allowed}.success-message{background:#00ffc81a;color:#0fc;padding:.8rem 1rem;margin-bottom:1.5rem;border-radius:4px;text-align:center;font-weight:500}.error-message{background:#ff00001a;color:#ff6b6b;padding:.8rem 1rem;margin-bottom:1.5rem;border-radius:4px;text-align:center;font-weight:500}@media(max-width:800px){.internship-container{padding:3.5rem 2.5rem}.form-grid,.file-group{grid-template-columns:1fr}.internship-title{font-size:2.1rem}.internship:before{font-size:6rem;top:5%;left:2%}}@keyframes slideUpFade{0%{opacity:0;transform:translateY(60px)}to{opacity:1;transform:translateY(0)}}.internship-container{animation:slideUpFade .9s ease-out forwards}.internship-container:hover{transform:translateY(-6px);box-shadow:0 35px 90px #00000059}
