@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');
:root{--orange:#ee7821;--orange2:#ff9a4b;--ink:#111;--ink2:#1a1a1a;--paper:#f6f5f2;--muted:#6d6d6d;--line:#e7e3dd;--white:#fff;--shadow:0 22px 70px rgba(18,18,18,.10);--radius:24px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.7}body:before{content:"";position:fixed;inset:0;pointer-events:none;opacity:.32;background-image:radial-gradient(rgba(17,17,17,.045) .7px,transparent .7px);background-size:8px 8px;z-index:-1}h1,h2,h3,h4,h5,h6,.navbar-brand{font-family:'Manrope',Arial,sans-serif}a{text-decoration:none;color:inherit}.text-orange{color:var(--orange)!important}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;font-weight:800;color:var(--orange);display:inline-flex;align-items:center;gap:10px}.eyebrow:before{content:"";width:26px;height:2px;background:var(--orange);display:inline-block}.btn-orange{background:var(--orange);border:1px solid var(--orange);color:#fff;font-weight:800;border-radius:12px;padding:.9rem 1.35rem;position:relative;overflow:hidden;transition:.3s}.btn-orange:before{content:"";position:absolute;inset:0;background:linear-gradient(100deg,transparent 30%,rgba(255,255,255,.25),transparent 70%);transform:translateX(-120%);transition:.6s}.btn-orange:hover:before{transform:translateX(120%)}.btn-orange:hover{background:#d96511;border-color:#d96511;color:#fff;transform:translateY(-2px);box-shadow:0 14px 30px rgba(238,120,33,.25)}.btn-outline-light,.btn-outline-dark{border-radius:12px;font-weight:800;padding:.85rem 1.3rem}.topbar{background:#0d0d0d;color:#bcbcbc;font-size:.77rem;letter-spacing:.01em}.topbar .container{min-height:38px}.topbar i{color:var(--orange)}.topbar a:hover{color:#fff}.navbar{background:rgba(255,255,255,.94)!important;backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.07);z-index:1030;transition:.3s}.navbar.scrolled{box-shadow:0 12px 38px rgba(0,0,0,.09)}.navbar-brand{font-weight:800}.brand-logo{width:46px;height:46px;object-fit:contain}.brand-name{width:215px;height:auto;object-fit:contain}.navbar-nav{gap:.15rem}.navbar-nav .nav-link{font-size:.84rem;font-weight:700;padding:.72rem .75rem!important;color:#333;position:relative}.navbar-nav .nav-link:before{content:"";position:absolute;left:.75rem;right:.75rem;bottom:.34rem;height:2px;background:var(--orange);transform:scaleX(0);transform-origin:right;transition:.25s}.navbar-nav .nav-link:hover:before,.navbar-nav .nav-link.active:before{transform:scaleX(1);transform-origin:left}.navbar .btn-orange{padding:.68rem 1.05rem;font-size:.82rem}.hero{position:relative;background:#111}.hero .carousel-item{height:min(790px,calc(100vh - 38px));min-height:620px;background-size:cover;background-position:center}.hero .carousel-item:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,7,7,.86) 0%,rgba(7,7,7,.55) 38%,rgba(7,7,7,.12) 72%,rgba(7,7,7,.22) 100%)}.hero .carousel-item:after{content:"";position:absolute;right:7%;top:12%;width:1px;height:68%;background:rgba(255,255,255,.22)}.hero-content{position:relative;z-index:2;color:#fff;padding:0 0 10vh;max-width:860px}.hero-kicker{display:inline-flex;align-items:center;gap:12px;color:#ffc18f;font-size:.72rem;font-weight:800;text-transform:uppercase;letter-spacing:.22em;margin-bottom:20px}.hero-kicker:before{content:"";width:42px;height:2px;background:var(--orange)}.hero h1{font-size:clamp(3rem,7vw,6.8rem);font-weight:800;line-height:.96;letter-spacing:-.065em;margin:0 0 25px}.hero h1 .outline{-webkit-text-stroke:1px rgba(255,255,255,.65);color:transparent}.hero p{font-size:1.08rem;line-height:1.75;color:#e8e8e8;max-width:650px;margin-bottom:30px}.hero-actions{display:flex;flex-wrap:wrap;gap:10px}.hero .carousel-indicators{justify-content:flex-start;left:max(12px,calc((100% - 1240px)/2));bottom:34px;margin-left:12px;gap:7px}.hero .carousel-indicators button{width:34px;height:3px;border:0;background:#fff;opacity:.4}.hero .carousel-indicators button.active{opacity:1;background:var(--orange)}.hero .carousel-control-prev,.hero .carousel-control-next{width:7%;z-index:3}.hero .carousel-control-prev-icon,.hero .carousel-control-next-icon{width:35px;height:35px}.hero-booking-strip{position:absolute;z-index:5;left:50%;bottom:-100px;transform:translateX(-50%);width:min(1120px,calc(100% - 32px));background:#fff;border:1px solid rgba(0,0,0,.08);box-shadow:0 20px 55px rgba(0,0,0,.16);padding:16px;border-radius:18px}.hero-booking-strip .field{padding:9px 18px;border-right:1px solid var(--line)}.hero-booking-strip .field:last-of-type{border:0}.hero-booking-strip small{display:block;text-transform:uppercase;letter-spacing:.12em;color:#999;font-weight:800;font-size:.6rem}.hero-booking-strip strong{font-size:.88rem}.section{padding:120px 0}.section-sm{padding:70px 0}.section-title{font-size:clamp(2.15rem,4.3vw,4rem);font-weight:800;letter-spacing:-.055em;line-height:1.02;margin:0}.lead-copy{color:#666;font-size:1rem}.paper{background:var(--paper)}.dark-band{background:#111;color:#fff;position:relative;overflow:hidden}.dark-band:before{content:"";position:absolute;width:600px;height:600px;border:1px solid rgba(238,120,33,.22);border-radius:50%;right:-260px;top:-250px}.dark-band:after{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.08);border-radius:50%;right:-160px;top:-160px}.dark-band .container{position:relative;z-index:2}.dark-band .lead-copy{color:#bcbcbc}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:55px}.section-heading .copy{max-width:620px}.split-visual{position:relative;padding:0 0 50px 50px}.split-visual:before{content:"";position:absolute;left:0;top:45px;width:72%;height:78%;border:1px solid var(--orange);border-radius:24px;z-index:0}.image-card{height:100%;min-height:300px;border-radius:24px;overflow:hidden;background:#ddd;box-shadow:var(--shadow);position:relative;z-index:1}.image-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 60%,rgba(0,0,0,.18));pointer-events:none}.image-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1)}.image-card:hover img{transform:scale(1.045)}.vertical-label{position:absolute;left:10px;bottom:5px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:.62rem;letter-spacing:.2em;font-weight:800;color:#777}.stat-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:35px}.stat{padding:22px 20px 22px 0;border-right:1px solid var(--line)}.stat:last-child{border:0;padding-left:20px}.stat strong{display:block;font-family:'Manrope';font-size:2.25rem;line-height:1;font-weight:800}.stat span{display:block;color:#777;font-size:.75rem;margin-top:8px}.feature-card{height:100%;border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;transition:.35s;position:relative}.feature-card:after{content:"";position:absolute;inset:auto 0 0;height:3px;background:var(--orange);transform:scaleX(0);transform-origin:left;transition:.35s}.feature-card:hover{transform:translateY(-9px);box-shadow:var(--shadow);border-color:transparent}.feature-card:hover:after{transform:scaleX(1)}.feature-card .media{height:235px;overflow:hidden}.feature-card .media img{width:100%;height:100%;object-fit:cover;transition:.65s}.feature-card:hover img{transform:scale(1.07)}.feature-card .body{padding:24px}.feature-card h3{font-size:1.12rem;font-weight:800;margin-bottom:8px}.feature-card p{font-size:.9rem;line-height:1.65}.number-card{height:100%;padding:35px;border-radius:20px;background:#fff;border:1px solid var(--line);position:relative;overflow:hidden}.number-card .number{font-family:'Manrope';font-size:4rem;font-weight:800;line-height:1;color:var(--orange);opacity:.95}.number-card h3{font-size:1.15rem;font-weight:800}.number-card:before{content:"";position:absolute;width:100px;height:100px;border-radius:50%;background:rgba(238,120,33,.08);right:-25px;top:-25px}.room-card{height:100%;border:1px solid var(--line);border-radius:22px;overflow:hidden;background:#fff;transition:.35s}.room-card:hover{transform:translateY(-8px);box-shadow:var(--shadow)}.room-card .media{height:275px;overflow:hidden;position:relative}.room-card .media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(0,0,0,.3))}.room-card .media img{width:100%;height:100%;object-fit:cover;transition:.65s}.room-card:hover .media img{transform:scale(1.06)}.room-card .body{padding:25px}.room-tag{position:absolute;z-index:2;left:16px;bottom:15px;color:#fff;text-transform:uppercase;letter-spacing:.15em;font-size:.62rem;font-weight:800}.facility-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.facility-item{display:flex;gap:14px;align-items:flex-start;padding:17px;border:1px solid var(--line);border-radius:15px;background:#fff;transition:.25s}.facility-item:hover{border-color:rgba(238,120,33,.5);transform:translateX(4px)}.facility-item i{color:var(--orange);margin-top:5px}.gallery-item{position:relative;display:block;overflow:hidden;border-radius:18px;height:310px;background:#ddd}.gallery-item.tall{height:450px}.gallery-item img{width:100%;height:100%;object-fit:cover;transition:.7s}.gallery-item:after{content:"\f002";font-family:"Font Awesome 6 Free";font-weight:900;position:absolute;right:18px;bottom:18px;width:44px;height:44px;border-radius:50%;background:#fff;color:var(--orange);display:grid;place-items:center;opacity:0;transform:translateY(8px);transition:.3s;box-shadow:0 8px 20px rgba(0,0,0,.12)}.gallery-item:hover img{transform:scale(1.08);filter:brightness(.82)}.gallery-item:hover:after{opacity:1;transform:none}.page-hero{padding:105px 0 90px;background:#111;color:#fff;position:relative;overflow:hidden}.page-hero:before{content:"";position:absolute;width:550px;height:550px;border:1px solid rgba(238,120,33,.35);border-radius:50%;right:-170px;top:-270px}.page-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(125deg,transparent 0 55%,rgba(238,120,33,.07) 55% 56%,transparent 56%);pointer-events:none}.page-hero .container{position:relative;z-index:2}.page-hero h1{font-size:clamp(2.5rem,5vw,5rem);font-weight:800;letter-spacing:-.06em;line-height:1}.intro-card{height:100%;padding:34px;border:1px solid var(--line);border-radius:22px;background:#fff;position:relative;overflow:hidden}.intro-card:after{content:"";position:absolute;right:-40px;bottom:-70px;width:160px;height:160px;border-radius:50%;background:rgba(238,120,33,.08)}.booking-box{background:#fff;border-radius:22px;box-shadow:0 25px 80px rgba(0,0,0,.16);padding:30px;border:1px solid rgba(0,0,0,.06)}.form-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#555}.form-control,.form-select{border-radius:11px;border:1px solid #ddd;padding:.82rem 1rem}.form-control:focus,.form-select:focus{border-color:var(--orange);box-shadow:0 0 0 .2rem rgba(238,120,33,.12)}.contact-card{height:100%;padding:24px;border:1px solid var(--line);border-radius:20px;background:#fff;transition:.3s}.contact-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}.contact-card i{width:48px;height:48px;border-radius:13px;background:rgba(238,120,33,.1);display:grid;place-items:center;color:var(--orange)}.map-wrap{min-height:420px;border-radius:22px;overflow:hidden;box-shadow:var(--shadow);background:#eee}.map-wrap iframe{width:100%;height:100%;min-height:420px;border:0}.footer{background:#0d0d0d;color:#aaa;padding:75px 0 25px;position:relative;overflow:hidden}.footer:before{content:"";position:absolute;width:500px;height:500px;border:1px solid rgba(238,120,33,.12);border-radius:50%;right:-240px;top:-250px}.footer .container{position:relative;z-index:1}.footer h5{color:#fff;font-weight:800}.footer a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);margin-top:48px;padding-top:22px;font-size:.8rem}.social-float{position:fixed;right:20px;bottom:20px;z-index:1050;display:flex;flex-direction:column;gap:9px}.social-float a{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;color:#fff;box-shadow:0 10px 25px rgba(0,0,0,.22);transition:.3s}.social-float a:hover{transform:translateY(-5px) rotate(-3deg)}.social-float .whatsapp{background:#20c66b}.social-float .facebook{background:#1877f2}.social-float .instagram{background:linear-gradient(45deg,#f9ce34,#ee2a7b,#6228d7)}.scroll-top{position:fixed;right:20px;bottom:200px;width:42px;height:42px;border:0;border-radius:12px;background:#111;color:#fff;display:grid;place-items:center;z-index:1049;opacity:0;visibility:hidden;transition:.25s}.scroll-top.show{opacity:1;visibility:visible}.booking-cta{position:relative;overflow:hidden;background:var(--orange);color:#fff;border-radius:28px;padding:55px}.booking-cta:before{content:"";position:absolute;width:420px;height:420px;border:1px solid rgba(255,255,255,.2);border-radius:50%;right:-140px;top:-180px}.booking-cta:after{content:"";position:absolute;width:240px;height:240px;border:1px solid rgba(255,255,255,.13);border-radius:50%;right:20px;bottom:-160px}.booking-cta>*{position:relative;z-index:1}.reveal{opacity:0;transform:translateY(25px);transition:opacity .75s ease,transform .75s cubic-bezier(.2,.7,.2,1)}.reveal.show{opacity:1;transform:none}.delay-1{transition-delay:.08s}.delay-2{transition-delay:.16s}.delay-3{transition-delay:.24s}.check-list{list-style:none;padding:0;margin:0}.check-list li{display:flex;gap:10px;margin:10px 0}.check-list i{color:var(--orange);margin-top:6px}.alert-success{border-radius:13px}
@media(max-width:991px){.topbar{display:none}.hero .carousel-item{height:calc(100vh - 74px);min-height:620px}.hero .carousel-item:after{display:none}.hero-booking-strip{position:relative;left:auto;bottom:auto;transform:none;margin:-30px auto 0}.hero-booking-strip .field{border:0;border-bottom:1px solid var(--line);padding:10px 8px}.section{padding:85px 0}.section-heading{display:block;margin-bottom:38px}.split-visual{padding:0 0 35px 25px}.facility-list{grid-template-columns:1fr}.gallery-item.tall{height:310px}}
@media(max-width:575px){.brand-name{width:190px}.brand-logo{width:40px;height:40px}.navbar-nav .nav-link:before{display:none}.hero h1{font-size:3.1rem}.hero p{font-size:.95rem}.hero .carousel-item{min-height:650px}.hero-content{padding-bottom:90px}.hero-booking-strip{width:calc(100% - 24px);padding:12px}.hero-actions .btn{width:100%;text-align:center}.section{padding:70px 0}.section-title{font-size:2.35rem}.stat-grid{grid-template-columns:1fr}.stat,.stat:last-child{border-right:0;border-bottom:1px solid var(--line);padding:18px 0}.stat:last-child{border-bottom:0}.booking-cta{padding:35px 25px}.social-float{right:13px;bottom:13px}.social-float a{width:44px;height:44px;border-radius:12px}.scroll-top{right:13px;bottom:180px}}

/* Facilities page enhancements */
.feature-copy {
    border-left: 3px solid #ee7821;
    padding: 1rem 0 1rem 2rem;
}

.accent-line {
    width: 62px;
    height: 4px;
    background: #ee7821;
    border-radius: 20px;
}

.amenity-panel {
    background: #fff;
    border: 1px solid rgba(0,0,0,.07);
    border-radius: 24px;
    padding: clamp(1.25rem, 3vw, 2rem);
    box-shadow: 0 20px 55px rgba(0,0,0,.06);
}

.amenity-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: .8rem;
}

.amenity-chip {
    display: flex;
    align-items: center;
    gap: .8rem;
    min-height: 58px;
    padding: .85rem 1rem;
    border: 1px solid rgba(0,0,0,.07);
    border-radius: 14px;
    background: #fff;
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.amenity-chip:hover {
    transform: translateY(-3px);
    border-color: rgba(238,120,33,.35);
    box-shadow: 0 12px 28px rgba(0,0,0,.07);
}

.amenity-chip i {
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    display: grid;
    place-items: center;
    color: #ee7821;
    background: rgba(238,120,33,.09);
    border-radius: 10px;
}

.amenity-chip span {
    font-size: .9rem;
    line-height: 1.4;
    font-weight: 600;
}

.amenity-note {
    display: flex;
    gap: 1rem;
    padding: 1rem 1.1rem;
    background: #fafafa;
    border-radius: 14px;
    border-left: 3px solid #ee7821;
}

.amenity-note i {
    color: #ee7821;
    margin-top: .25rem;
}

.amenity-note p {
    font-size: .9rem;
    line-height: 1.7;
    color: #555;
}

.image-card {
    position: relative;
    overflow: hidden;
    border-radius: 24px;
}

.image-card-overlay {
    position: absolute;
    left: 1.25rem;
    bottom: 1.25rem;
    right: 1.25rem;
    padding: .85rem 1rem;
    border-radius: 12px;
    color: #fff;
    background: rgba(0,0,0,.58);
    backdrop-filter: blur(10px);
    font-size: .82rem;
    font-weight: 700;
    letter-spacing: .04em;
}

.chargeable-box {
    padding: clamp(1.5rem, 4vw, 2.5rem);
    border-radius: 24px;
    background: #f7f7f7;
    border: 1px solid rgba(0,0,0,.06);
}

.chargeable-list {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: .8rem;
}

.chargeable-item {
    display: flex;
    align-items: center;
    gap: .8rem;
    padding: .9rem;
    border-radius: 14px;
    background: #fff;
    border: 1px solid rgba(0,0,0,.06);
    font-weight: 600;
    font-size: .9rem;
    transition: transform .25s ease, box-shadow .25s ease;
}

.chargeable-item:hover {
    transform: translateY(-3px);
    box-shadow: 0 10px 25px rgba(0,0,0,.06);
}

.chargeable-icon {
    width: 38px;
    height: 38px;
    flex: 0 0 38px;
    display: grid;
    place-items: center;
    border-radius: 11px;
    color: #ee7821;
    background: rgba(238,120,33,.1);
}

.modern-cta {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 2rem;
    padding: clamp(1.5rem, 4vw, 2.5rem);
    border-radius: 24px;
    background: #111;
    color: #fff;
    position: relative;
    overflow: hidden;
}

.modern-cta::after {
    content: "";
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(238,120,33,.18);
    right: -90px;
    top: -120px;
}

.modern-cta > * {
    position: relative;
    z-index: 1;
}

@media (max-width: 767.98px) {
    .amenity-grid,
    .chargeable-list {
        grid-template-columns: 1fr;
    }

    .modern-cta {
        flex-direction: column;
        align-items: flex-start;
    }
}
