:root{--ink:#12345b;--deep:#082846;--sand:#f2eee4;--paper:#fcfaf5;--orange:#c99a3d;--gold:#d8ae58;--muted:#65758a;--line:#ded8ca;--serif:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);line-height:1.6}a{color:inherit;text-decoration:none}.container{width:min(1160px,calc(100% - 40px));margin-inline:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{height:84px;background:rgba(251,248,242,.94);position:fixed;inset:0 0 auto;z-index:20;border-bottom:1px solid rgba(21,61,58,.1);backdrop-filter:blur(14px)}.nav-wrap{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center;gap:12px}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--ink);border-radius:50%;font-family:var(--serif);font-size:13px}.brand strong,.brand small{display:block}.brand strong{font-family:var(--serif);font-size:17px;line-height:1.1}.brand small{font-size:9px;letter-spacing:.2em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:30px;font-size:13px;font-weight:600}.main-nav>a:not(.button):hover{color:var(--orange)}.button{display:inline-flex;justify-content:center;align-items:center;padding:14px 22px;background:var(--orange);color:white;border-radius:3px;font-size:13px;font-weight:700;letter-spacing:.02em;transition:.25s}.button:hover{background:#c55e34;transform:translateY(-2px)}.button-small{padding:11px 18px}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:var(--ink);margin:5px}
.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:11px;font-weight:700;color:#f0c38e;margin:0 0 20px}.eyebrow.dark{color:var(--orange)}h1,h2,h3{font-family:var(--serif);line-height:1.08;margin-top:0}h1{font-size:clamp(56px,7.5vw,108px);letter-spacing:-.04em;margin-bottom:28px}h1 em{color:#f0c38e;font-weight:600}.hero-actions{display:flex;align-items:center;gap:32px;margin-top:38px}.text-link{font-size:13px;font-weight:700}.text-link span{margin-left:8px}
.hero-slider{height:100vh;min-height:720px;max-height:940px;position:relative;overflow:hidden;background:var(--ink);color:#fff}.slides,.hero-slide,.slide-scene,.slide-overlay{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s;display:flex;align-items:center;padding-top:84px}.hero-slide.active{opacity:1;visibility:visible;z-index:2}.slide-overlay{background:linear-gradient(90deg,rgba(7,35,33,.92) 0%,rgba(7,35,33,.58) 48%,rgba(7,35,33,.12) 100%);z-index:1}.slide-content{position:relative;z-index:2}.slide-content>p:last-of-type{max-width:500px;color:#dfebe8;font-size:18px}.slide-content h1{transform:translateY(18px);opacity:0;transition:.8s .2s}.slide-content>p,.slide-content .hero-actions{transform:translateY(14px);opacity:0;transition:.7s .35s}.hero-slide.active .slide-content h1,.hero-slide.active .slide-content>p,.hero-slide.active .slide-content .hero-actions{transform:none;opacity:1}
.slide-scene{overflow:hidden}.scene-coast{background:linear-gradient(155deg,#e9a461 0 38%,#6b8f8d 39% 62%,#235553 63%)}.scene-sun{position:absolute;width:420px;height:420px;border-radius:50%;background:#ffd28e;right:10%;top:12%;box-shadow:0 0 100px #ffd28e66}.scene-land{position:absolute;right:-5%;bottom:16%;width:68%;height:40%;background:#183f3c;clip-path:polygon(0 100%,12% 60%,28% 70%,43% 18%,57% 45%,69% 10%,82% 61%,100% 36%,100% 100%)}.scene-water{position:absolute;inset:auto 0 0;height:24%;background:repeating-linear-gradient(175deg,#36716e 0,#36716e 14px,#43817d 15px,#43817d 28px)}
.scene-room{background:linear-gradient(110deg,#d5b48d 0 48%,#805d42 49% 100%)}.room-window{position:absolute;right:8%;top:12%;width:42%;height:60%;background:linear-gradient(#9fc3c8 0 54%,#367276 55% 68%,#d8b77f 69%);border:22px solid #ead8be}.room-bed{position:absolute;right:23%;bottom:7%;width:46%;height:34%;border-radius:60% 60% 3px 3px;background:#f7eee1;box-shadow:0 30px 0 #a18161}.room-lamp{position:absolute;right:7%;bottom:12%;width:7%;height:33%;border-top:70px solid #e8c386;border-left:35px solid transparent;border-right:35px solid transparent}
.scene-pool{background:linear-gradient(#e5a763 0 52%,#e5c69c 53%)}.pool-building{position:absolute;right:5%;bottom:22%;width:65%;height:55%;background:#f0d8bc;clip-path:polygon(0 100%,0 20%,12% 0,100% 0,100% 100%)}.pool-building:after{content:"";position:absolute;inset:20% 8% 0;background:repeating-linear-gradient(90deg,#346b68 0,#346b68 15%,#ebd5ba 15%,#ebd5ba 23%)}.pool-water{position:absolute;inset:auto 0 0;height:28%;background:repeating-linear-gradient(170deg,#5aa09e 0,#5aa09e 12px,#70b4b0 13px,#70b4b0 26px)}.pool-palm{position:absolute;right:7%;top:8%;font-size:190px;color:#285c49;transform:rotate(20deg)}
.slider-ui{position:absolute;z-index:5;left:50%;bottom:34px;transform:translateX(-50%);display:flex;justify-content:space-between;align-items:center}.slider-dots{display:flex;gap:10px}.slider-dot{width:34px;height:3px;padding:0;border:0;background:#ffffff55;cursor:pointer;transition:.3s}.slider-dot.active{background:#fff;width:58px}.slider-arrows{display:flex;gap:8px}.slider-arrows button{width:44px;height:44px;border:1px solid #ffffff66;border-radius:50%;background:#0e353560;color:white;font-size:18px;cursor:pointer;transition:.25s}.slider-arrows button:hover{background:#fff;color:var(--ink)}
.section{padding:120px 0}.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:100px}.intro h2,.section-heading h2,.experience h2,.contact h2{font-size:clamp(40px,5vw,68px);letter-spacing:-.035em;margin-bottom:0}.intro-copy>p{font-size:18px;color:#526762;margin:50px 0}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;border-top:1px solid var(--line);padding-top:28px}.stats strong{font:700 28px var(--serif);display:block}.stats span{font-size:11px;color:var(--muted)}
.rooms{background:var(--sand)}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:55px}.section-heading>p{max-width:390px;color:#60706c}.room-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.room-card{background:#fff}.room-visual{height:380px;position:relative;overflow:hidden;background:#a9c4bf}.room-visual:before,.room-visual:after{content:"";position:absolute}.room-visual span{position:absolute;left:18px;top:18px;background:#fff;padding:7px 11px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;z-index:2}.room-ocean{background:linear-gradient(#a8cad1 0 55%,#347278 55% 70%,#e2c5a2 70%)}.room-ocean:before{width:65%;height:55%;background:#f5eee5;left:18%;bottom:0;box-shadow:0 0 0 14px #d2b797}.room-ocean:after{width:45%;height:25%;background:#fff;left:28%;bottom:10%;border-radius:50% 50% 8px 8px}.room-garden{background:linear-gradient(135deg,#315c4a,#8eaa74)}.room-garden:before{width:70%;height:80%;background:#e9ddc8;left:15%;bottom:0;border-radius:120px 120px 0 0}.room-garden:after{width:50%;height:48%;background:linear-gradient(#9bc1bd 0 45%,#3d6c58 45%);left:25%;bottom:0}.room-suite{background:linear-gradient(#d9b98b 0 60%,#795b3d 60%)}.room-suite:before{width:60%;height:40%;background:#f3e6d2;left:20%;bottom:13%;border-radius:3px;box-shadow:0 22px 0 #8c704f}.room-suite:after{width:28%;height:28%;border-radius:50% 50% 0 0;background:#729382;right:8%;top:12%}.room-info{padding:24px;display:flex;justify-content:space-between;align-items:center}.room-info p{font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:0 0 6px}.room-info h3{font-size:25px;margin:0}.room-arrow{font-size:25px}
.experience{background:var(--ink);color:white}.experience-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:100px;align-items:center}.experience-art{height:600px;background:#edcda7;position:relative;overflow:hidden}.experience-art:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#e9a65e,#efcfa8 55%)}.arch{position:absolute;bottom:20%;width:30%;height:55%;background:#f3dfc8;border-radius:50% 50% 0 0;z-index:1}.arch-one{left:12%}.arch-two{left:44%;height:45%}.arch:after{content:"";position:absolute;inset:12% 15% 0;background:#3d7572;border-radius:50% 50% 0 0}.pool{position:absolute;z-index:2;bottom:0;width:100%;height:24%;background:repeating-linear-gradient(170deg,#559693 0,#559693 10px,#69aaa5 11px,#69aaa5 20px)}.palm{position:absolute;right:10%;top:12%;font-size:120px;color:#2d5c4b;z-index:3;transform:rotate(20deg)}.experience-copy>p:not(.eyebrow){color:#c6d4d1;font-size:17px;margin:30px 0 45px}.amenities{list-style:none;padding:0;margin:0;border-top:1px solid #ffffff30}.amenities li{padding:18px 0;border-bottom:1px solid #ffffff30}.amenities span{display:inline-block;width:55px;color:#e7b780;font-size:11px}
.gallery-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;grid-template-rows:250px 250px;gap:16px}.gallery-item{position:relative;overflow:hidden;background:#ddd}.gallery-item:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 55%,#102d2caa)}.gallery-item span{position:absolute;z-index:2;color:#fff;left:20px;bottom:16px;font:600 18px var(--serif)}.gallery-tall{grid-row:1/3;background:linear-gradient(145deg,#efbd79,#b56b43 48%,#24524e)}.gallery-sunset{grid-column:2/4;background:radial-gradient(circle at 70% 44%,#ffcd74 0 10%,transparent 11%),linear-gradient(#d87856 0 58%,#334f55 59%)}.gallery-food{background:radial-gradient(circle at center,#f3d6aa 0 25%,#b45d38 26% 35%,#d0a465 36% 55%,#5c6946 56%)}.gallery-coast{background:linear-gradient(155deg,#91b8b4 0 45%,#275e61 46% 64%,#d4b083 65%)}.contact{padding-top:40px}.contact-card{background:var(--orange);color:white;padding:75px;display:grid;grid-template-columns:1.2fr .8fr;gap:60px}.contact-card .eyebrow{color:#ffe0c2}.contact-details{display:flex;flex-direction:column;align-items:flex-start;gap:10px}.contact-details p{margin-top:0}.button-light{background:white;color:var(--ink);margin-top:22px}.button-light:hover{background:#f7e9db}
.site-footer{background:#0c2e2c;color:#b9cbc7;padding:70px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.2fr;gap:70px}.brand-footer{color:white;margin-bottom:24px}.footer-grid p{max-width:400px}.footer-grid h3{color:white;font:600 13px var(--sans);text-transform:uppercase;letter-spacing:.15em}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom{border-top:1px solid #ffffff20;margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;font-size:11px}
.reservation-hero{background:var(--ink);color:#fff;padding:170px 0 80px}.reservation-hero h1{font-size:clamp(54px,8vw,90px);margin-bottom:15px}.reservation-hero p:last-child{color:#bed0cd;max-width:590px}.reservation-section{padding:55px 0 100px}.iframe-notice{display:flex;align-items:center;gap:18px;margin-bottom:18px}.iframe-notice span{background:#deeee8;color:#24624f;padding:7px 10px;font-size:10px;font-weight:bold;text-transform:uppercase;letter-spacing:.1em}.iframe-notice p{margin:0;color:var(--muted);font-size:13px}.iframe-wrap{height:520px;border:1px solid var(--line);background:#fff;box-shadow:0 18px 60px #173d3b12}.iframe-wrap iframe{width:100%;height:100%;border:0}.iframe-help{text-align:center;font-size:12px;color:var(--muted);margin-top:18px}.iframe-help a{text-decoration:underline}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .75s ease,transform .75s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:900px){.main-nav{position:fixed;inset:84px 0 auto;background:var(--paper);padding:30px;display:none;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.main-nav.open{display:flex}.menu-toggle{display:block}.intro-grid,.experience-grid,.contact-card{grid-template-columns:1fr;gap:45px}.section-heading{display:block}.section-heading>p{margin-top:22px}.room-grid{grid-template-columns:1fr 1fr}.room-card:last-child{grid-column:1/3}.experience-art{height:500px}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-tall{grid-row:1/3}.gallery-sunset{grid-column:2}.footer-grid{grid-template-columns:1.5fr 1fr}.footer-grid>div:last-child{grid-column:1/3}}
@media(max-width:620px){.container{width:min(100% - 28px,1160px)}.section{padding:80px 0}.hero-slider{min-height:700px}.slide-overlay{background:linear-gradient(90deg,rgba(7,35,33,.9),rgba(7,35,33,.45))}.slide-content{padding-bottom:60px}.hero-actions{align-items:flex-start;flex-direction:column;gap:20px}.scene-sun{width:300px;height:300px;right:-22%;top:18%}.room-window{width:70%;right:-10%}.room-bed{width:70%;right:-10%}.slider-arrows{display:none}.intro-grid{gap:35px}.intro-copy>p{margin:20px 0 40px}.stats{grid-template-columns:1fr;gap:15px}.stats div{display:flex;align-items:baseline;gap:12px}.room-grid{grid-template-columns:1fr}.room-card:last-child{grid-column:auto}.room-visual{height:330px}.experience-art{height:400px}.gallery-grid{display:grid;grid-template-columns:1fr;grid-template-rows:repeat(4,230px)}.gallery-item,.gallery-tall,.gallery-sunset{grid-column:auto;grid-row:auto}.contact-card{padding:45px 28px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{gap:20px;align-items:flex-start;flex-direction:column}.reservation-hero{padding:140px 0 60px}.iframe-wrap{height:600px}.iframe-notice{align-items:flex-start;flex-direction:column;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}}

/* Fotografias do banner */
.slides .slide-photo{position:absolute;inset:0;background-position:center;background-size:cover;transform:scale(1.04);transition:transform 7s ease}
.hero-slide.active .slide-photo{transform:scale(1)}
.slide-photo-hotel{background-image:url("../images/hotel-fachada.jpeg");background-position:center 46%}
.slide-photo-room{background-image:url("../images/suite-blue-sky.jpeg");background-position:center}
.slide-photo-gallery{background-image:url("../images/hotel-recepcao.jpeg");background-position:center}
.slide-photo-twin{background-image:url("../images/quarto-twin.jpeg");background-position:center 58%}
.experience-venue{height:600px;background:linear-gradient(90deg,rgba(10,42,40,.08),rgba(10,42,40,.08)),url("../images/hotel-recepcao.jpeg") center/cover no-repeat}
.room-ocean{background:url("../images/quarto-casal.jpeg") center/cover no-repeat}
.room-garden{background:url("../images/quarto-standard.jpeg") center/cover no-repeat}
.room-suite{background:url("../images/suite-blue-sky.jpeg") center/cover no-repeat}
.room-ocean:before,.room-ocean:after,.room-garden:before,.room-garden:after,.room-suite:before,.room-suite:after{display:none}
.gallery-tall{background:url("../images/hotel-fachada.jpeg") center/cover no-repeat}
.gallery-sunset{background:url("../images/hotel-recepcao.jpeg") center/cover no-repeat}
.gallery-food{background:url("../images/suite-blue-sky.jpeg") center/cover no-repeat}
.gallery-coast{background:url("../images/quarto-twin.jpeg") center/cover no-repeat}

/* Informações do hotel */
.hotel-info-grid{display:grid;grid-template-columns:repeat(3,1fr);margin-top:80px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.hotel-info-grid article{padding:42px 38px;border-right:1px solid var(--line)}
.hotel-info-grid article:last-child{border-right:0}
.hotel-info-grid article>span{color:var(--orange);font-size:11px;font-weight:700;letter-spacing:.15em}
.hotel-info-grid h3{font-size:23px;margin:18px 0 10px}
.hotel-info-grid p{color:var(--muted);font-size:14px;margin:0}

/* Rodapé com contactos e redes sociais */
.footer-grid{grid-template-columns:1.6fr .7fr 1.2fr 1fr;gap:50px}
.footer-contact{display:flex;flex-direction:column;margin-bottom:8px}
.footer-contact strong{color:white;font-size:10px;text-transform:uppercase;letter-spacing:.12em}
.social-links{display:flex;flex-direction:column;gap:10px}
.social-links a{display:flex;align-items:center;gap:10px;transition:.2s}
.social-links a:hover{color:white;transform:translateX(3px)}
.social-links span{width:28px;height:28px;border:1px solid #ffffff35;border-radius:50%;display:grid;place-items:center;color:white}

@media(max-width:900px){
    .experience-venue{height:500px}
    .hotel-info-grid{grid-template-columns:1fr}
    .hotel-info-grid article{border-right:0;border-bottom:1px solid var(--line)}
    .hotel-info-grid article:last-child{border-bottom:0}
    .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
    .experience-venue{height:400px}
    .hotel-info-grid{margin-top:55px}
    .hotel-info-grid article{padding:30px 10px}
    .footer-grid{grid-template-columns:1fr}
}

/* Página de contactos */
.contact-page-hero{padding:175px 0 90px;background:linear-gradient(90deg,rgba(8,43,41,.94),rgba(8,43,41,.68)),url("../images/hotel-recepcao.jpeg") center/cover no-repeat;color:white}
.contact-page-hero h1{font-size:clamp(55px,8vw,96px);margin-bottom:20px}
.contact-page-hero>div>p:last-child{max-width:610px;color:#d1dfdc;font-size:18px}
.contact-page-section{padding:100px 0;background:var(--sand)}
.contact-page-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:80px;align-items:start}
.contact-sidebar{padding-top:20px}
.contact-sidebar h2{font-size:clamp(36px,4vw,54px);margin-bottom:45px}
.contact-list{border-top:1px solid var(--line)}
.contact-list>div{padding:22px 0;border-bottom:1px solid var(--line)}
.contact-list span{display:block;color:var(--orange);font-size:10px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;margin-bottom:5px}
.contact-list p{margin:0}.contact-list a{font-weight:600}
.contact-form-card{background:white;padding:55px;box-shadow:0 22px 65px rgba(15,53,50,.09)}
.form-heading h2{font-size:clamp(34px,4vw,48px);margin-bottom:38px}
.contact-form{display:flex;flex-direction:column;gap:22px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.form-field label{display:block;font-size:12px;font-weight:700;margin-bottom:8px}
.form-field label span{color:var(--orange)}
.form-field input,.form-field textarea{width:100%;border:1px solid #d8d8d2;background:#fdfcf9;color:var(--ink);border-radius:2px;padding:15px 16px;font:inherit;outline:none;transition:border-color .2s,box-shadow .2s}
.form-field textarea{resize:vertical;min-height:170px}
.form-field input:focus,.form-field textarea:focus{border-color:var(--orange);box-shadow:0 0 0 3px rgba(218,108,62,.1)}
.form-submit{border:0;cursor:pointer;align-self:flex-start;padding:16px 26px}
.form-submit span{margin-left:12px}
.form-note{font-size:11px;color:var(--muted);margin:0}
.form-honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form-errors{background:#fff0ec;border-left:4px solid #c55438;color:#713322;padding:16px 20px;margin-bottom:25px;font-size:13px}
.form-errors ul{margin:8px 0 0;padding-left:18px}
.contact-success{text-align:center;padding:45px 20px}
.contact-success>span{display:grid;place-items:center;width:68px;height:68px;margin:0 auto 25px;border-radius:50%;background:#e5f3ed;color:#28725a;font-size:30px}
.contact-success h2{font-size:clamp(36px,4vw,52px);margin-bottom:18px}
.contact-success p{max-width:500px;margin:0 auto 30px;color:var(--muted)}
@media(max-width:900px){
    .contact-page-grid{grid-template-columns:1fr;gap:50px}
}
@media(max-width:620px){
    .contact-page-hero{padding:145px 0 65px}
    .contact-page-section{padding:65px 0}
    .contact-form-card{padding:32px 22px}
    .form-row{grid-template-columns:1fr}
}

/* Páginas independentes */
.home-summary{padding:78px 0;background:var(--paper)}
.home-summary-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}
.home-summary h2{font-size:clamp(36px,4.5vw,58px);margin:0}
.home-summary-grid>div:last-child>p{font-size:17px;color:var(--muted);margin:0}
.home-summary-actions{display:flex;align-items:center;gap:28px;margin-top:28px}
.dark-link{color:var(--ink)}
.home-amenities{margin-top:85px;padding-top:70px;border-top:1px solid var(--line)}
.home-amenities-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:38px}
.home-amenities-heading h2{max-width:650px;font-size:clamp(34px,4vw,52px)}
.amenity-cards{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}
.amenity-cards article{min-height:210px;padding:28px 24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);background:#fff}
.amenity-cards article>span{font-size:10px;color:var(--orange);font-weight:700;letter-spacing:.15em}
.amenity-cards h3{font-size:21px;margin:22px 0 9px}
.amenity-cards p{font-size:13px;color:var(--muted);margin:0}
.inner-page-hero{min-height:580px;padding:170px 0 90px;display:flex;align-items:center;color:white;background-color:var(--ink);background-position:center;background-size:cover}
.inner-page-hero h1{font-size:clamp(56px,7vw,92px)}
.inner-page-hero>div>p:last-child{max-width:600px;color:#d8e4e1;font-size:18px}
.inner-about-hero{background-image:linear-gradient(90deg,rgba(7,35,33,.92),rgba(7,35,33,.3)),url("../images/hotel-fachada.jpeg")}
.inner-gallery-hero{background-image:linear-gradient(90deg,rgba(7,35,33,.9),rgba(7,35,33,.25)),url("../images/hotel-recepcao.jpeg")}
.gallery-page-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:26px}
.gallery-page-grid figure{margin:0;background:white;overflow:hidden}
.gallery-page-grid img{display:block;width:100%;height:480px;object-fit:cover;transition:transform .5s ease}
.gallery-page-grid figure:nth-child(2) img,.gallery-page-grid figure:nth-child(3) img{height:360px}
.gallery-page-grid figure:hover img{transform:scale(1.025)}
.gallery-page-grid figcaption{padding:18px 20px;font:600 19px var(--serif)}
@media(max-width:900px){
    .home-summary-grid{grid-template-columns:1fr;gap:30px}
    .home-amenities-heading{display:block}
    .amenity-cards{grid-template-columns:repeat(2,1fr)}
    .gallery-page-grid img,.gallery-page-grid figure:nth-child(2) img,.gallery-page-grid figure:nth-child(3) img{height:340px}
}
@media(max-width:620px){
    .home-summary{padding:55px 0}
    .home-summary-actions{align-items:flex-start;flex-direction:column;gap:18px}
    .home-amenities{margin-top:60px;padding-top:50px}
    .amenity-cards{grid-template-columns:1fr}
    .amenity-cards article{min-height:auto}
    .inner-page-hero{min-height:500px;padding:145px 0 70px}
    .gallery-page-grid{grid-template-columns:1fr}
    .gallery-page-grid img,.gallery-page-grid figure:nth-child(2) img,.gallery-page-grid figure:nth-child(3) img{height:300px}
}

/* Sobre nós em formato compacto */
.compact-about{padding:134px max(40px,calc((100vw - 1160px)/2)) 70px;display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center;min-height:calc(100vh - 180px);background:var(--paper)}
.compact-about-photo{height:520px;background:url("../images/hotel-fachada.jpeg") center/cover no-repeat;box-shadow:20px 20px 0 var(--gold)}
.compact-about-content h1{font-size:clamp(46px,5.5vw,72px);margin-bottom:28px}
.compact-about-lead{font-size:17px;color:var(--muted);max-width:620px}
.compact-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:35px 0;padding:25px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.compact-stats strong,.compact-stats span{display:block}
.compact-stats strong{font:700 27px var(--serif);color:var(--ink)}
.compact-stats span{font-size:10px;color:var(--muted)}
.compact-features{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}
.compact-features li{padding:8px 13px;background:#fff;border-left:3px solid var(--gold);font-size:12px;font-weight:600}
.compact-about-actions{display:flex;align-items:center;gap:28px;margin-top:35px}
.compact-location{padding:70px 0;background:var(--sand)}
.compact-location-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:55px;align-items:center}
.compact-location h2{font-size:clamp(34px,4vw,50px);margin-bottom:18px}
.compact-location p:not(.eyebrow){color:var(--muted);margin-bottom:28px}
.compact-location iframe{display:block;width:100%;height:380px;border:0;box-shadow:12px 12px 0 var(--gold)}
@media(max-width:900px){
    .compact-about{grid-template-columns:1fr;padding-top:120px}
    .compact-about-photo{height:440px}
    .compact-location-grid{grid-template-columns:1fr}
}
@media(max-width:620px){
    .compact-about{padding:110px 20px 55px;gap:45px}
    .compact-about-photo{height:390px;box-shadow:10px 10px 0 var(--gold)}
    .compact-stats{grid-template-columns:1fr}
    .compact-about-actions{align-items:flex-start;flex-direction:column;gap:18px}
    .compact-location{padding:55px 0}
    .compact-location iframe{height:320px;box-shadow:7px 7px 0 var(--gold)}
}

/* Identidade Blue Sky: azul profundo e dourado */
.site-header{background:rgba(252,250,245,.96);border-bottom-color:rgba(18,52,91,.14)}
.brand-mark{border-color:var(--gold);background:var(--deep);color:var(--gold)}
.brand small{color:#9a7b3f}
.main-nav>a:not(.button):hover{color:var(--gold)}
.language-switcher{display:flex;align-items:center;gap:6px;margin-left:-8px;font-size:10px;color:var(--muted)}
.language-switcher button{padding:3px;border:0;background:none;color:inherit;font:700 10px var(--sans);cursor:pointer}
.language-switcher button.active{color:var(--gold);text-decoration:underline;text-underline-offset:4px}
.hotel-news{padding:75px 0;background:var(--sand)}
.hotel-news-heading{margin-bottom:32px}.hotel-news-heading h2{font-size:clamp(34px,4vw,52px)}
.hotel-news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.hotel-news-grid article{background:#fff;padding:28px;border-top:3px solid var(--gold)}
.hotel-news-grid time{font-size:10px;color:var(--muted)}.hotel-news-grid h3{font-size:23px;margin:13px 0 9px}.hotel-news-grid p{color:var(--muted);margin:0}
@media(max-width:900px){.hotel-news-grid{grid-template-columns:1fr}}
.whatsapp-float{position:fixed;right:24px;bottom:24px;z-index:50;display:flex;align-items:center;gap:9px;padding:11px 16px 11px 12px;border:2px solid #fff;border-radius:999px;background:#25d366;color:#fff;font-size:12px;font-weight:700;box-shadow:0 8px 30px rgba(7,45,31,.28);transition:transform .2s,box-shadow .2s}
.whatsapp-float:hover{transform:translateY(-3px);box-shadow:0 12px 34px rgba(7,45,31,.36)}
.whatsapp-float svg{width:25px;height:25px;fill:currentColor}
@media(max-width:620px){
    .whatsapp-float{right:14px;bottom:14px;width:54px;height:54px;padding:0;justify-content:center}
    .whatsapp-float span{display:none}
    .whatsapp-float svg{width:28px;height:28px}
}
.button{background:linear-gradient(135deg,var(--gold),#b98529);color:var(--deep);box-shadow:0 7px 22px rgba(180,132,38,.2)}
.button:hover{background:linear-gradient(135deg,#e3bd69,#c28e2e)}
.slide-overlay{background:linear-gradient(90deg,rgba(4,29,54,.94) 0%,rgba(8,40,70,.66) 48%,rgba(8,40,70,.14) 100%)}
h1 em{color:#f0c96f}
.eyebrow{color:#f0c96f}
.eyebrow.dark{color:#b78328}
.experience,.site-footer{background:var(--deep)}
.contact-card{background:linear-gradient(135deg,#123f70,#0a2c50)}
.button-light{background:var(--gold);color:var(--deep)}
.button-light:hover{background:#e3bd69}
.reservation-hero{background:linear-gradient(135deg,#061f38,#123f70)}
.contact-page-hero,.inner-about-hero,.inner-gallery-hero{background-color:var(--deep)}
.contact-page-hero{background-image:linear-gradient(90deg,rgba(4,29,54,.95),rgba(9,48,84,.7)),url("../images/hotel-recepcao.jpeg")}
.inner-about-hero{background-image:linear-gradient(90deg,rgba(4,29,54,.94),rgba(9,48,84,.35)),url("../images/hotel-fachada.jpeg")}
.inner-gallery-hero{background-image:linear-gradient(90deg,rgba(4,29,54,.93),rgba(9,48,84,.3)),url("../images/hotel-recepcao.jpeg")}
.amenity-cards article,.contact-form-card{border-top:3px solid var(--gold)}
.social-links span{border-color:rgba(216,174,88,.55);color:var(--gold)}
.footer-contact strong,.footer-grid h3{color:var(--gold)}
.form-field input:focus,.form-field textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(216,174,88,.15)}

/* Sistema de reservas Channex em visualização completa */
.reservation-page{height:100vh;overflow:hidden}
.reservation-page main{height:100vh;overflow:hidden}
.booking-page{padding-top:84px;background:#fff;height:100vh;overflow:hidden}
.booking-bar{height:70px;padding:12px 24px;display:flex;align-items:center;justify-content:center;text-align:center;background:var(--deep);color:white;border-bottom:3px solid var(--gold)}
.booking-bar>div{display:flex;flex-direction:column;align-items:center}
.booking-bar strong{font:600 19px var(--serif)}
.booking-bar span{font-size:12px;color:#cbd7e3}
.booking-iframe{display:block;width:100%;height:calc(100vh - 154px);border:0;background:white}
@media(max-width:620px){
    .booking-bar{padding:12px 14px}
    .booking-iframe{height:calc(100vh - 154px)}
}
