
:root{--ink:#193534;--pine:#143f3c;--gold:#a77b50;--paper:#f8f6f1;--white:#fff;--line:#dfded8;--muted:#687571}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--paper);font-family:'DM Sans',Arial,sans-serif}button,a{font:inherit}a{text-decoration:none;color:inherit}button{cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}.wrap{width:min(1180px,calc(100% - 56px));margin:auto}.top{height:89px;position:sticky;top:0;z-index:40;background:rgba(248,246,241,.96);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}.nav{height:100%;display:flex;align-items:center;gap:33px}.brand{display:flex;align-items:center;gap:13px;margin-right:auto;white-space:nowrap}.logo{border:1.5px solid var(--ink);width:44px;height:44px;display:grid;place-items:center;border-radius:50%;font:600 19px Georgia,serif;letter-spacing:-.07em}.brand strong{display:block;font:800 19px Manrope,sans-serif;letter-spacing:-.07em}.brand small{display:block;color:#7a7b73;font-size:9px;letter-spacing:.21em;margin-top:3px}.links{display:flex;gap:26px;align-items:center;font-size:12px;font-weight:700}.links a:hover{color:var(--gold)}.langs{white-space:nowrap;font-size:12px}.langs button{border:0;background:none;color:#909994;padding:4px;font-size:12px}.langs button.active{color:var(--ink);font-weight:800}.phone{white-space:nowrap;font-size:12px;font-weight:700}.hamb{display:none;border:0;background:none;font-size:26px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:18px;padding:16px 24px;border:1px solid var(--ink);background:transparent;color:var(--ink);font-size:11px;letter-spacing:.1em;text-transform:uppercase;font-weight:800;transition:transform .2s,background .2s}.btn:hover{transform:translateY(-3px)}.btn.solid{background:var(--ink);color:white}.btn.light{background:white;color:var(--ink);border-color:white}.hero{display:grid;grid-template-columns:48% 52%;min-height:690px;background:#eae8df}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:85px 50px 85px max(28px,calc((100vw - 1180px)/2));}.eyebrow{font-size:11px;letter-spacing:.21em;color:var(--gold);font-weight:800;text-transform:uppercase}.hero h1{font:500 clamp(49px,5.25vw,81px)/1.10 Manrope,sans-serif;letter-spacing:-.075em;margin:25px 0}.hero h1 em{color:#a77b50;font-style:normal}.lead{color:#5e6865;line-height:1.95;max-width:430px;font-size:15px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:25px}.hero-visual{position:relative;min-height:570px;overflow:hidden;background:#b9b5ac}.hero-visual img{position:absolute;inset:0;opacity:0;transition:opacity .9s;filter:saturate(.84)}.hero-visual img.active{opacity:1}.hero-visual img:not(.active){pointer-events:none}.slider-dots{position:absolute;left:50%;bottom:39px;transform:translateX(-50%);z-index:3;display:flex;gap:9px}.slider-dots button{width:9px;height:9px;padding:0;border:1px solid white;border-radius:50%;background:transparent;cursor:pointer}.slider-dots button.active{background:white;transform:scale(1.15)}.hero-visual:focus-within .arrows button:focus-visible,.slider-dots button:focus-visible{outline:3px solid #e8bb80;outline-offset:3px}@media(prefers-reduced-motion:reduce){.hero-visual img{transition:none}}.hero-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(to top,rgba(20,40,36,.33),transparent 46%);pointer-events:none}.slide-tools{position:absolute;bottom:32px;left:35px;right:35px;z-index:2;display:flex;justify-content:space-between;align-items:center;color:white;font-size:11px;letter-spacing:.16em}.arrows{display:flex;gap:6px}.arrows button{background:rgba(255,255,255,.95);color:var(--ink);width:40px;height:40px;border:0;font-size:23px}.hero-strap{padding:25px 0;background:var(--pine);color:white}.hero-strap .wrap{display:flex;justify-content:space-between;gap:20px;align-items:center;font-size:11px;letter-spacing:.15em}.hero-strap strong{color:#d2b28d;font-weight:500}.section{padding:110px 0}.kicker{font-size:11px;font-weight:800;color:var(--gold);letter-spacing:.19em;text-transform:uppercase}.section h2,.split h2,.contact h2,.feature h2{font:500 clamp(37px,4.2vw,59px)/1.18 Manrope,sans-serif;letter-spacing:-.065em;margin:20px 0 27px}.section p,.split p,.feature p,.contact p{font-size:15px;line-height:1.9;color:var(--muted)}.intro{display:grid;grid-template-columns:47% 1fr;gap:10%;align-items:center}.intro .intro-deco{border-left:1px solid #d3c4b0;padding:10px 0 10px 31px}.intro-deco p{font:500 clamp(24px,2.4vw,35px)/1.5 Manrope,sans-serif;color:#3c4a46;margin:0;letter-spacing:-.045em}.text-link{display:inline-block;padding-bottom:8px;margin-top:12px;border-bottom:1px solid currentColor;font-size:12px;font-weight:800;letter-spacing:.07em}.text-link:hover{color:var(--gold)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px}.section-heading p{max-width:360px}.tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:17px}.tile{background:white;min-width:0}.tile-img{height:300px;overflow:hidden;background:#e5e0d7}.tile img{transition:transform .7s}.tile:hover img{transform:scale(1.05)}.tile-body{padding:22px 20px 28px}.tile-index{font-size:10px;color:var(--gold);font-weight:800;letter-spacing:.14em}.tile h3{font:600 20px Manrope,sans-serif;letter-spacing:-.06em;margin:12px 0}.tile p{font-size:13px;line-height:1.7;margin:0}.muted-note{font-size:11px!important;line-height:1.6!important;color:#858681!important;margin:20px 0 0}.feature{display:grid;grid-template-columns:1fr 1fr;background:#eceae3;min-height:540px}.feature:nth-of-type(even){background:#e3e8e3}.feature-img{min-height:500px;overflow:hidden}.feature-body{align-self:center;padding:75px max(30px,calc((100vw - 1180px)/2)) 75px 9%;padding-right:10%}.feature.reverse .feature-img{order:2}.feature.reverse .feature-body{order:1;padding-left:max(30px,calc((100vw - 1180px)/2));padding-right:9%}.feature h2{font-size:clamp(35px,3.6vw,54px)}.gallery{display:grid;grid-template-columns:1.4fr 1fr 1fr;grid-template-rows:260px 260px;gap:13px}.gallery figure{position:relative;overflow:hidden;margin:0;background:#d8d8d3}.gallery figure:first-child{grid-row:span 2}.gallery img{transition:transform .7s}.gallery figure:hover img{transform:scale(1.06)}.gallery figcaption{position:absolute;left:0;right:0;bottom:0;color:white;padding:27px 20px 17px;font-weight:700;font-size:15px;background:linear-gradient(transparent,rgba(0,0,0,.6))}.dark{background:#153e3b;color:white;padding:110px 0}.dark .kicker{color:#d0ae87}.dark h2{color:white}.dark p{color:#c4d0cd}.values{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:48px;border-top:1px solid #55736d;padding-top:38px}.values article{max-width:320px}.values b{color:#d0ae87;font-size:12px}.values h3{font-size:22px;font-weight:600;letter-spacing:-.04em;margin:17px 0 8px}.values p{font-size:13px;margin:0}.contact{padding:110px 0;background:#eeeae2}.contact-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:8%;align-items:center}.detail{border-bottom:1px solid #d4d0c7;padding:17px 0}.detail b{font-size:11px;letter-spacing:.13em;text-transform:uppercase;display:block;margin-bottom:8px}.detail span{font-size:14px;color:#60706b;line-height:1.8}.map{width:100%;height:520px;border:0;filter:saturate(.7)}footer{padding:60px 0 30px;background:#102d2b;color:white}.foot-grid{display:flex;gap:30px;justify-content:space-between;align-items:center;padding-bottom:40px;border-bottom:1px solid #49625e}.foot-grid h3{font:500 29px Manrope,sans-serif;letter-spacing:-.05em;margin:0 0 10px}.foot-grid p{font-size:13px;color:#bfcac6}.foot-bottom{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap;color:#c5cfcb;font-size:11px;margin-top:24px}.float-wa{position:fixed;bottom:22px;right:22px;z-index:45;background:#1a7963;color:white;padding:15px 20px;border-radius:60px;box-shadow:0 7px 30px #102d2b55;font-size:13px;font-weight:800}.fade{opacity:0;transform:translateY(20px);transition:opacity .7s,transform .7s}.fade.show{opacity:1;transform:none}@media(max-width:1060px){.links{gap:13px}.phone{display:none}.tiles{grid-template-columns:repeat(2,1fr)}.tile-img{height:300px}}@media(max-width:780px){.top{height:74px}.links{display:none;position:absolute;top:73px;left:0;right:0;background:var(--paper);padding:17px 30px 30px;flex-direction:column;align-items:stretch;box-shadow:0 16px 20px #0001}.links.open{display:flex}.links a{padding:8px}.hamb{display:block}.hero{grid-template-columns:1fr}.hero-copy{padding:85px 7%}.hero-visual{min-height:440px}.intro{grid-template-columns:1fr;gap:30px}.feature{grid-template-columns:1fr}.feature-img,.feature.reverse .feature-img{order:1;min-height:370px}.feature-body,.feature.reverse .feature-body{order:2;padding:65px 7%}.gallery{grid-template-rows:220px 220px}.contact-grid{grid-template-columns:1fr;gap:34px}.map{height:390px}}@media(max-width:560px){.wrap{width:calc(100% - 36px)}.brand strong{font-size:16px}.logo{width:36px;height:36px;font-size:15px}.langs{margin-left:auto}.nav{gap:13px}.hero h1{font-size:51px}.hero-visual{min-height:350px}.hero-strap .wrap{flex-wrap:wrap;font-size:10px}.section,.dark,.contact{padding:70px 0}.section-heading{display:block}.tiles{grid-template-columns:1fr}.tile-img{height:370px}.gallery{grid-template-columns:1fr 1fr;grid-template-rows:270px 160px 160px}.gallery figure:first-child{grid-column:span 2;grid-row:span 1}.values{grid-template-columns:1fr;gap:25px}.foot-grid{display:block}.foot-grid .btn{margin-top:25px}.float-wa{right:12px;bottom:12px}.hero-copy{padding:65px 7%}.slide-tools{left:20px;right:20px}}

/* Portada cinematográfica a pantalla completa — estilo referencia */
.hero{display:block;min-height:0;background:#183d38}
.hero-visual{height:clamp(630px,calc(100svh - 89px),930px);min-height:630px;isolation:isolate;position:relative}
.hero-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;opacity:0;transform:scale(1.13);filter:saturate(.88) brightness(.76);transition:opacity 1.15s ease;will-change:transform,opacity;z-index:0}
.hero-visual>img.active{opacity:1;animation:heroZoomOut 6.5s cubic-bezier(.16,.25,.3,1) both}
@keyframes heroZoomOut{from{transform:scale(1.14)}to{transform:scale(1)}}
.hero-visual:after{z-index:1;background:linear-gradient(90deg,rgba(7,28,30,.52),rgba(8,35,34,.25) 42%,rgba(7,24,26,.34)),linear-gradient(0deg,rgba(6,24,24,.58),transparent 35%,rgba(8,24,24,.18))}
.hero-visual .hero-copy{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:105px 7% 130px;max-width:1100px;margin:0 auto;pointer-events:none}
.hero-visual .hero-copy>*{pointer-events:auto}
.hero .eyebrow{color:#e7d0af;font-size:12px;text-shadow:0 2px 16px #0007}
.hero h1{font-size:clamp(62px,7.2vw,112px);line-height:1.06;max-width:980px;color:#fff;letter-spacing:-.065em;margin:20px 0 24px;text-wrap:balance;text-shadow:0 4px 35px rgba(0,0,0,.26)}
.hero h1 em{color:#e8cba4}
.hero .lead{color:#f6f4ed;font-size:clamp(15px,1.25vw,19px);line-height:1.7;max-width:670px;margin:0;text-shadow:0 2px 16px #0009}
.hero .actions{justify-content:center;margin-top:33px}
.hero .btn{border-color:#fff;color:#fff;background:rgba(14,36,36,.22);backdrop-filter:blur(5px)}
.hero .btn.solid{color:#193534;background:#fff;border-color:#fff}
.hero .btn:hover{background:#e9cfad;color:#193534;border-color:#e9cfad}
.hero-visual .slider-dots{bottom:36px;z-index:5}
.hero-visual .slide-tools{bottom:26px;left:5%;right:5%;z-index:4}
.hero-visual .slider-dots button{height:10px;width:10px}
@media(max-width:780px){.hero-visual{height:clamp(590px,calc(100svh - 74px),850px);min-height:590px}.hero-visual .hero-copy{padding:90px 7% 115px}.hero h1{font-size:clamp(52px,9vw,76px)}.hero .lead{max-width:570px}.hero-visual>img{object-position:center}}
@media(max-width:560px){.hero-visual{height:calc(100svh - 74px);min-height:610px;max-height:860px}.hero-visual .hero-copy{padding:75px 20px 115px}.hero h1{font-size:clamp(47px,12vw,65px);line-height:1.07}.hero .eyebrow{font-size:10px;letter-spacing:.15em}.hero .lead{font-size:14px;line-height:1.65}.hero .actions{gap:9px;margin-top:24px}.hero .btn{padding:14px 15px;font-size:10px}.hero-visual .slide-tools{bottom:20px;left:20px;right:20px}.slide-tools #slideCount{font-size:9px;max-width:110px;line-height:1.5}.hero-visual .slider-dots{bottom:33px}}
@media(prefers-reduced-motion:reduce){.hero-visual>img.active{animation:none;transform:none}.hero-visual>img{transition:none}}
