@font-face{font-family:Editorial;src:local('Georgia')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#f8f7f3;color:#123f48;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}figure{margin:0}p{margin:0 0 1.25rem}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.04;margin:0;letter-spacing:-.045em}em{font-weight:400;color:#9b704f}h2{font-size:clamp(2.7rem,5.4vw,5.5rem)}h3{font-size:clamp(2rem,3.2vw,3.2rem)}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid #a17450;outline-offset:6px}.skip{position:fixed;top:-80px;left:20px;background:white;padding:12px;z-index:100}.skip:focus{top:12px}.header{position:fixed;inset:0 0 auto;z-index:30;min-height:100px;padding:22px 4.6%;background:rgba(248,247,243,.97);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #123f481c;gap:24px}.brand span{font-family:Georgia,serif;display:block;letter-spacing:.055em;font-size:23px;line-height:1.3}.brand small{font-size:10px;letter-spacing:.04em;display:block;margin-top:4px}.header nav{display:flex;gap:27px;align-items:center;font-size:14px}.header nav>a{padding:6px 0;border-bottom:1px solid transparent;transition:border-color .25s}.header nav>a:hover,.header nav>a[aria-current]{border-color:#9b704f}.header nav .nav-cta{border:1px solid #123f4870;padding:9px 19px;margin-left:7px}.menu-toggle{display:none}.hero{padding:146px 4.6% 0}.hero-top{display:flex;justify-content:space-between}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:500;line-height:1.5;margin-bottom:34px}.location{font-size:12px;letter-spacing:.03em}.hero h1{font-size:clamp(4rem,7.2vw,7.7rem);max-width:1100px;position:relative;z-index:2;line-height:.99}.hero h1 em{display:block;margin-left:22%;margin-top:7px}.hero-bottom{display:grid;grid-template-columns:1fr 1.95fr;gap:7%;margin-top:50px;align-items:start}.hero-copy{font-size:16px;padding-top:22px;max-width:350px}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid #9b704f;padding:8px 0;transition:color .25s}.text-link:hover{color:#9b704f}.hero-index{display:block;margin-top:60px;letter-spacing:.12em;font-size:10px}.hero-photo{margin-top:-20px}.hero-photo img{height:clamp(330px,35vw,560px);object-position:50% 50%}figcaption{font-size:11px;letter-spacing:.05em;color:#58686a;margin-top:12px;display:flex;justify-content:space-between;gap:10px}.section{padding:110px 8%}.intro{padding-top:140px}.intro-grid{display:grid;grid-template-columns:1.25fr 1fr;gap:10%;align-items:center}.intro-copy{max-width:430px}.small-rule{width:55px;height:2px;background:#a17450;display:block;margin-bottom:32px}.approach{padding-top:30px;padding-bottom:80px}.approach-row{border-top:1px solid #123f4833;display:grid;grid-template-columns:50px 1.4fr 1fr;gap:30px;align-items:center;padding:40px 0}.approach-row:last-child{border-bottom:1px solid #123f4833}.number{font-size:12px;letter-spacing:.08em;color:#87664c}.approach-row h2{font-size:clamp(3rem,6vw,6rem)}.approach-row h2 span{color:#9b704f}.approach-row p{max-width:340px;margin:0;font-size:16px}.services{background:#eeece5}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:90px}.section-heading p:last-child{max-width:340px;font-size:16px;margin-bottom:4px}.section-heading .eyebrow{margin-bottom:28px}.service{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;margin-bottom:120px}.service:last-child{margin-bottom:0}.service figure img{height:490px}.service-copy>.number{display:block;margin-bottom:24px}.service h3{margin-bottom:28px}.service p{max-width:440px;font-size:16px}.service ul{list-style:none;padding:0;columns:2;column-gap:24px;margin:26px 0 0;font-size:13px;line-height:1.6}.service li{break-inside:avoid;padding:8px 0;border-top:1px solid #123f4829}.service-two figure{grid-column:2;grid-row:1}.service-two .service-copy{grid-column:1;grid-row:1}.service-two figure img{height:420px;object-position:70% center}.service-three{grid-template-columns:1.2fr 1fr}.service-three figure img{height:390px;object-position:25% center}.value{background:#123f48;color:#f8f7f3;padding-top:105px;padding-bottom:75px}.value .eyebrow{color:#c2b6a2}.value h2{font-size:clamp(3rem,6.2vw,6.2rem)}.value em{color:#c1a07c}.value-bottom{display:grid;grid-template-columns:1.3fr 1fr;gap:12%;margin-top:65px}.value-bottom p{font-size:16px;color:#e1e6e2}.value-bottom .value-statement{font-family:Georgia,serif;font-size:30px;line-height:1.3;color:#f8f7f3}.values{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);padding:32px 0 0;margin:50px 0 0;border-top:1px solid #ffffff30;gap:25px;font-size:14px}.values li:before{content:'·';color:#c1a07c;margin-right:10px}.experience h2{max-width:800px}.placeholder-note{font-size:13px;color:#58686a;margin:28px 0 40px}.project-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:6%}.project:nth-child(2){margin-top:100px}.project img{height:360px;filter:saturate(.7)}.project h3{font-size:26px;letter-spacing:-.02em;margin:22px 0 12px}.project .placeholder-badge{display:inline-block;font-size:11px;background:#e8e4d9;padding:4px 10px;margin-top:18px;letter-spacing:.08em}.project dl{font-size:13px;margin:0}.project dl>div{display:flex;gap:8px}.project dt{color:#58686a}.project dd{margin:0}.project p{font-size:13px;color:#58686a;margin:12px 0 0}.categories{font-size:11px;letter-spacing:.04em;margin:70px 0 0;border-top:1px solid #123f4830;padding-top:25px;line-height:2.2}.categories span{margin:0 10px;color:#9b704f}.energy{display:grid;grid-template-columns:1.1fr 1fr;background:#e9e6dc;align-items:stretch}.energy-image{position:relative;min-height:640px}.energy-image img{position:absolute;inset:0;object-position:55% center}.energy-image figcaption{position:absolute;left:26px;bottom:20px;color:white;text-shadow:0 1px 3px #000}.energy-copy{padding:80px 12% 65px}.energy h2{font-size:clamp(2.8rem,4.5vw,4.8rem);margin-bottom:36px}.energy p:not(.eyebrow){font-size:16px}.energy .territory{font-size:11px!important;letter-spacing:.1em;margin-top:42px;margin-bottom:0}.territory span{font-family:Georgia,serif;font-size:23px;letter-spacing:0;color:#9b704f}.contact{padding-top:130px;padding-bottom:120px}.contact h2{font-size:clamp(3.2rem,6.8vw,7rem)}.contact-bottom{display:flex;align-items:center;justify-content:space-between;margin-top:45px;gap:50px}.contact-bottom p{max-width:480px;margin:0}.button{border:1px solid #123f48;display:inline-block;padding:18px 55px;font-size:16px;transition:background .25s,color .25s}.button:hover{background:#123f48;color:#fff}.footer{background:#122c38;color:#eaece7;padding:70px 4.6% 30px}.footer-top{display:grid;grid-template-columns:1.3fr .9fr 1.1fr;gap:8%;padding-bottom:60px}.footer-brand{font-family:Georgia,serif;font-size:37px;letter-spacing:.04em;line-height:1.1;display:block}.footer-descriptor{font-size:11px;margin:20px 0 0;line-height:1.8}.footer .eyebrow{color:#baa68e;font-size:11px;margin-bottom:20px}.footer-top p:not(.eyebrow){font-size:14px}.contact-details>p:not(.eyebrow){margin:0 0 10px;display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #ffffff25;padding-bottom:10px}.contact-details span{font-size:12px;color:#bac5c4}.contact-details .pending-note{font-size:11px!important;border:0!important;line-height:1.6;margin-top:16px!important;color:#bac5c4}.footer-bottom{border-top:1px solid #ffffff25;padding-top:25px;display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:11px}.socials{display:flex;gap:28px}.socials small{display:block;font-size:10px;color:#aebcbd}.back-top{border-bottom:1px solid #baa68e}.reveal{opacity:1}.motion .reveal{opacity:0;transform:translateY(20px);transition:opacity .7s ease,transform .7s ease}.motion .reveal.visible{opacity:1;transform:translateY(0)}
@media(min-width:1600px){.hero,.header,.section,.footer{padding-left:max(8%,calc((100vw - 1400px)/2));padding-right:max(8%,calc((100vw - 1400px)/2))}.hero-photo{margin-top:-20px}}
@media(max-width:1100px){.header nav{gap:16px}.brand span{font-size:20px}.brand small{font-size:9px}.hero h1{font-size:8vw}.hero-photo{margin-top:-10px}.hero-bottom{gap:5%;grid-template-columns:1fr 1.7fr}.section{padding-left:6%;padding-right:6%}.approach-row{grid-template-columns:35px 1.3fr 1fr;gap:18px}.service{gap:6%}.service figure img{height:430px}.service ul{columns:1}.service li{padding:5px 0}.energy-copy{padding:65px 10%}.footer-top{gap:5%}}
@media(max-width:800px){html{scroll-padding-top:90px}.header{min-height:85px;padding:18px 6%}.brand span{font-size:20px}.brand small{font-size:8px}.menu-toggle{display:flex;align-items:center;gap:14px;background:none;border:0;color:#123f48;padding:8px 0;font-size:14px}.menu-toggle span{font-size:20px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;padding:25px 6% 35px;background:#f8f7f3;border-bottom:1px solid #123f4833;flex-direction:column;align-items:stretch;gap:9px}.header nav.open{display:flex}.header nav>a{padding:10px 0}.header nav .nav-cta{margin:10px 0 0;text-align:center}.hero{padding:118px 6% 0}.hero-top{display:block}.hero-top .eyebrow{margin-bottom:10px}.location{margin-bottom:30px;font-size:11px}.hero h1{font-size:clamp(3.3rem,10vw,5.8rem)}.hero h1 em{margin-left:12%;margin-top:14px}.hero-bottom{display:flex;flex-direction:column-reverse;gap:20px;margin-top:35px}.hero-photo{margin:0;width:100%}.hero-photo img{height:400px}.hero-copy{max-width:550px;font-size:16px}.hero-index{margin-top:30px}.section{padding:75px 6%}.intro-grid{grid-template-columns:1fr;gap:35px}.intro-copy{max-width:600px}.intro-copy .small-rule{margin-bottom:25px}.eyebrow{margin-bottom:28px}.approach{padding-top:20px}.approach-row{grid-template-columns:28px 1fr;gap:15px;padding:30px 0}.approach-row p{grid-column:2;max-width:480px;font-size:16px}.approach-row h2{font-size:clamp(2.9rem,9vw,4.8rem)}.section-heading{display:block;margin-bottom:50px}.section-heading>p:last-child{max-width:500px;margin-top:25px}.service,.service-three{display:flex;flex-direction:column;gap:35px;margin-bottom:70px;align-items:stretch}.service figure img,.service-two figure img,.service-three figure img{height:380px}.service ul{columns:2;font-size:14px}.service p{font-size:16px;max-width:600px}.service h3{font-size:clamp(2.3rem,6vw,3.4rem)}.value-bottom{grid-template-columns:1fr;gap:20px;margin-top:40px}.value-bottom p{font-size:16px}.values{grid-template-columns:1fr 1fr;margin-top:35px}.project-grid{gap:5%}.project img{height:280px}.project:nth-child(2){margin-top:70px}.project h3{font-size:23px}.project dl>div{display:block;margin-top:8px}.categories{margin-top:45px}.energy{grid-template-columns:1fr}.energy-image{min-height:380px}.energy-copy{padding:65px 6%}.energy h2{font-size:clamp(2.7rem,7vw,4rem)}.energy p:not(.eyebrow){font-size:16px}.contact-bottom{gap:35px;align-items:start;flex-direction:column}.contact h2{font-size:clamp(2.8rem,8.5vw,5rem)}.footer{padding:55px 6% 30px}.footer-top{grid-template-columns:1fr 1fr;gap:40px;padding-bottom:40px}.contact-details{grid-column:1/-1;max-width:500px;width:100%}.footer-bottom{flex-wrap:wrap;align-items:start}.socials{order:3;width:100%;justify-content:space-between}.footer-brand{font-size:30px}}
@media(max-width:450px){.hero h1{font-size:12vw;line-height:1.05}.hero h1 em{margin-left:3%}.hero-photo img{height:300px}.hero-photo figcaption{font-size:10px}.hero-photo figcaption span{white-space:nowrap}.brand span{font-size:17px}.brand small{font-size:7px}.menu-toggle{font-size:13px}.service ul{columns:1}.service figure img,.service-two figure img,.service-three figure img{height:300px}.project-grid{grid-template-columns:1fr;gap:45px}.project:nth-child(2){margin-top:0}.project img{height:300px}.project dl>div{display:flex}.values{gap:20px;font-size:13px}.contact h2{font-size:10.2vw}.footer-top{grid-template-columns:1fr}.contact-details{grid-column:auto}.energy-image{min-height:330px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion .reveal{opacity:1;transform:none;transition:none}*{transition:none!important}}

/* Identidad original y fotografía específica por sección. */
.header{background:rgba(255,255,255,.98)}
.brand{flex-shrink:0}.logo-frame{display:block!important;width:340px;height:88px;overflow:hidden;position:relative;letter-spacing:normal!important}.logo-frame img{width:100%;height:100%;object-fit:cover;object-position:center 47%}.brand small{margin:0 0 0 12px;font-size:10px}.header{padding-top:8px;padding-bottom:8px}.footer{background:#00235c}.footer-brand .logo-frame{width:310px;height:90px}.intro-photo{width:62%;margin:65px 0 0 auto}.intro-photo img{height:380px}.approach-row{grid-template-columns:35px 1fr 250px;column-gap:32px;position:relative;min-height:240px}.approach-row h2{font-size:clamp(3rem,5.6vw,5.6rem);grid-column:2;grid-row:1}.approach-row>.number{grid-column:1;grid-row:1;align-self:start;padding-top:10px}.approach-row>p{grid-column:2;grid-row:2;max-width:520px;margin-top:15px}.approach-photo{grid-column:3;grid-row:1/3}.approach-photo img{height:195px}.approach-photo figcaption{font-size:10px;margin-top:7px}.service-one figure img{object-position:center}.service-two figure img{object-position:center}.service-three figure img{object-position:center}.service figure{overflow:hidden}.service figure img{transition:transform .7s ease}.service figure:hover img{transform:scale(1.025)}
@media(max-width:1100px){.logo-frame{width:285px;height:76px}.brand small{font-size:8px}.header nav{gap:13px}.header nav .nav-cta{padding:8px 12px}.approach-row{grid-template-columns:28px 1fr 210px;gap:20px}.approach-photo img{height:180px}.approach-row h2{font-size:5.6vw}}
@media(max-width:800px){.logo-frame{width:255px;height:67px}.header{padding-top:8px;padding-bottom:10px}.header nav{background:#fff}.brand small{font-size:7px;margin-left:7px}.intro-photo{width:100%;margin-top:35px}.intro-photo img{height:330px}.approach-row{grid-template-columns:28px 1fr;gap:15px}.approach-row h2{font-size:clamp(2.9rem,9vw,4.8rem)}.approach-row>p{grid-column:2;grid-row:2;margin-top:0}.approach-photo{grid-column:2;grid-row:3;margin-top:12px}.approach-photo img{height:260px}.footer-brand .logo-frame{width:285px;height:80px}}
@media(max-width:450px){.logo-frame{width:215px;height:57px}.header{gap:12px;padding-left:4%;padding-right:4%}.brand small{font-size:6px;margin-left:6px}.intro-photo img{height:260px}.approach-photo img{height:220px}.footer-brand .logo-frame{width:260px;height:73px}}
@media(max-width:350px){.logo-frame{width:190px;height:53px}.brand small{font-size:5.6px}.menu-toggle{gap:8px}}

/* Logo vectorial original: proporciones nativas, sin recorte ni descriptor añadido. */
.logo-frame,.footer-brand .logo-frame{height:auto;aspect-ratio:auto;overflow:visible}.logo-frame img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;image-rendering:auto}.header{min-height:100px;padding-top:12px;padding-bottom:12px}.brand .logo-frame{width:340px}.footer-brand .logo-frame{width:310px}
@media(max-width:1100px){.brand .logo-frame{width:285px}}
@media(max-width:800px){.header{min-height:85px}.brand .logo-frame{width:255px}}
@media(max-width:450px){.brand .logo-frame{width:215px}}
@media(max-width:350px){.brand .logo-frame{width:190px}}
