:root{--blue:#245d78;--sky:#dcecf0;--sand:#f5f0e7;--orange:#f2a65a;--ink:#17313a;--white:#fff}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--ink);font-family:Arial,sans-serif;line-height:1.6}h1,h2,h3{font-family:"Trebuchet MS",Arial,sans-serif;line-height:1;letter-spacing:-.045em}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:white;padding:1rem;z-index:10}header{height:78px;padding:0 max(22px,calc((100vw - 1160px)/2));display:flex;align-items:center;justify-content:space-between;background:rgba(245,240,231,.94);border-bottom:1px solid #bac6c7;position:sticky;top:0;z-index:8}.logo{text-decoration:none;font-size:1.2rem}.logo b{color:var(--blue)}.logo span{display:block;text-transform:uppercase;letter-spacing:.15em;font-size:.5rem}nav{display:flex;gap:1.7rem;align-items:center}nav a{font-size:.8rem;font-weight:700}.nav-button{background:var(--blue);color:white;text-decoration:none;padding:.7rem 1rem}.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1fr 1fr}.hero-copy{padding:clamp(4rem,9vw,9rem) max(24px,calc((100vw - 1160px)/2));padding-right:clamp(2rem,6vw,6rem);display:flex;flex-direction:column;justify-content:center}.label{text-transform:uppercase;letter-spacing:.13em;font-size:.65rem;color:var(--blue);font-weight:800}.hero h1{font-size:clamp(4rem,7vw,7rem);margin:1rem 0}.hero h1 em{font-style:normal;color:var(--blue)}.hero-copy>p:not(.label){max-width:560px}.button{display:inline-block;align-self:flex-start;background:var(--orange);padding:.85rem 1.1rem;text-decoration:none;font-weight:800;margin-top:1rem}.hero-photo,.admin-photo{background:linear-gradient(180deg,transparent 60%,rgba(23,49,58,.35)),url('/assets/spain-dream.webp') center/cover,var(--sky);position:relative}.photo-caption{position:absolute;right:2rem;bottom:2rem;background:white;padding:1rem 1.3rem}.photo-caption span,.photo-caption b{display:block}.photo-caption span{font-size:.6rem;text-transform:uppercase;letter-spacing:.1em}.promise{background:var(--blue);color:white;padding:2rem max(22px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:.7fr 2fr;gap:4rem;align-items:center}.promise span{text-transform:uppercase;font-size:.6rem;letter-spacing:.12em}.promise p{font-size:1.25rem;margin:0;max-width:780px}.route{padding:clamp(5rem,10vw,9rem) 22px;max-width:1160px;margin:auto}.route-head{display:grid;grid-template-columns:.7fr 2fr;gap:4rem;margin-bottom:4rem}.route-head h2{font-size:clamp(3rem,6vw,6rem);margin:0}.room-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.room-grid article{background:white;padding:2.2rem;min-height:350px;display:flex;flex-direction:column;border-top:5px solid var(--blue)}.room-grid article:nth-child(2),.room-grid article:nth-child(3){background:var(--sky)}.room-grid article>span{color:var(--blue);font-weight:800}.room-grid h3{font-size:2rem;margin:2rem 0 1rem}.room-grid a,.room-grid small{margin-top:auto;font-weight:800;color:var(--blue)}.admin{display:grid;grid-template-columns:1fr 1fr;min-height:700px;background:white}.admin-photo{background-position:60% center}.admin-copy{padding:clamp(4rem,8vw,8rem);display:flex;flex-direction:column;justify-content:center}.admin-copy h2{font-size:clamp(3rem,5vw,5rem)}.dark{background:var(--blue);color:white}.notice{background:var(--orange);padding:clamp(4rem,8vw,7rem) max(22px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1fr 1.5fr;gap:4rem}.notice h2{font-size:clamp(2.5rem,5vw,5rem)}footer{padding:4rem max(22px,calc((100vw - 1160px)/2));display:grid;grid-template-columns:1.5fr 1fr;gap:2rem;background:var(--ink);color:white}footer a{display:block;color:white;margin:.4rem 0}footer>p{grid-column:1/-1;border-top:1px solid #587078;padding-top:1rem;font-size:.7rem}.error{min-height:100vh;display:grid;place-content:center;padding:2rem}.error h1{font-size:4rem}@media(max-width:760px){nav>a:not(.nav-button){display:none}.hero{grid-template-columns:1fr}.hero-photo{min-height:48vh;grid-row:1}.hero-copy{padding:4rem 22px}.hero h1{font-size:3.6rem}.promise,.route-head,.admin,.notice{grid-template-columns:1fr;gap:1.5rem}.room-grid{grid-template-columns:1fr}.room-grid article{min-height:300px}.admin-photo{min-height:55vh}.admin-copy{padding:4rem 22px}footer{grid-template-columns:1fr}footer>p{grid-column:auto}}
