@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&display=swap');
:root{--bg:#080f19;--line:#ffffff24;--orange:#ff941c;--muted:#a1afc0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--bg);color:#f7f8fa;font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}header{display:flex;align-items:center;justify-content:space-between;padding:20px 6%;border-bottom:1px solid var(--line);gap:25px}.brand{display:block;width:105px;height:108px;overflow:hidden;flex-shrink:0}.brand img{width:132px;height:132px;max-width:none;transform:translate(-13px,-12px)}nav,.header-actions{display:flex;align-items:center;gap:30px;font-size:13px}.header-cta{padding:14px 18px;border:1px solid var(--line);border-radius:30px}.language{display:flex;align-items:center;gap:6px}select{font:inherit;color:white;background:#080f19;border:0;padding:10px;cursor:pointer}.hero{padding:35px 6% 65px}.hero-top{display:flex;justify-content:space-between;align-items:center}.eyebrow,.edition{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--muted)}.eyebrow:before{content:'+';color:var(--orange);margin-right:15px}h1,h2,h3,p{margin:0}h1{font-size:clamp(54px,7.5vw,116px);line-height:1.04;font-weight:500;letter-spacing:-.065em;margin:36px 0 42px;max-width:1250px}em{font-style:normal;color:var(--orange)}.hero-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:65px;align-items:center}.hero-copy>p{font-size:15px;line-height:1.8;color:var(--muted);max-width:345px}.button{display:inline-flex;align-items:center;gap:30px;background:var(--orange);color:#101419;border-radius:40px;padding:9px 10px 9px 25px;font-size:12px;font-weight:600;margin-top:28px}.button b{background:#101419;color:white;border-radius:100%;width:40px;height:40px;display:grid;place-items:center;font-size:23px;font-weight:400}.explore{display:block;margin-top:28px;font-size:12px}.hero-media{margin:0;position:relative;overflow:hidden;border-radius:8px 70px 8px 8px;background:#0a1727}.hero-media img{width:100%;height:350px;display:block;object-fit:cover;object-position:70% center}.hero-media figcaption{position:absolute;bottom:10px;left:18px;font-size:8px;color:#bbc5d1;background:#080f1999;padding:4px 6px}.media-label{position:absolute;top:20px;left:20px;font-size:9px;letter-spacing:2px}.section{padding:85px 6%;border-top:1px solid var(--line)}.section>.eyebrow{margin-bottom:38px}h2{font-size:clamp(34px,4.3vw,66px);font-weight:500;letter-spacing:-.055em;line-height:1.12}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:70px}.two-col p{font-size:15px;line-height:1.9;color:var(--muted)}.two-col .values{font-size:12px;color:var(--orange);margin-top:30px}.services{background:#eff1f2;color:#101b29}.services .eyebrow{color:#5d6875}.cards{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin-top:40px}.cards article{background:#fff;border-radius:10px;overflow:hidden}.photo{position:relative}.photo img{width:100%;height:290px;object-fit:cover;display:block}.photo>span{position:absolute;top:18px;left:18px;background:white;border-radius:30px;padding:10px 15px;font-size:12px}.card-copy{padding:30px}h3{font-size:28px;font-weight:500;letter-spacing:-1px}.card-copy p{font-size:13px;line-height:1.8;color:#647080;margin:18px 0}.card-copy a{font-size:12px;font-weight:600}.sector-list>div{display:flex;align-items:center;gap:22px;padding:20px 0;border-bottom:1px solid var(--line);font-size:18px}.sector-list small{font-size:10px;color:var(--orange)}.sector-list b{margin-left:auto;font-weight:400;color:var(--muted)}.contact{background:radial-gradient(ellipse at 90% 20%,#153450,transparent 65%),var(--bg)}.contact h2{font-size:clamp(50px,7vw,100px)}.contact-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px;border-top:1px solid var(--line);margin-top:55px;padding-top:35px}.contact-grid small{display:block;color:var(--muted);font-size:10px;letter-spacing:2px;margin-bottom:15px}.contact-grid a,.contact-grid p{display:block;font-size:13px;line-height:1.9}.contact-grid a:has(span){margin-top:12px;color:var(--orange)}footer{padding:25px 6%;display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);font-size:11px;color:var(--muted)}.socials{display:flex;gap:25px}a,button{transition:color .2s,transform .2s}a:hover{color:var(--orange)}.button:hover{color:#101419;transform:translateY(-3px)}a:focus-visible,select:focus-visible{outline:2px solid var(--orange);outline-offset:5px}@media(max-width:800px){header{padding:14px 6%;gap:15px}nav,.header-cta,.edition{display:none}.brand{width:84px;height:85px}.brand img{width:106px;height:106px;transform:translate(-11px,-10px)}.hero{padding-top:25px}.eyebrow{font-size:8px;letter-spacing:1.3px}h1{font-size:clamp(44px,9.8vw,76px);margin:30px 0}.hero-layout,.two-col{grid-template-columns:1fr;gap:30px}.hero-copy>p{max-width:100%}.hero-media img{height:300px}.hero-media{border-radius:8px 45px 8px 8px}.section{padding:55px 6%}.cards{grid-template-columns:1fr}.photo img{height:280px}.contact-grid{grid-template-columns:1fr;gap:25px}footer{flex-wrap:wrap}.socials{gap:20px}.card-copy{padding:24px}.sector-list>div{font-size:16px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}a{transition:none}}

.language[hidden]{display:none}.flag-picker{position:relative;font-size:12px;z-index:20}.flag-picker summary{list-style:none;display:flex;align-items:center;gap:10px;cursor:pointer;padding:12px 14px;border:1px solid var(--line);border-radius:24px;min-width:100px}.flag-picker summary::-webkit-details-marker{display:none}.flag-picker img{width:24px;height:16px;object-fit:cover;border-radius:2px}.flag-options{position:absolute;top:calc(100% + 10px);right:0;background:#101c2c;border:1px solid #ffffff30;border-radius:12px;padding:6px;min-width:190px;box-shadow:0 16px 40px #0008}.flag-options button{display:flex;align-items:center;gap:10px;width:100%;border:0;background:none;color:white;cursor:pointer;padding:12px;border-radius:7px;font:inherit;text-align:left}.flag-options button:hover,.flag-options button[aria-pressed=true]{background:#ffffff12}.language-name{font-size:11px;color:var(--muted)}.flag-picker summary:focus-visible,.flag-options button:focus-visible{outline:2px solid var(--orange);outline-offset:3px}.socials a{display:inline-flex;align-items:center;gap:9px;padding:10px 0}.socials svg{width:22px;height:22px;flex-shrink:0}.socials{gap:25px}

.extra-services{margin-top:55px}.expertise-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:28px}.expertise-grid article{padding:25px 0;border-top:1px solid #101b2930}.expertise-number{font-size:11px;color:#637080}.expertise-grid h4{font-size:19px;font-weight:500;margin:17px 0 12px}.expertise-grid p{font-size:13px;line-height:1.8;color:#647080}.portfolio-benefits{border-top:1px solid var(--line);margin-top:45px;padding-top:30px;display:grid;grid-template-columns:1fr 1fr;gap:70px}.portfolio-benefits h3{font-size:25px}.portfolio-benefits p{font-size:14px;line-height:1.9;color:var(--muted)}.clients h3{font-size:24px}.client-names{display:flex;flex-wrap:wrap;gap:18px 35px;margin-top:30px;color:var(--muted);font-size:17px}.client-names span{padding:12px 0}.spain-contact{border-top:1px solid var(--line);margin-top:35px;padding-top:30px}.spain-contact h3{font-size:24px;margin-bottom:18px}.spain-contact a,.spain-contact p{display:block;font-size:14px;line-height:1.9}@media(max-width:800px){.expertise-grid{grid-template-columns:1fr 1fr}.portfolio-benefits{grid-template-columns:1fr;gap:20px}}@media(max-width:450px){.expertise-grid{grid-template-columns:1fr}}

.other-specialties{margin-top:30px;padding:30px;border:1px solid #101b2920;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:30px}.other-specialties p{max-width:520px;font-size:13px;line-height:1.8;color:#647080;margin-top:15px}.other-specialties .button{flex-shrink:0;margin:0}.project-gallery>p:not(.eyebrow){color:var(--muted);margin-top:20px;font-size:14px}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:35px}.gallery-image{padding:0;border:0;border-radius:8px;overflow:hidden;background:#142033;position:relative;cursor:pointer;text-align:left;color:white;min-width:0}.gallery-image img{width:100%;height:300px;object-fit:cover;display:block;transition:transform .3s}.gallery-image:hover img{transform:scale(1.04)}.photo-label{position:absolute;bottom:0;left:0;right:0;padding:30px 18px 18px;background:linear-gradient(transparent,#080f19cc);font-size:11px}.photo-dialog{border:1px solid var(--line);border-radius:10px;background:#080f19;color:#fff;padding:50px 12px 12px;max-width:94vw;max-height:94vh}.photo-dialog::backdrop{background:#000d}.photo-dialog>img{display:block;max-width:88vw;max-height:78vh;object-fit:contain}.close-photo{position:absolute;right:14px;top:12px;background:none;color:white;border:0;font-size:14px;padding:5px 10px;cursor:pointer}.gallery-image:focus-visible,.close-photo:focus-visible{outline:2px solid var(--orange);outline-offset:3px}@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}.other-specialties{flex-direction:column;align-items:start}}@media(max-width:500px){.gallery-grid{grid-template-columns:1fr}.gallery-image img{height:300px}}@media(prefers-reduced-motion:reduce){.gallery-image img{transition:none}}
