
    :root{--ink:#153f3d;--sand:#f7f3e9;--paper:#fffdf7;--muted:#536b64;--line:#d8dfd3;--gold:#b66c42;--serif:Georgia,'Times New Roman',serif}
    *{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.65 system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}a{color:inherit}a:focus-visible{outline:3px solid var(--gold);outline-offset:6px} .skip{position:absolute;top:-90px;background:var(--paper);padding:12px;z-index:20}.skip:focus{top:12px}.wrap{max-width:1280px;margin:auto;padding:0 5%}header{background:var(--sand);border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:100px}.brand{text-decoration:none;display:flex;align-items:center;gap:14px}.brand svg{width:45px;height:45px}.brand strong{display:block;font:25px/1.1 var(--serif);letter-spacing:.02em}.brand small{display:block;font-size:10px;text-transform:uppercase;letter-spacing:.24em;margin-top:7px}nav{display:flex;align-items:center;gap:30px}nav a{text-decoration:none;font-size:13px}nav a:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{padding:10px 19px;border:1px solid var(--ink);border-radius:30px}.hero{display:grid;grid-template-columns:1.03fr 1fr;align-items:center;min-height:690px;gap:5%;padding-top:54px;padding-bottom:60px}.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.23em;display:flex;align-items:center;gap:12px}.eyebrow:before{content:'';width:28px;height:1px;background:currentColor}h1{font:clamp(48px,5.8vw,82px)/1.04 var(--serif);letter-spacing:-.045em;margin:30px 0 26px;font-weight:400}h1 em{font-weight:400;color:var(--gold)}.intro{max-width:405px;color:var(--muted);font-size:16px;line-height:1.85}.actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:33px}.button{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:15px 24px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:40px;text-decoration:none;font-size:13px;transition:background .2s}.button:hover{background:#28605a}.text-link{font-size:13px;text-decoration:underline;text-underline-offset:6px}.hero-note{margin-top:48px;font-size:11px;letter-spacing:.08em;color:var(--muted)}.art{position:relative;min-width:0}.art svg{display:block;width:100%;height:auto;border-radius:48% 48% 3px 3px}.art-stamp{position:absolute;bottom:24px;left:-28px;background:var(--paper);border:1px solid var(--line);border-radius:50%;width:108px;height:108px;display:flex;align-items:center;justify-content:center;flex-direction:column;transform:rotate(-9deg);font:25px/1.2 var(--serif);box-shadow:0 4px 16px #153f3d09}.art-stamp small{font:9px/2 system-ui;text-transform:uppercase;letter-spacing:.15em}.ribbon{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:22px;padding-bottom:22px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.15em;text-transform:uppercase}.ribbon span:nth-child(2){font-size:20px;color:var(--gold)}.welcome{display:grid;grid-template-columns:1fr 1.3fr;gap:9%;padding-top:90px;padding-bottom:95px}.section-number{font:italic 24px var(--serif);color:var(--gold);margin-bottom:25px}h2{font:clamp(35px,4vw,51px)/1.15 var(--serif);font-weight:400;letter-spacing:-.025em;margin:0 0 24px}.body-copy{color:var(--muted);max-width:530px}.welcome .body-copy{margin-top:54px}.local{background:var(--ink);color:var(--paper);padding:75px 0}.local-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:center}.local .eyebrow{color:#bed4c8}.local h2{margin-top:25px}.local p{color:#c7d7cd;max-width:450px}.address{border:1px solid #ffffff35;border-radius:3px;padding:34px}.address-label{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:#b3cdbf}.address address{font:26px/1.6 var(--serif);font-style:normal;margin:17px 0 27px}.address a{font-size:13px;text-underline-offset:6px}.visit{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;padding-top:90px;padding-bottom:90px}.visit p{color:var(--muted)}.social{padding:35px 0 35px 38px;border-left:1px solid var(--line)}.social-handle{display:block;font:clamp(23px,2.7vw,35px) var(--serif);text-decoration:none;margin:16px 0 23px;overflow-wrap:anywhere}.social-handle:hover{text-decoration:underline}.social small{color:var(--muted);display:block;margin-bottom:20px;font-size:12px}.footer{border-top:1px solid var(--line);padding-top:28px;padding-bottom:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:11px;color:var(--muted)}.footer a{text-underline-offset:4px}.footer strong{font:20px var(--serif);color:var(--ink)}
    @media(max-width:760px){.wrap{padding-left:7%;padding-right:7%}.nav{min-height:88px}.brand strong{font-size:23px}.brand svg{width:35px}nav{gap:13px}nav a:not(.nav-contact){display:none}.nav-contact{font-size:11px;padding:9px 13px}.hero{grid-template-columns:1fr;gap:45px;padding-top:48px;padding-bottom:45px;min-height:0}h1{font-size:59px;max-width:440px}.intro{font-size:15px}.hero-note{margin-top:25px}.art{max-width:430px;width:100%;margin:0 auto}.art-stamp{left:-12px;width:90px;height:90px;font-size:22px}.ribbon{font-size:9px;letter-spacing:.1em}.welcome,.local-grid,.visit{grid-template-columns:1fr;gap:26px}.welcome{padding-top:55px;padding-bottom:55px}.welcome .body-copy{margin-top:0}.local{padding:55px 0}.address{padding:25px}.visit{padding-top:55px;padding-bottom:55px}.social{padding:25px 0 0;border-left:0;border-top:1px solid var(--line)}.footer{align-items:flex-start;flex-direction:column;gap:14px}}
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
  
/* Landing page completa. Componentes adicionais, sem dependências externas. */
header{position:relative;z-index:10}.nav{gap:20px}nav{gap:22px}nav a{font-size:12px}.menu-toggle{display:none}.large-copy{font:25px/1.55 var(--serif);color:var(--ink)}.experiences{background:#eeeee3;padding:75px 0 65px}.section-top{display:grid;grid-template-columns:1.2fr 1fr;gap:12%;align-items:end;margin-bottom:36px}.section-top .body-copy{font-size:14px;max-width:360px;margin-bottom:28px}.service-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.service-card{display:flex;flex-direction:column;padding:28px 23px;background:var(--paper);border:1px solid #dfe2d5;border-radius:5px;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px #153f3d0b}.service-icon{font:42px var(--serif);color:var(--gold);height:70px}.card-label{font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.service-card h3{font:25px/1.2 var(--serif);margin:14px 0 13px}.service-card p{font-size:13px;color:var(--muted);line-height:1.8;flex:1;margin-top:0}.card-tag{font-size:10px;text-transform:uppercase;letter-spacing:.05em;border-top:1px solid var(--line);padding-top:16px;margin-top:20px;display:block;text-decoration:none}.section-footnote{font-size:11px;color:var(--muted);margin:25px 0 0}.review-section{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;align-items:center;padding-top:90px;padding-bottom:90px}.review-intro p{font-size:14px;margin-bottom:28px}.review-card{margin:0;padding:30px 38px;background:#efe7d8;border-radius:5px}.quote-mark{font:90px/1 var(--serif);color:var(--gold);display:block;height:60px}.review-card blockquote{font:27px/1.5 var(--serif);margin:15px 0 30px}.review-card figcaption{display:flex;gap:13px;align-items:center}.review-card figcaption strong{font-size:12px;display:block}.review-card figcaption small{font-size:10px;display:block;color:var(--muted)}.review-avatar{border:1px solid #b5c4b6;border-radius:50%;display:grid;place-items:center;width:38px;height:38px;font:20px var(--serif)}.google-word{margin-left:auto;font-size:12px;color:var(--muted)}.review-source{display:inline-block;font-size:10px;text-underline-offset:4px;margin-top:25px;color:var(--muted)}.faq-section{border-top:1px solid var(--line);padding-top:65px;padding-bottom:75px;display:grid;grid-template-columns:1fr 1.2fr;gap:10%}.faq-list details{border-bottom:1px solid var(--line);padding:20px 0}.faq-list details:first-child{padding-top:0}.faq-list summary{font-size:14px;cursor:pointer;list-style:none;position:relative;padding-right:32px;font-weight:500}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:'+';position:absolute;right:0;font-size:21px;font-weight:300;top:-4px}.faq-list details[open] summary:after{content:'−'}.faq-list p{font-size:13px;color:var(--muted);line-height:1.9;padding-right:20px;margin-bottom:3px}.site-footer{background:#123632;color:#d7dfcf}.footer-main{padding-top:48px;padding-bottom:45px;display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:7%}.footer-brand{font:34px var(--serif);text-decoration:none;color:var(--paper)}.footer-brand span{color:#c49a64}.footer-main h3{font-size:10px;text-transform:uppercase;letter-spacing:.18em;margin-bottom:22px;font-weight:500;color:#c49a64}.footer-main p,.footer-main>div>a:not(.footer-brand){font-size:12px;line-height:1.9}.footer-main>div>a:not(.footer-brand){display:block;text-decoration:none;margin-bottom:8px}.footer-main a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #ffffff20;padding-top:22px;padding-bottom:22px;font-size:10px;color:#b4c6b7}
@media(max-width:1000px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}nav{gap:15px}.brand strong{font-size:23px}nav a{font-size:11px}.hero{min-height:620px}.review-section{gap:5%}}
@media(max-width:760px){.menu-toggle{display:flex;align-items:center;gap:12px;border:1px solid #153f3d55;border-radius:30px;padding:9px 15px;color:var(--ink);font:12px system-ui;background:none;cursor:pointer}nav{position:absolute;left:0;right:0;top:87px;background:var(--sand);border-bottom:1px solid var(--line);padding:12px 7% 22px;flex-direction:column;align-items:stretch;gap:0;display:none}nav.open{display:flex}nav a,nav a:not(.nav-contact){display:block;padding:12px 0;font-size:14px}nav .nav-contact{text-align:center;padding:10px;margin-top:12px}.hero{min-height:0}.large-copy{font-size:23px}.experiences{padding:50px 0}.section-top,.review-section,.faq-section{grid-template-columns:1fr;gap:22px}.section-top{margin-bottom:22px}.section-top .body-copy{margin:0;max-width:none}.service-grid{gap:12px}.service-card{padding:22px 18px}.service-card h3{font-size:23px}.service-card p{font-size:12px}.card-tag{font-size:9px}.review-section{padding-top:55px;padding-bottom:55px}.review-card{padding:28px}.review-card blockquote{font-size:25px}.faq-section{padding-top:50px;padding-bottom:50px}.footer-main{grid-template-columns:1fr 1fr;gap:25px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:7px}}
@media(max-width:390px){.service-grid{grid-template-columns:1fr}.hero h1{font-size:51px}.service-card{padding:25px}.review-card{padding:22px}.google-word{display:none}}

@media(max-width:390px){.brand{gap:9px}.brand strong{white-space:nowrap;font-size:21px}.brand small{font-size:8px;letter-spacing:.17em}.brand svg{width:30px;flex-shrink:0}.menu-toggle{padding:8px 12px}}

/* Fotografias e identidade oficial da Costa Bela. */
.brand-logo{width:64px;height:64px;object-fit:contain;border-radius:50%;flex-shrink:0}.nav{min-height:106px}.brand{gap:12px}.photo-art{isolation:isolate}.hero-photo{display:block;width:100%;height:590px;object-fit:cover;border-radius:48% 48% 8px 8px}.photo-art:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,#071f2cd9);border-radius:0 0 8px 8px;z-index:0;pointer-events:none}.photo-caption{position:absolute;bottom:30px;left:48px;color:white;z-index:1}.photo-caption span{font-size:9px;letter-spacing:.2em}.photo-caption strong{display:block;font:29px/1.25 var(--serif);margin-top:12px;font-weight:400}.photo-art .art-stamp{bottom:140px;z-index:2;background:#fff7d9}.gallery-section{padding-top:15px;padding-bottom:90px}.gallery-heading{display:flex;justify-content:space-between;gap:35px;align-items:end;margin-bottom:32px}.gallery-heading p{color:var(--muted);font-size:14px;line-height:1.9;margin-bottom:30px}.photo-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;grid-template-rows:260px 210px;gap:16px;margin-bottom:30px}.photo-grid figure{position:relative;margin:0;overflow:hidden;border-radius:6px;background:#dce3d6}.photo-grid img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .6s}.photo-grid figure:hover img{transform:scale(1.025)}.gallery-large{grid-row:1/3}.gallery-wide{grid-column:2/4}.gallery-wide img{object-position:50% 45%}.photo-grid figcaption{position:absolute;bottom:0;left:0;right:0;padding:40px 20px 18px;background:linear-gradient(transparent,#102f2cc9);color:white;font:18px/1.4 var(--serif)}.footer-brand{display:flex;align-items:center;gap:14px}.footer-logo{border-radius:50%;object-fit:contain}.hero{gap:7%}nav{gap:16px}.hero-note{letter-spacing:.12em}.gallery-heading h2{margin-bottom:0}
@media(max-width:1000px){nav{gap:11px}.nav-contact{padding:9px 12px}.hero-photo{height:540px}.brand-logo{width:54px;height:54px}.brand strong{font-size:21px}.brand small{font-size:9px}.photo-grid{grid-template-rows:220px 190px}}
@media(max-width:760px){.nav{min-height:88px}.brand-logo{width:54px;height:54px}.hero-photo{height:510px}.photo-caption{left:30px}.photo-art .art-stamp{left:-14px;bottom:140px}.gallery-section{padding-top:0;padding-bottom:55px}.gallery-heading{display:block}.gallery-heading p{margin-top:20px;margin-bottom:0}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:360px 250px 230px;gap:12px}.gallery-large{grid-column:1/3;grid-row:auto}.gallery-wide{grid-column:1/3}.gallery-large img{object-position:50% 65%}.photo-grid figcaption{font-size:16px;padding:32px 14px 14px}.hero{gap:35px}.hero-note{margin-bottom:0}}
@media(max-width:390px){.brand-logo{width:46px;height:46px}.brand strong{font-size:20px}.brand small{font-size:8px}.hero-photo{height:440px}.photo-grid{grid-template-rows:320px 225px 210px}.photo-caption strong{font-size:26px}.photo-grid figcaption{font-size:14px}}

.social-icon{display:inline-block;width:21px;height:21px;vertical-align:middle;flex-shrink:0;margin-right:5px}.network-link{display:inline-flex;gap:7px;align-items:center}.button .social-icon{margin-right:0}.social-handle .social-icon{width:27px;height:27px}.contact-whatsapp{margin-bottom:30px;padding-bottom:28px;border-bottom:1px solid var(--line)}.whatsapp-button{background:#146b4c;border-color:#146b4c;margin-top:18px}.whatsapp-button:hover{background:#10573e}.contact-phone{display:block;margin-top:12px;font-size:14px;text-underline-offset:4px}.floating-whatsapp{position:fixed;bottom:22px;right:22px;z-index:30;display:flex;align-items:center;gap:9px;background:#126c4a;color:white;border-radius:40px;text-decoration:none;padding:14px 19px;box-shadow:0 5px 22px #0003;font-size:12px}.floating-whatsapp .social-icon{width:24px;height:24px;margin:0}.gallery-tip{font-size:12px;color:var(--muted);margin:-10px 0 22px}.expanded-gallery{grid-template-columns:repeat(4,minmax(0,1fr));grid-template-rows:auto;gap:18px}.expanded-gallery figure{overflow:visible;background:none}.expanded-gallery .photo-open{display:block;position:relative;width:100%;height:310px;padding:0;border:0;background:#dce3d6;border-radius:7px;overflow:hidden;cursor:zoom-in;color:white}.expanded-gallery img{object-fit:cover}.expanded-gallery figcaption{position:static;background:none;color:var(--ink);font:17px/1.4 var(--serif);padding:13px 0 10px}.zoom-hint{position:absolute;bottom:12px;right:12px;background:#103530c9;padding:5px 10px;border:1px solid #ffffff40;border-radius:22px;font:10px system-ui}.photo-open:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.video-section{background:#ebe8d9;padding:70px 0}.video-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.video-layout p{color:var(--muted);max-width:370px}.video-note{font-size:12px}.video-shell{max-width:360px;width:100%;margin:auto;border-radius:9px;overflow:hidden;background:#143d38;box-shadow:0 15px 35px #153f3d18}.video-load{position:relative;width:100%;height:500px;display:block;border:0;padding:0;background:none;cursor:pointer;color:white}.video-load img{width:100%;height:100%;object-fit:cover;filter:brightness(.7)}.video-play{position:absolute;left:50%;top:45%;transform:translate(-50%,-50%);width:76px;height:76px;border:1px solid white;border-radius:50%;display:grid;place-items:center;background:#ffffff25;font-size:25px;padding-left:5px}.video-label{position:absolute;bottom:35px;left:15px;right:15px;font:24px/1.4 var(--serif)}.video-label small{font:11px system-ui;letter-spacing:.05em}.video-frame iframe{width:100%;height:600px;border:0;display:block}.video-load[hidden],.video-frame[hidden]{display:none}.viewing-photo{overflow:hidden}.lightbox{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:20px 4%;border:0;background:#0b211ff5;color:#fff;z-index:100}.lightbox::backdrop{background:#0b211f}.lightbox-bar{height:45px;display:flex;align-items:center;justify-content:space-between;font-size:13px}.lightbox button{font:inherit;color:white;background:#ffffff15;border:1px solid #ffffff60;border-radius:24px;cursor:pointer}.lightbox-close{padding:8px 18px}.lightbox-stage{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;align-items:center;gap:20px;height:calc(100% - 100px)}.lightbox-stage figure{margin:0;min-width:0;text-align:center}.lightbox-image{display:block;max-width:100%;max-height:calc(100dvh - 190px);width:auto;height:auto;object-fit:contain;margin:auto;border-radius:3px;touch-action:pan-y}.lightbox-caption{margin-top:16px;font:20px/1.4 var(--serif)}.lightbox-prev,.lightbox-next{width:48px;height:48px;font-size:32px!important}.lightbox-help{text-align:center;font-size:11px;color:#b8cec5;margin:15px 0}.lightbox button:focus-visible{outline:3px solid #eccb87;outline-offset:4px}
@media(max-width:1000px){.expanded-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.expanded-gallery .photo-open{height:290px}}
@media(max-width:760px){.expanded-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.expanded-gallery .photo-open{height:245px}.expanded-gallery figcaption{font-size:16px;padding-top:10px}.video-section{padding:50px 0}.video-layout{grid-template-columns:1fr;gap:25px}.video-load{height:470px}.floating-whatsapp{bottom:16px;right:16px;padding:14px}.floating-whatsapp span{display:none}.lightbox{padding:14px}.lightbox-stage{grid-template-columns:32px minmax(0,1fr) 32px;gap:6px}.lightbox-prev,.lightbox-next{width:32px;height:44px}.lightbox-caption{font-size:17px}.lightbox-help{font-size:10px}.footer-bottom{padding-bottom:85px}}
@media(max-width:390px){.expanded-gallery .photo-open{height:210px}.expanded-gallery figcaption{font-size:15px}.social-handle{font-size:22px}.social-handle .social-icon{width:22px;height:22px}.video-frame iframe{height:560px}}

.hero-open{display:block;width:100%;padding:0;border:0;border-radius:48% 48% 8px 8px;overflow:hidden;background:none;cursor:zoom-in}.photo-caption,.art-stamp{pointer-events:none}.hero-open:focus-visible{outline:3px solid var(--gold);outline-offset:6px}

.accommodation-section{padding-top:85px;padding-bottom:85px}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.stay-card{background:var(--paper);padding:32px;border:1px solid var(--line);border-top:3px solid #c79867;border-radius:5px;display:flex;flex-direction:column}.stay-card h3{font:30px/1.2 var(--serif);margin:17px 0}.stay-card p{font-size:14px;color:var(--muted);line-height:1.9;flex:1}.stay-card a{margin-top:18px;display:inline-flex;align-items:center;gap:6px}.stay-card .social-icon{width:18px;height:18px}.hero h1{font-size:clamp(46px,5.2vw,72px);max-width:580px}.map-area{margin-top:35px}.map-load{width:100%;min-height:105px;border:1px solid #ffffff50;background:#ffffff09;color:var(--paper);font:22px var(--serif);border-radius:5px;cursor:pointer}.map-load span{margin-left:18px}.map-area p{font-size:12px;max-width:none}.map-frame iframe{border:0;width:100%;height:350px;display:block;border-radius:5px}.map-load[hidden],.map-frame[hidden]{display:none}.map-load:focus-visible{outline:3px solid #e5bf86;outline-offset:5px}
@media(max-width:1000px){.stay-card{padding:25px}.stay-card h3{font-size:27px}}
@media(max-width:760px){.accommodation-section{padding-top:55px;padding-bottom:55px}.stay-grid{grid-template-columns:1fr;gap:15px}.stay-card{padding:28px}.hero h1{font-size:54px}.map-frame iframe{height:300px}.map-load{font-size:20px}}
@media(max-width:390px){.hero h1{font-size:46px}}

.review-section{display:block}.review-intro{max-width:620px;margin-bottom:35px}.verified-reviews{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.verified-reviews .review-card{display:flex;flex-direction:column;padding:27px}.verified-reviews blockquote{font-size:23px;flex:1}.verified-reviews .google-word{display:none}.verified-reviews .review-card figcaption{margin-top:10px}.verified-reviews .review-source{align-self:start}@media(max-width:760px){.verified-reviews{grid-template-columns:1fr;gap:16px}.verified-reviews .review-card{padding:28px}}

.room-card{padding:30px;min-width:0}.room-card h3{font-size:32px;min-height:77px}.room-card .room-intro{flex:0;margin-top:0;min-height:105px}.room-beds{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:18px 0;min-height:117px}.room-beds span{display:block;text-transform:uppercase;font-size:9px;letter-spacing:.1em;color:var(--muted);margin-bottom:9px}.room-beds strong{font-size:14px;line-height:1.7;font-weight:500;display:block}.room-features{list-style:none;margin:23px 0 28px;padding:0;flex:1;color:var(--muted);font-size:13px;line-height:1.7}.room-features li{padding-left:18px;position:relative;margin:9px 0}.room-features li:before{content:'✓';position:absolute;left:0;color:var(--gold);font-size:12px}.room-card .room-cta{align-self:stretch;margin-top:auto;gap:8px;padding:13px 12px;font-size:12px;text-decoration:none;text-align:center}.room-cta .social-icon{margin:0}
@media(max-width:1000px){.room-card{padding:23px}.room-card h3{font-size:29px}.room-card .room-intro{min-height:132px}.room-beds{min-height:140px}.room-card .room-cta{font-size:11px;padding:12px 7px}}
@media(max-width:760px){.room-card{padding:28px}.room-card h3{min-height:0;font-size:31px}.room-card .room-intro{min-height:0}.room-beds{min-height:0}.room-card .room-cta{font-size:13px;padding:14px}.room-features{margin-top:18px}}

.room-photo{margin:0 0 20px}.room-photo-open{display:block;width:100%;height:220px;padding:0;border:0;border-radius:5px;position:relative;overflow:hidden;cursor:zoom-in;background:var(--line);color:white}.room-photo img{display:block;width:100%;height:100%;object-fit:cover}.room-photo figcaption{font-size:11px;color:var(--muted);margin-top:8px}.room-photo-open:focus-visible{outline:3px solid var(--gold);outline-offset:4px}

.room-photo{flex:none}.room-card .room-photo-open{height:250px}.room-card .room-photo figcaption{font:11px system-ui}.room-card h3{min-height:0}.room-photo-open img{object-fit:contain;background:#e9e5d9}@media(max-width:760px){.room-card .room-photo-open{height:260px}}

.hero-photo{object-position:50% 50%}

/* Acomodações próximas da abertura; ajustes de leitura para celular. */
.hero-mobile-title{display:none}.welcome{padding-top:65px;padding-bottom:55px}.welcome .body-copy{margin-top:35px}.accommodation-section{padding-top:30px}.accommodation-section+.gallery-section{padding-top:45px;border-top:1px solid var(--line)}
@media(max-width:760px){
 .hero{padding-top:26px;padding-bottom:32px;gap:18px;grid-template-areas:"eyebrow" "title" "actions" "photo" "intro"}
 .hero-copy{display:contents}.hero-copy>.eyebrow{grid-area:eyebrow;font-size:10px;letter-spacing:.14em;line-height:1.5}
 .hero h1{grid-area:title;font-size:clamp(37px,10vw,46px);line-height:1.06;letter-spacing:-.035em;margin:0;max-width:430px}
 .hero-desktop-title{display:none}.hero-mobile-title{display:inline}
 .hero .actions{grid-area:actions;margin:0;display:flex;gap:12px 17px;align-items:center}
 .hero .actions .button{font-size:12px;padding:12px 17px;gap:10px;min-height:46px}
 .hero .actions .text-link{font-size:12px;line-height:1.5}
 .hero .art{grid-area:photo;max-width:430px;margin:4px auto 0}
 .hero-photo{height:clamp(280px,85vw,360px)}
 .hero .intro{grid-area:intro;font-size:14px;line-height:1.65;margin:0;max-width:430px}
 .hero-note{display:none}.hero .photo-caption{bottom:20px;left:22px;right:18px}
 .hero .photo-caption>span{font-size:8px;letter-spacing:.14em}.hero .photo-caption strong{font-size:23px;line-height:1.2;margin-top:7px}
 .hero .art-stamp{width:77px;height:77px;font-size:19px;left:-9px;bottom:108px}.hero .art-stamp small{font-size:7px}
 .welcome{padding-top:40px;padding-bottom:32px;gap:16px}.welcome .section-number{font-size:21px;margin-bottom:16px}.welcome h2{font-size:34px;margin-bottom:0}
 .welcome .body-copy{margin-top:0}.welcome .large-copy{font-size:21px;line-height:1.5;margin:0 0 14px}.welcome .body-copy>p:not(.large-copy){font-size:14px;margin-top:0}
 .accommodation-section{padding-top:20px;padding-bottom:50px}.accommodation-section .section-number{margin-bottom:16px}
 .accommodation-section+.gallery-section{padding-top:40px}
}
@media(max-width:360px){.hero{gap:15px}.hero .actions{gap:10px 14px}.hero .actions .button{font-size:11px;padding:12px 13px;gap:7px}.hero .actions .text-link{font-size:11px}.hero-photo{height:280px}.hero .photo-caption strong{font-size:21px}}

.photo-credit{display:block;font:10px/1.5 system-ui;margin-top:5px;color:var(--muted);overflow-wrap:anywhere}

.guest-video-section{padding:70px 0;background:var(--cream,#f8f5eb)}
.guest-video{margin:0 auto;width:100%;max-width:360px;min-width:0}
.guest-video video{display:block;width:100%;height:auto;aspect-ratio:9/16;border-radius:9px;background:#143d38;box-shadow:0 15px 35px #153f3d18}
.guest-video figcaption{padding:14px 0;font-size:13px;color:var(--muted)}
.guest-video figcaption a{color:var(--ink);text-underline-offset:4px}
@media(max-width:760px){.guest-video-section{padding:50px 0}.guest-video{max-width:320px}}
