
:root{--coral:#f16b55;--mango:#ffbf47;--teal:#087e8b;--deep:#07545c;--leaf:#7a9e48;--pink:#f7d6d0;--sky:#d8f1f0;--cream:#fff9ef;--ink:#243638;--muted:#667476;--line:#e5e4d9;--white:#fff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif;line-height:1.65}h1,h2,h3,.display-serif{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em}h1{font-size:clamp(3.2rem,7.5vw,7rem);line-height:.95}h2{font-size:clamp(2.3rem,4.6vw,4.2rem);line-height:1.05}h3{font-size:1.7rem}p{color:var(--muted)}a{color:inherit;text-decoration:none}.eyebrow{font-size:.72rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase;color:var(--teal)}.btn-coral{background:var(--coral);color:#fff;border:2px solid var(--coral);border-radius:50px;padding:.85rem 1.4rem;font-weight:700}.btn-coral:hover{background:#d95340;color:#fff;border-color:#d95340}.btn-teal{background:var(--teal);color:#fff;border:2px solid var(--teal);border-radius:50px;padding:.85rem 1.4rem;font-weight:700}.btn-teal:hover{background:var(--deep);color:#fff}.btn-round-outline{border:2px solid currentColor;border-radius:50px;padding:.8rem 1.25rem;font-weight:700}.navbar{background:rgba(255,249,239,.96);border-bottom:1px solid #e9e1d4;padding:.8rem 0}.navbar-brand{font-family:Georgia,serif;font-size:1.55rem;font-weight:bold;line-height:1;color:var(--deep)}.brand-small{display:block;font-family:Inter,sans-serif;font-size:.57rem;letter-spacing:.2em;text-transform:uppercase;color:var(--coral);margin-top:.42rem}.nav-link{font-size:.88rem;font-weight:650;color:var(--ink)!important;margin:0 .25rem}.nav-link:hover{color:var(--coral)!important}.hero{min-height:83vh;display:flex;align-items:center;position:relative;background-size:cover;background-position:center;color:white;overflow:hidden}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,62,69,.82),rgba(4,62,69,.15) 80%),linear-gradient(0deg,rgba(0,0,0,.18),transparent)}.hero-inner{position:relative;padding:7rem 0}.hero h1 em{color:var(--mango);font-style:normal}.hero p{color:#f3f7f4;font-size:1.12rem;max-width:560px}.hero .eyebrow{color:#ffe1a4}.sun-sticker{display:inline-flex;align-items:center;gap:.5rem;border-radius:50px;padding:.55rem 1rem;background:var(--mango);color:var(--deep);font-size:.76rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;margin-bottom:1.6rem}.section-pad{padding:6rem 0}.section-head{max-width:720px;margin-bottom:2.7rem}.section-head p{max-width:620px}.color-band{background:var(--sky)}.color-band-coral{background:var(--coral);color:white}.color-band-coral p{color:#fff0eb}.color-band-coral .eyebrow{color:#ffe2a0}.image-frame{overflow:hidden;border-radius:22px;background:#e8e5d9}.image-frame img{width:100%;height:100%;object-fit:cover;transition:transform .55s}.image-frame:hover img{transform:scale(1.04)}.intro-image{height:510px;border-radius:46% 46% 22px 22px}.room-card{height:100%;background:white;border-radius:24px;overflow:hidden;border:1px solid #eee5d8;box-shadow:0 12px 32px #0d4b5010}.room-card .image-frame{height:280px;border-radius:0}.room-card-body{padding:1.5rem 1.6rem 1.8rem}.room-meta{font-size:.75rem;font-weight:750;text-transform:uppercase;letter-spacing:.09em;color:var(--coral)}.room-card p{font-size:.94rem}.text-link{display:inline-block;color:var(--teal);font-size:.82rem;text-transform:uppercase;letter-spacing:.1em;font-weight:800;border-bottom:2px solid var(--mango);padding-bottom:.2rem}.round-photo{border:10px solid white;border-radius:30px;box-shadow:0 16px 40px #00464c1a}.stat-band{background:var(--mango)}.stat{padding:1.8rem 1rem;text-align:center}.stat strong{font-family:Georgia,serif;font-size:2.2rem;font-weight:400;display:block;color:var(--deep)}.stat span{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;font-weight:800;color:#53605b}.feature{padding:1.5rem;border-top:2px solid #d9e4df;height:100%}.feature-icon{width:52px;height:52px;display:grid;place-items:center;background:var(--pink);color:#b54435;border-radius:18px;font-size:1.35rem;margin-bottom:1rem}.feature:nth-child(2n) .feature-icon{background:var(--mango);color:var(--deep)}.quote-section{background:var(--deep);color:white}.quote-section p{color:#d8e9e7}.quote-section .eyebrow{color:var(--mango)}.quote-mark{font-family:Georgia,serif;font-size:5rem;line-height:.7;color:var(--coral)}.cta-band{background:var(--coral);color:white}.cta-band p{color:#fff0eb;max-width:620px}.cta-band .eyebrow{color:#ffe4a4}.cta-band .btn{background:var(--mango);color:var(--deep);border-color:var(--mango)}.footer{background:#083e44;color:white;padding:4rem 0 1.5rem}.footer p,.footer a{color:#c8dfdc}.footer a:hover{color:var(--mango)}.footer-title{font-family:Georgia,serif;font-size:1.7rem}.footer-bottom{border-top:1px solid #38656a;margin-top:3rem;padding-top:1rem;font-size:.8rem;color:#b9d2cf}.page-hero{padding:7rem 0 4rem;background:radial-gradient(circle at 85% 20%,#ffdf91 0,transparent 26%),linear-gradient(120deg,#d8f1f0,#fff5e5);border-bottom:1px solid #dce5dc}.page-hero h1{font-size:clamp(3.2rem,6vw,5.5rem)}.breadcrumb{font-size:.82rem;color:var(--muted)}.gallery-tile{height:300px;cursor:pointer;border-radius:22px}.gallery-tile.tall{height:420px}.amenity{display:flex;gap:1rem;align-items:center;padding:1.1rem 0;border-bottom:1px solid var(--line)}.amenity-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;background:var(--sky);color:var(--teal);border-radius:15px;font-size:1.1rem}.contact-card{background:#fff;border:1px solid #ece3d5;border-radius:24px;padding:2rem;box-shadow:0 12px 32px #0d4b500b}.form-control,.form-select{border-radius:12px;border-color:#d7e1da;padding:.8rem;background:#fffdf9}.form-control:focus,.form-select:focus{border-color:var(--teal);box-shadow:0 0 0 .2rem #087e8b1c}.sticky-book{position:fixed;z-index:1030;bottom:14px;right:14px;box-shadow:0 8px 30px #0002}.map-frame{width:100%;height:360px;border:0;border-radius:20px}.lightbox{position:fixed;inset:0;background:#062d30ee;display:none;align-items:center;justify-content:center;z-index:2000;padding:2rem}.lightbox.show{display:flex}.lightbox img{max-width:92vw;max-height:85vh;object-fit:contain;border-radius:12px}.lightbox button{position:absolute;top:1rem;right:1.4rem;background:transparent;border:0;color:white;font-size:2rem}.small-note{font-size:.82rem;color:var(--muted)}.pill-label{display:inline-block;background:var(--pink);color:#a73f32;border-radius:30px;padding:.35rem .75rem;font-size:.75rem;font-weight:800}
@media(max-width:767px){.hero{min-height:78vh}.hero-inner{padding:6rem 0 4rem}.section-pad{padding:4rem 0}.intro-image{height:350px}.room-card .image-frame{height:240px}.gallery-tile,.gallery-tile.tall{height:250px}.page-hero{padding:5.5rem 0 3rem}.contact-card{padding:1.2rem}.navbar-brand{font-size:1.3rem}.sticky-book{left:12px;right:12px;bottom:10px;text-align:center}.footer{padding-bottom:5rem}}

/* Casa Sevara homepage welcome section */
.welcome-section{background:linear-gradient(180deg,var(--cream) 0%,#fffdf8 100%);overflow:hidden}.welcome-image{height:390px;position:relative;border-radius:28px;box-shadow:0 24px 60px #083e4424}.welcome-image:after{content:"";position:absolute;inset:35% 0 0;background:linear-gradient(transparent,#062d30a8)}.welcome-image img{object-position:center 48%}.welcome-image-caption{position:absolute;z-index:1;left:2rem;right:2rem;bottom:1.5rem;display:flex;justify-content:space-between;align-items:center;color:white;font-size:.8rem;font-weight:750;letter-spacing:.12em;text-transform:uppercase}.welcome-image-caption span:first-child{font-family:Georgia,serif;font-size:1.5rem;font-weight:400;letter-spacing:0;text-transform:none}.welcome-card{position:relative;z-index:2;max-width:1100px;margin:-3.5rem auto 0;padding:clamp(1.5rem,4vw,3.5rem);background:#fff;border:1px solid #eee5d8;border-radius:26px;box-shadow:0 18px 55px #083e4412}.welcome-card h2{max-width:850px;font-size:clamp(2rem,3.5vw,3.2rem);line-height:1.13}.welcome-card h2 em{color:var(--teal);font-style:normal}.welcome-copy p{font-size:.96rem;line-height:1.8;margin-bottom:1rem}.welcome-highlights{margin-top:2.3rem;padding:1.8rem;background:#f2f8f5;border:1px solid #e0ece5;border-radius:20px}.welcome-highlights-heading{display:flex;align-items:baseline;gap:1rem;margin-bottom:1.25rem}.welcome-highlights-heading .eyebrow{margin:0!important}.welcome-highlights-heading h3{margin:0;color:var(--deep);font-size:1.65rem}.welcome-highlight-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.7rem 1rem;list-style:none;padding:0;margin:0}.welcome-highlight-list li{position:relative;padding:.8rem .9rem .8rem 2.25rem;background:#fff;border:1px solid #e8eee8;border-radius:12px;font-size:.86rem;font-weight:650;line-height:1.45;color:var(--ink)}.welcome-highlight-list li:before{content:"✦";position:absolute;left:.9rem;top:.82rem;color:var(--coral);font-size:.8rem}.welcome-tagline{margin-top:1.8rem!important;text-align:center;font-family:Georgia,serif;font-size:clamp(1.15rem,2vw,1.6rem);color:var(--deep)}.welcome-tagline span{color:var(--coral)}
@media(max-width:991px){.welcome-highlight-list{grid-template-columns:repeat(2,minmax(0,1fr))}.welcome-image{height:340px}}
@media(max-width:575px){.welcome-image{height:260px;border-radius:20px}.welcome-image-caption{left:1rem;right:1rem;bottom:1rem;font-size:.65rem}.welcome-image-caption span:first-child{font-size:1.2rem}.welcome-card{margin-top:-2rem;border-radius:20px;padding:1.35rem}.welcome-card h2 br{display:none}.welcome-highlights{padding:1.1rem;margin-top:1.6rem}.welcome-highlights-heading{display:block}.welcome-highlights-heading h3{margin-top:.35rem}.welcome-highlight-list{grid-template-columns:1fr;gap:.55rem}.welcome-highlight-list li{font-size:.82rem}}
/* Keep the homepage welcome photo at its native resolution */
.welcome-image{height:auto;max-width:640px;margin-inline:auto}.welcome-image img{display:block;width:100%;height:auto;object-fit:contain;transition:none}.welcome-image:hover img{transform:none}
@media(max-width:991px){.welcome-image{height:auto}}
@media(max-width:575px){.welcome-image{height:auto}}
/* Homepage welcome left-copy right-photo layout */
.welcome-card{margin:0 auto}.welcome-layout{align-items:center}.welcome-image{width:100%;max-width:640px;margin:0 auto;height:auto}.welcome-image img{width:100%;height:auto;display:block;object-fit:contain;transition:none}.welcome-image:hover img{transform:none}
@media(max-width:991px){.welcome-image{height:auto}}
@media(max-width:575px){.welcome-card{margin:0 auto}}
/* Fit the welcome heading cleanly in its text column */
.welcome-card h2{font-size:clamp(1.85rem,3.2vw,2.8rem)}