@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,400;0,500;1,400&display=swap');
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #e9af4c;outline-offset:4px}button,input,select{font:inherit}.demo{min-height:35px;padding:8px 5%;display:flex;justify-content:center;gap:25px;align-items:center;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.07em;background:#d8cbb1;color:#26382c}.demo a{text-decoration:underline;text-underline-offset:3px}.nav{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 6%;position:relative;z-index:2}.mark{font-size:25px;letter-spacing:.19em;font-weight:600;line-height:1}.mark span{display:block;font-size:7px;letter-spacing:.25em;margin-top:7px}.nav nav{display:flex;gap:38px;font-size:12px}.nav-link{font-size:11px;letter-spacing:.06em;border-bottom:1px solid currentColor;padding:9px 0}h1,h2,h3{font-family:'Playfair Display',Georgia,serif;font-weight:400;letter-spacing:-.04em}h1 em,h2 em{font-weight:400}h2{font-size:clamp(45px,5.4vw,79px);line-height:1.08;margin:0}.kicker{font-size:10px;letter-spacing:.15em;font-weight:700}.line-link{display:inline-block;border-bottom:1px solid currentColor;padding-bottom:9px;font-size:12px;font-weight:600;margin-top:20px}.studio{background:#f5f3e9;color:#314c3d}.studio-hero{padding:20px 6% 0}.studio-head{display:grid;grid-template-columns:1fr auto;align-items:end}.studio-head>.kicker{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid #b8c1b2;padding-top:16px}.studio-head h1{font-size:clamp(70px,10vw,150px);line-height:.94;margin:50px 0 55px}.hero-text{max-width:240px;padding-bottom:57px;font-size:13px;line-height:1.7}.hero-text a{display:block;margin-top:22px;font-size:10px;font-weight:700;letter-spacing:.1em}.hero-text a span{margin-left:20px}.studio-image{height:64vw;max-height:680px;min-height:360px;background-image:url('hotel-editorial.webp'),url('hotel-paisaje.webp');background-position:center;background-size:cover}.image-caption{display:flex;justify-content:space-between;font-size:9px;letter-spacing:.1em;margin-top:14px}.story{padding:145px 11%;display:grid;grid-template-columns:1fr 2.2fr .4fr;gap:6%}.story>div>p,.places-heading>p:not(.kicker),.studio-stay>div>p:not(.kicker){font-size:15px;line-height:1.9;max-width:480px;margin:28px 0}.seal{width:85px;height:85px;border:1px solid #a7b6a4;border-radius:50%;display:grid;place-content:center;text-align:center;font-family:Georgia;font-size:22px}.studio-places{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#dbe4d6}.places-heading{padding:100px 12%}.places-heading h2{margin-top:35px}.places-photo{background-image:url('hotel-editorial.webp'),url('hotel-paisaje.webp');background-position:72% center;background-size:cover;min-height:560px}.places-cards{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);padding:0 6% 80px;gap:0}.places-cards article{border-top:1px solid #a9b9a6;padding:25px 25px 0}.places-cards article+article{border-left:1px solid #a9b9a6}.places-cards span,.night-grid span{font-size:10px;letter-spacing:.13em}.places-cards h3{font-size:29px;margin:45px 0 10px}.places-cards p{font-size:13px;line-height:1.7;max-width:250px}.studio-stay,.night-stay{padding:120px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.studio-stay h2{margin-top:30px}.booking{padding:32px;background:#fffdf6;color:#243d30}.demo-note{font-size:12px;line-height:1.5;color:#465d4c;margin:0 0 25px}.fields{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px}.fields label{font-size:10px;font-weight:700;display:flex;flex-direction:column;gap:10px}.fields input,.fields select{min-width:0;width:100%;height:43px;border:0;border-bottom:1px solid #a1afa1;background:transparent;color:inherit;font-size:13px}.booking button{border:0;background:#29483a;color:white;width:100%;padding:18px;text-align:left;cursor:pointer;margin-top:27px;font-size:12px}.booking button:hover{background:#496b56}.form-message{font-size:12px;min-height:18px;margin:12px 0 0}footer{display:flex;align-items:end;justify-content:space-between;padding:60px 8%;gap:20px}footer p{font-size:11px}footer p a{text-decoration:underline;text-underline-offset:4px}.night{background:#101b20;color:#eee9df}.night .nav{position:absolute;left:0;right:0;color:#f3ede3}.night .nav-link{border:1px solid #a5a9a3;padding:14px}.night-hero{height:calc(100svh - 35px);min-height:680px;position:relative;overflow:hidden}.night-photo,.night-overlay{position:absolute;inset:0}.night-photo{background-image:url('hotel-nocturno.webp'),url('hotel-paisaje.webp');background-position:center;background-size:cover;animation:reveal 1.7s ease-out both}.night-overlay{background:linear-gradient(90deg,rgba(4,13,18,.8),rgba(4,13,18,.12)),linear-gradient(0deg,rgba(4,13,18,.65),transparent 70%)}.night-title{position:absolute;left:8%;right:8%;bottom:10%}.night-title h1{font-size:clamp(68px,9.2vw,137px);line-height:.97;margin:35px 0 45px}.night-intro{display:flex;align-items:end;justify-content:space-between;max-width:940px;gap:25px}.night-intro p{font-size:14px;line-height:1.7;max-width:300px}.night-intro a{border-bottom:1px solid #e3d6ba;padding-bottom:12px;font-size:12px}.night-intro a span{margin-left:25px}.night-edge{position:absolute;right:3%;top:43%;writing-mode:vertical-rl;font-size:9px;letter-spacing:.2em}.night-manifesto{padding:150px 9%;display:grid;grid-template-columns:1fr 2fr;gap:8%}.small-note{font-size:10px;line-height:1.7;letter-spacing:.12em;margin-top:100px;color:#c2c5bf}.night-manifesto>div:last-child>p,.night-stay>div>p:not(.kicker){max-width:480px;color:#c6cfcc;font-size:15px;line-height:1.8;margin-top:30px}.night-scenes{padding:120px 9%;background:#263d3a}.night-scenes-head h2{margin-top:35px}.night-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:90px}.night-grid article{min-height:300px;padding:30px 0;border-top:1px solid #869892}.night-grid h3{font-size:35px;margin:60px 0 15px;line-height:1.05}.night-grid p{color:#d2ddd7;font-size:13px;line-height:1.7;max-width:250px}.night-stay{background:#14282c}.night-stay h2{margin-top:30px}.night-stay .booking{background:#eae3d5}.night footer{background:#0a1519}@keyframes reveal{from{transform:scale(1.04);opacity:.7}to{transform:scale(1);opacity:1}}@media(max-width:800px){.nav nav{display:none}.story{grid-template-columns:1fr 2fr;padding:100px 7%}.seal{display:none}.studio-stay,.night-stay{gap:5%}.fields{grid-template-columns:1fr 1fr}.fields label:last-child{grid-column:1/-1}}@media(max-width:560px){.demo{font-size:9px;gap:5px;justify-content:space-between}.nav{height:80px;padding:0 6%}.mark{font-size:20px}.nav-link{font-size:10px}.studio-head{display:block}.studio-head h1{font-size:clamp(53px,11vw,75px);margin:50px 0 30px}.hero-text{padding-bottom:35px}.studio-image{min-height:420px}.studio-head>.kicker span{display:none}.story{display:block;padding:95px 7%}.story>div{margin-top:35px}.studio-places{grid-template-columns:1fr}.places-heading{padding:85px 7%}.places-photo{min-height:430px}.places-cards{grid-column:auto;grid-template-columns:1fr;padding:0 7% 65px}.places-cards article,.places-cards article+article{border-left:0;padding:25px 0}.places-cards h3{margin:22px 0 10px}.studio-stay,.night-stay{grid-template-columns:1fr;padding:90px 7%;gap:35px}.booking{padding:25px}.night .nav-link{padding:11px 8px}.night-hero{min-height:660px}.night-title{left:7%;right:7%;bottom:9%}.night-title h1{font-size:clamp(52px,11vw,75px)}.night-intro{display:block}.night-intro a{display:inline-block;margin-top:12px}.night-edge{display:none}.night-manifesto{display:block;padding:95px 7%}.small-note{display:none}.night-manifesto>div:last-child{margin-top:35px}.night-scenes{padding:90px 7%}.night-grid{grid-template-columns:1fr;gap:0;margin-top:55px}.night-grid article{min-height:0}.night-grid h3{margin:30px 0 15px}footer{padding:55px 7%}}@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:560px){.studio-stay,.night-stay{grid-template-columns:minmax(0,1fr)}.booking{min-width:0}.fields{grid-template-columns:minmax(0,1fr)}.fields label:last-child{grid-column:auto}}
