.mes-wrap{container-type:inline-size;width:100%}
.mes{box-sizing:border-box;padding:24px 0 0;background:#FBF6EC}
.mes-card{position:relative;display:grid;grid-template-columns:minmax(0,55fr) minmax(0,45fr);grid-template-rows:1fr auto auto 1fr;grid-template-areas:"foto ." "foto head" "foto body" "foto .";min-height:600px;overflow:hidden;background:#052E25;border-top:1px solid rgba(201,162,74,.55);border-bottom:1px solid rgba(201,162,74,.55)}
.mes-foto{grid-area:foto;position:relative;overflow:hidden;min-height:100%;background:#0F4638}
.mes-foto img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 58%;display:block;transition:transform .8s ease}
.mes-card:hover .mes-foto img{transform:scale(1.03)}
.mes-head{grid-area:head;display:flex;flex-direction:column;gap:14px;padding:0 96px 0 72px}
.mes-body{grid-area:body;display:flex;flex-direction:column;gap:22px;padding:22px 96px 0 72px}
.mes-eye{font-size:12px;font-weight:500;letter-spacing:.22em;color:#E6CB86}
.mes-title{margin:0;font-family:'Cormorant Garamond',serif;font-weight:600;font-size:88px;line-height:.95;color:#FBF6EC}
.mes-desc{margin:0;max-width:440px;font-size:17px;line-height:1.7;color:#D9CFBD}
.mes-meta{display:flex;align-items:center;gap:18px;flex-wrap:wrap;font-size:14px;color:#E6CB86}
.mes-meta .dot{display:inline-flex;align-items:center;gap:10px}
.mes-meta .dot::before{content:"";width:8px;height:8px;border-radius:50%;background:#C9A24A;box-shadow:0 0 0 4px rgba(201,162,74,.18)}
.mes-btns{display:flex;gap:12px;flex-wrap:wrap;padding-top:4px}
.mes-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:56px;padding:0 26px;border-radius:999px;font-size:15px;font-weight:500;letter-spacing:.02em;box-sizing:border-box}
.mes-wa{background:#C2185B;color:#FFFFFF}
.mes-ver{border:1.5px solid rgba(251,246,236,.7);color:#FBF6EC}
.mes-ver:hover{background:#FBF6EC;color:#052E25}
.mes-cel{display:none}
@container (max-width: 1000px){ .mes{padding:32px 0 0;background:#FBF6EC} .mes-card{grid-template-columns:minmax(0,1fr) minmax(0,1fr);min-height:480px} .mes-head{padding:0 32px 0 32px;gap:10px} .mes-body{padding:18px 32px 0 32px;gap:18px} .mes-title{font-size:64px} .mes-desc{font-size:16px} .mes-btns{flex-direction:column} .mes-btn{width:100%;height:52px} }
@container (max-width: 600px){ .mes{padding:28px 0 0;background:#FBF6EC} .mes-card{display:flex;flex-direction:column;min-height:0} .mes-head{padding:28px 20px 18px;gap:8px} .mes-foto{height:390px;min-height:0} .mes-body{padding:22px 20px 30px;gap:16px} .mes-title{font-size:52px} .mes-desc{font-size:15px;line-height:1.65} .mes-btn{height:52px} .mes-esc{display:none} .mes-cel{display:inline-flex} }
.fl a{display:inline-block;padding:2px 0;border-bottom:1px solid transparent;transition:color .2s ease,border-color .2s ease}
.fl a:hover{color:#E6CB86;border-bottom-color:#C9A24A}
.gr-wrap{container-type:inline-size;flex-grow:1;display:flex;width:100%}
.gr{flex-grow:1;display:flex;flex-direction:column;gap:14px;padding:28px;border-radius:10px;background:#052E25;color:#FBF6EC;box-sizing:border-box}
.gr-src{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:#D9CFBD}
.gr-num{font-family:'Cormorant Garamond',serif;font-size:64px;font-weight:600;line-height:1}
.gr-stars{display:flex;gap:3px}
.gr-star{position:relative;display:inline-block;width:20px;height:20px;color:rgba(201,162,74,.28)}
.gr-star svg{display:block}
.gr-star .fill{position:absolute;top:0;left:0;height:100%;overflow:hidden;color:#C9A24A}
.gr-btns{display:flex;flex-direction:column;gap:10px;margin-top:auto;padding-top:6px}
.gr-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:10px 18px;border-radius:999px;font-size:14.5px;font-weight:500;text-align:center;line-height:1.25;box-sizing:border-box}
.gr-main{background:#C9A24A;color:#052E25}
.gr-sec{border:1.5px solid rgba(230,203,134,.6);color:#FBF6EC}
.gr-sec:hover{background:#FBF6EC;color:#052E25}
@container (min-width: 330px){ .gr{gap:10px;padding:20px} .gr-num{font-size:52px} }
.igm{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;grid-auto-flow:dense}
.igm .igt{display:block;width:100%;aspect-ratio:4/5;margin:0;padding:0;border:0;border-radius:8px;overflow:hidden;position:relative;cursor:pointer;background:#EFE3CD}
.igm .igt:first-child{grid-column:span 2;aspect-ratio:4/5}
.igm .igt.wide{grid-column:span 2;aspect-ratio:16/10}
.igm .igt img{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;transition:transform .6s ease,filter .3s ease}
.igm .igt:hover img{transform:scale(1.04);filter:brightness(.92)}
.igm .igt:focus-visible{outline:3px solid #C9A24A;outline-offset:2px}
.ig-lbimg{animation:iglb .3s ease both}
@keyframes iglb{from{opacity:0;transform:scale(.97)}to{opacity:1;transform:none}}
.lbbtn{transition:background-color .2s ease,color .2s ease}
.lbbtn:hover{background:#C9A24A !important;color:#052E25 !important}
.rv-track{display:flex;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;padding:4px 2px 8px}
.rv-track::-webkit-scrollbar{display:none}
.rv-card{scroll-snap-align:start;flex:0 0 auto;margin:0;background:#FFFFFF;border:1px solid #EADFCB;border-radius:10px;display:flex;flex-direction:column;gap:16px;box-sizing:border-box}
.rv-nav{transition:background-color .2s ease,color .2s ease}
.rv-nav:hover{background:#052E25 !important;color:#E6CB86 !important}
.chips{scrollbar-width:none;-ms-overflow-style:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;overscroll-behavior-x:contain}
.chips::-webkit-scrollbar{display:none}
.chips button{scroll-snap-align:start}
.nuevo{position:absolute;top:12px;left:12px;z-index:2;padding:5px 10px;border-radius:999px;background:#C2185B;color:#FFFFFF;font-family:Jost,sans-serif;font-size:10.5px;font-weight:500;letter-spacing:.16em;line-height:1;box-shadow:0 4px 10px rgba(194,24,91,.3)}
.pimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.nph{position:absolute;top:12px;right:12px;padding:5px 10px;border-radius:999px;background:rgba(3,33,26,.78);color:#F3EADA;font-size:11.5px;letter-spacing:.04em}
.gal-btn{transition:background-color .2s ease,transform .2s ease}
.gal-btn:hover{background:#FFFFFF;transform:scale(1.05)}
.thumb{transition:border-color .2s ease,opacity .2s ease}
.gal-img{animation:gal-in .35s ease both}
@keyframes gal-in{from{opacity:.25}to{opacity:1}}
.hscroll{scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory}
.hscroll::-webkit-scrollbar{display:none}
.hscroll > *{scroll-snap-align:start}
.rot{position:absolute;inset:0;display:block}
.rot img.rot-i.rot-i{transition:opacity 1.2s ease-in-out,transform .6s ease}
.gdot{position:relative}
.gdot::after{content:"";position:absolute;inset:-16px -8px}
.pp-ref{position:relative;margin:0;padding:0;border:2px solid transparent;border-radius:8px;overflow:hidden;cursor:pointer;background:#EFE3CD;display:block;width:100%;aspect-ratio:4/5;transition:border-color .2s ease,transform .2s ease}
.pp-ref img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.pp-ref:hover img{transform:scale(1.03)}
.pp-ref[aria-pressed="true"]{border-color:#C9A24A}
.pp-ref .pp-tag{position:absolute;left:8px;bottom:8px;display:inline-flex;align-items:center;gap:6px;padding:6px 11px;border-radius:999px;background:rgba(251,246,236,.95);color:#052E25;font-size:12px;font-weight:500}
.pp-ref[aria-pressed="true"] .pp-tag{background:#C9A24A;color:#052E25}
.pp-chip{height:42px;padding:0 16px;border-radius:999px;font-family:Jost,sans-serif;font-size:14.5px;cursor:pointer;transition:background-color .2s ease,border-color .2s ease}
.pp-open{animation:ppIn .4s ease both}
@keyframes ppIn{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion: reduce){.pp-open{animation:none}}
.pol{position:absolute;background:#FFFFFF;box-sizing:border-box;box-shadow:0 16px 36px rgba(43,33,26,.16);animation:pol-in .5s ease both}
.pol img{display:block;width:100%;object-fit:cover;filter:saturate(.92) contrast(1.02)}
@keyframes pol-in{from{opacity:0;translate:0 14px}to{opacity:1;translate:0 0}}
.tl-nav{transition:background-color .2s ease,color .2s ease}
.tl-nav:hover{background:#052E25;color:#FBF6EC}
@media (prefers-reduced-motion: reduce){.pol{animation:none}}
.fab-tip{position:absolute;right:calc(100% + 12px);top:50%;transform:translate(8px,-50%);opacity:0;pointer-events:none;white-space:nowrap;background:#052E25;color:#FBF6EC;font-family:Jost,sans-serif;font-size:14px;font-weight:500;line-height:1;padding:10px 16px;border-radius:999px;box-shadow:0 8px 20px rgba(3,33,26,.22);transition:opacity .25s ease,transform .25s ease}
@media (hover:hover) and (pointer:fine){.fab:hover .fab-tip{opacity:1;transform:translate(0,-50%)}}
.fab:focus-visible{outline:3px solid #C9A24A;outline-offset:3px}
.fab:focus-visible .fab-tip{opacity:1;transform:translate(0,-50%)}
.nmap{position:absolute;inset:0;display:block;overflow:hidden;background:#F3EBDC;-webkit-tap-highlight-color:transparent}
.nmap-w{position:absolute;left:50%;top:50%;aspect-ratio:1672/941;transform:translate(-50%,-50%)}
.nmap-w > img.nmap-bg{position:absolute;inset:0;width:100%;height:100%;display:block;transition:transform .5s ease}
.nmap:hover img.nmap-bg{transform:scale(1.03)}
.nmap-pulse{position:absolute;left:53.2%;top:51%;width:7%;aspect-ratio:2/1;margin:-1.75% 0 0 -3.5%;border-radius:50%;background:rgba(194,24,91,.45);animation:nmapPulse 1.6s ease-out infinite}
.nmap-pin{position:absolute;left:50.42%;top:37.41%;width:5.56%;transform-origin:50% 100%;animation:nmapBounce 1.6s cubic-bezier(.3,0,.3,1) infinite;filter:drop-shadow(0 4px 4px rgba(3,33,26,.35))}
.nmap-chip{position:absolute;left:10px;bottom:10px;display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border-radius:999px;background:rgba(251,246,236,.94);border:1px solid #C9A24A;color:#052E25;font-size:12.5px;font-weight:500;box-shadow:0 4px 12px rgba(3,33,26,.15)}
@keyframes nmapBounce{0%,100%{transform:translateY(0) scaleY(1)}12%{transform:translateY(0) scaleY(.94)}40%{transform:translateY(-22%) scaleY(1.02)}62%{transform:translateY(0) scaleY(1)}72%{transform:translateY(-6%)}82%{transform:translateY(0)}}
@keyframes nmapPulse{0%{transform:scale(.4);opacity:.9}70%{transform:scale(2.4);opacity:0}100%{transform:scale(2.4);opacity:0}}
@media (prefers-reduced-motion: reduce){.nmap-pin,.nmap-pulse{animation:none}}
body{margin:0;font-family:Jost,sans-serif;color:#2B211A}
a{color:inherit;text-decoration:none}
button{font-family:Jost,sans-serif;cursor:pointer}
.ph{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;box-sizing:border-box;padding:18px;overflow:hidden}
.ph-crema{background-color:#EFE3CD;background-image:repeating-linear-gradient(135deg,rgba(5,46,37,.05) 0 2px,transparent 2px 18px);color:#6B5A4A}
.ph-madera{background-color:#E2CDAA;background-image:repeating-linear-gradient(0deg,rgba(110,75,35,.09) 0 1px,transparent 1px 10px);color:#5A4630}
.ph-verde{background-color:#0F4638;background-image:repeating-linear-gradient(135deg,rgba(230,203,134,.08) 0 2px,transparent 2px 18px);color:#DCD2BE}
.ph-sepia{background-color:#D8C4A0;background-image:repeating-linear-gradient(45deg,rgba(90,60,30,.07) 0 2px,transparent 2px 12px);color:#5A4630}
.ph .k{font-size:10px;letter-spacing:.18em;font-weight:500}
.ph .d{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:18px;line-height:1.3;max-width:300px}
.btn{transition:transform .2s ease,box-shadow .2s ease,background-color .2s ease,color .2s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(5,46,37,.16)}
.card .zoom{transition:transform .6s ease}
.card:hover .zoom{transform:scale(1.05)}
.card{transition:box-shadow .3s ease}
.card:hover{box-shadow:0 20px 44px rgba(5,46,37,.12)}
.card .hov{opacity:0;transform:translateY(8px);transition:opacity .25s ease,transform .25s ease}
.card:hover .hov{opacity:1;transform:translateY(0)}
.nav a{padding:8px 0;border-bottom:1px solid transparent;transition:border-color .2s ease,color .2s ease}
.nav a:hover{border-bottom-color:#C9A24A;color:#8A6A22}
.lnk{border-bottom:1px solid currentColor;padding-bottom:2px;transition:color .2s ease}
.lnk:hover{color:#C2185B}
.in{height:52px;padding:0 14px;border:1px solid #D9CBB0;border-radius:6px;font-family:Jost,sans-serif;font-size:16px;color:#2B211A;background:#FFFFFF;box-sizing:border-box;width:100%;-webkit-appearance:none;appearance:none}
textarea.in{height:auto;min-height:112px;padding:12px 14px;resize:vertical;line-height:1.5}
.in::placeholder{color:#A8998A}
.in:focus{outline:2px solid #C9A24A;outline-offset:1px;border-color:#C9A24A}
.in.bad{border-color:#B3261E;background:#FFF8F7}
.fld{display:flex;flex-direction:column;gap:7px;font-size:14px;color:#2B211A;font-weight:500;min-width:0}
.fld .rq{color:#C2185B}
.fld .opt{color:#6B5A4A;font-weight:400}
.fld .hint{font-size:12.5px;color:#6B5A4A;font-weight:400;line-height:1.4}
.fld .err{font-size:13px;color:#B3261E;font-weight:400;line-height:1.35}
.fld .err:empty{display:none}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{min-height:44px;padding:0 16px;border-radius:999px;font-size:14.5px;font-family:Jost,sans-serif;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.cvbox{position:relative;display:flex;align-items:center;gap:14px;padding:16px 18px;border:1.5px dashed #C9A24A;border-radius:8px;background:#FBF6EC;cursor:pointer;transition:background-color .2s ease}
.cvbox:hover{background:#F6EEDD}
.cvbox.bad{border-color:#B3261E;background:#FFF8F7}
.cvbox input{position:absolute;width:1px;height:1px;opacity:0;overflow:hidden}
.cvbox:focus-within{outline:2px solid #C9A24A;outline-offset:2px}
.job{transition:box-shadow .3s ease,transform .3s ease,border-color .3s ease}
.job:hover{box-shadow:0 18px 40px rgba(5,46,37,.10);border-color:#C9A24A}
.anc{scroll-margin-top:84px}
.lgx h2{margin:0;font-family:'Cormorant Garamond',serif;font-weight:600;color:#052E25;line-height:1.1}
.lgx p{margin:0;line-height:1.7;color:#2B211A}
.lgx ul{margin:0;padding:0 0 0 20px;line-height:1.7;color:#2B211A;display:flex;flex-direction:column;gap:6px}
.lgx strong{font-weight:500;color:#052E25}
.lgx a{color:#A3124B;border-bottom:1px solid currentColor}
.lgx section{display:flex;flex-direction:column;gap:14px;scroll-margin-top:24px}
.toc a{display:flex;align-items:center;min-height:36px;color:#6B5A4A;border-left:2px solid #EADFCB;padding-left:14px;transition:color .2s ease,border-color .2s ease}
.toc a:hover{color:#052E25;border-left-color:#C9A24A}
.hoja dt{color:#6B5A4A}
.hoja dd{margin:0;color:#2B211A;overflow-wrap:anywhere}