:root{--paper:#f6f3ec;--ink:#293b35;--muted:#697169;--line:#d9d5c9;--green:#263f36;--sand:#eae5d9;--gold:#92764e}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-underline-offset:6px}a:hover{color:var(--gold)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--gold);outline-offset:5px}img{display:block;width:100%;height:auto}figure{margin:0;min-width:0}figcaption{font-size:11px;line-height:1.5;color:var(--muted);margin-top:12px}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400}h2{font-size:clamp(2.6rem,4.8vw,4.8rem);line-height:1.09;letter-spacing:-.045em;margin-bottom:28px}h3{font-size:27px;line-height:1.25;letter-spacing:-.025em;margin-bottom:16px}p{margin-bottom:22px}.wrap{width:min(1180px,calc(100% - 112px));margin-inline:auto}.eyebrow{font:10px/1.5 Arial,sans-serif;letter-spacing:.22em;text-transform:uppercase;margin-bottom:22px;color:var(--gold)}.skip{position:absolute;left:20px;top:-100px;padding:15px;background:white;z-index:30}.skip:focus{top:10px}.header{position:sticky;top:0;z-index:10;background:#f6f3ecf5;border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}.navigation{max-width:1440px;margin:auto;min-height:94px;padding:18px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{text-decoration:none;flex-shrink:0}.brand:hover{color:var(--ink)}.brand-place{display:block;font:28px/1.2 Georgia,serif;letter-spacing:-.04em}.brand-subtitle{display:block;font-size:8px;letter-spacing:.23em;margin-top:7px;color:var(--muted)}.brand-subtitle span{padding-inline:5px}.navlinks{display:flex;align-items:center;gap:32px}.navlinks a{font-size:11px;letter-spacing:.06em;text-decoration:none;white-space:nowrap}.nav-visit{padding:11px 20px;border:1px solid var(--line)}
.hero{position:relative;margin:18px 24px 0;height:clamp(440px,43vw,640px);background:var(--green);color:white;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 66%}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#102a2bb5,#102a2b33 65%,#102a2b25)}.hero-copy{position:relative;z-index:1;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:45px 25px}.hero .eyebrow{color:#fff;margin-bottom:26px;font-size:10px;letter-spacing:.3em}.hero h1{font-size:clamp(4rem,9vw,8.6rem);line-height:1;letter-spacing:-.055em;margin:0}.hero h1 span{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:.4em;text-transform:uppercase;margin-top:23px}.hero-copy>p:not(.eyebrow){font:italic 23px/1.5 Georgia,serif;margin:26px 0}.hero-copy br{display:none}.hero-caption{position:absolute;bottom:20px;right:28px;z-index:2;font-size:9px;letter-spacing:.08em;color:#fff}.button{display:inline-block;border:1px solid currentColor;padding:13px 23px;font-size:11px;letter-spacing:.07em;text-decoration:none;line-height:1.7;transition:background .2s,color .2s}.button:hover{background:var(--ink);color:white;text-decoration:none}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.hero .button.light{background:transparent;color:white;border-color:#ffffff80}.hero .button.light:hover{background:var(--paper);color:var(--ink)}.tourism-note{padding-block:22px;display:grid;grid-template-columns:150px 1fr;gap:30px;border-bottom:1px solid var(--line)}.tourism-note>span{font-size:9px;letter-spacing:.12em}.tourism-note p{font-size:11px;color:var(--muted);margin:0;max-width:840px}
.terrace-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:clamp(55px,8vw,120px);align-items:center;padding-block:100px}.terrace-feature-photo img{aspect-ratio:4/5;object-fit:cover;object-position:50% 62%}.terrace-feature-photo{position:relative}.terrace-feature-copy{padding-block:30px}.terrace-feature-copy:before{content:"01";display:block;font:italic 24px Georgia,serif;color:var(--gold);border-bottom:1px solid var(--line);padding-bottom:22px;margin-bottom:35px;width:65px}.terrace-feature-copy h2{font-size:clamp(2.8rem,4.3vw,4.4rem)}.terrace-feature-copy p:not(.eyebrow){color:var(--muted);max-width:330px;font-size:15px}.text-link,.section-next{font-size:12px;text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:6px;display:inline-block}.section,.events{padding-block:85px}.home #praia{border-top:1px solid var(--line)}.section-heading{display:grid;grid-template-columns:1.25fr 1fr;gap:90px;align-items:end;margin-bottom:40px}.section-heading h2{margin:0}.section-heading>p{max-width:360px;margin:0;color:var(--muted);font-size:15px}.beach img{aspect-ratio:2.2;object-fit:cover}.beach-activities{padding-block:85px;background:var(--sand)}.activity-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.activity-grid img{aspect-ratio:4/5;object-fit:cover}.activity-grid article:nth-child(2){padding-top:45px}.activity-copy{padding-top:25px}.activity-copy h3{font-size:27px}.activity-copy .eyebrow{margin-bottom:14px}.activity-copy p:not(.eyebrow){font-size:14px;color:var(--muted)}.activity-note,.menu-note,.resort-note{font-size:11px;line-height:1.7;color:var(--muted);margin:26px 0 0;max-width:850px}.section-next{margin-top:30px}.surf-photo-story{display:grid;grid-template-columns:1.75fr 1fr;gap:28px;margin-bottom:35px}.surf-photo-main img{aspect-ratio:4/5;object-fit:cover;object-position:35% 50%}.surf-photo-grid{display:grid;grid-template-columns:1fr;gap:20px}.surf-photo-grid img{aspect-ratio:2.5;object-fit:cover}.surf-photo-grid figure:last-child img{object-position:50% 75%}.link-divider{margin:0 18px;color:var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;border-top:1px solid var(--line)}.interior img{aspect-ratio:1;object-fit:cover}.section-copy{max-width:380px}.section-copy p:not(.eyebrow){color:var(--muted);font-size:15px}.food{padding-bottom:85px}.food-grid{display:grid;grid-template-columns:1.15fr 1fr 1fr;gap:28px}.food-grid img{aspect-ratio:4/5;object-fit:cover}.food-grid figure:nth-child(2){padding-top:45px}.food-grid figure:nth-child(3){padding-top:90px}.resort-section{background:var(--green);color:var(--paper);display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:90px;padding:65px;margin-bottom:90px}.resort-section .eyebrow{color:#d5c29f}.resort-intro h2{font-size:clamp(2.3rem,3.7vw,3.7rem)}.resort-intro>p:not(.eyebrow){color:#d5ddd6;font-size:15px}.resort-subtitle{font:italic 23px Georgia,serif}.resort-button{margin-top:10px}.resort-side{border-left:1px solid #ffffff35;padding-left:45px}.resort-side>p:not(.eyebrow){font:29px/1.45 Georgia,serif}.resort-side a:hover{color:#e5d1ac}.gallery-section{padding-bottom:80px}.gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px 24px}.gallery img{aspect-ratio:3/4;object-fit:cover}.gallery figure:nth-child(even){padding-top:40px}.guide-related{padding-block:55px;border-top:1px solid var(--line)}.guide-related>p:not(.eyebrow){color:var(--muted);font-size:15px}.guide-related nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;counter-reset:guide}.guide-related nav a{display:block;padding:25px 0;border-top:1px solid var(--line);font:24px/1.3 Georgia,serif;text-decoration:none}.guide-related nav a:before{counter-increment:guide;content:"0" counter(guide);display:block;font:10px Arial,sans-serif;color:var(--gold);margin-bottom:22px}.beach-guide{display:grid;grid-template-columns:1fr 1.2fr;gap:90px;padding-block:50px 75px;border-top:1px solid var(--line)}.beach-guide h2{font-size:3rem}.guide-items article{border-bottom:1px solid var(--line);padding:22px 0}.guide-items article:first-child{padding-top:0}.guide-items h3{font-size:24px}.guide-items p{color:var(--muted);font-size:14px}.guide-items a{font-size:12px}.visit{background:var(--sand);padding-block:65px}.visit-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:100px}.visit h2{font-size:3.2rem}.visit p{color:var(--muted);font-size:14px}.contact-list>div{padding:22px 0;border-top:1px solid var(--line)}.contact-list h3{font:11px/1.6 Arial,sans-serif;letter-spacing:.04em}.large-link{font:30px Georgia,serif;text-decoration:none}.contact-list p{font-size:12px;margin-top:18px;max-width:380px}.contact-list a:not(.large-link){font-size:13px}.share-guide{padding-block:40px;border-top:1px solid var(--line)}.share-guide h2{font-size:30px;margin-bottom:12px}.share-guide>p{font-size:13px;color:var(--muted)}.share-actions{display:flex;flex-wrap:wrap;align-items:center;gap:15px}.share-actions button{cursor:pointer;background:transparent;color:var(--ink)}.share-actions button:hover{background:var(--ink);color:white}.share-actions>a{font-size:12px}[data-share-status]{margin-top:15px;font-size:12px;overflow-wrap:anywhere}.footer{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-block:28px;font-size:10px;color:var(--muted)}
.reading-guide{max-width:940px;padding-block:55px 70px}.reading-guide>nav{font-size:11px;margin-bottom:45px}.reading-guide h1{font-size:clamp(2.8rem,5.8vw,5rem);line-height:1.1;letter-spacing:-.045em}.guide-lead{font:22px/1.6 Georgia,serif;color:var(--muted);max-width:750px}.reading-body{max-width:730px;margin-top:50px}.reading-body h2{font-size:2.4rem;margin-top:45px}.reading-body li{margin-bottom:10px}.reading-body details{padding:20px 0;border-bottom:1px solid var(--line)}.reading-body summary{cursor:pointer}.reading-body details p{margin-top:15px}.reading-guide a{overflow-wrap:anywhere}.reading-guide .guide-related{margin-top:55px}.reading-guide .guide-related h2{font-size:2.5rem}.reading-guide .guide-related nav{grid-template-columns:1fr 1fr}
@media(max-width:950px){.wrap{width:calc(100% - 64px)}.navigation{padding-inline:30px}.terrace-feature,.split,.visit-grid{gap:45px}.section-heading{gap:40px}.resort-section{padding:40px;gap:35px}.resort-side{padding-left:25px}.gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{height:500px}.navlinks{gap:20px}}
@media(max-width:600px){html{scroll-padding-top:140px}.wrap{width:calc(100% - 40px)}.navigation{display:block;text-align:center;padding:14px 20px 12px;min-height:0}.brand-place{font-size:25px}.brand-subtitle{font-size:8px}.navlinks{justify-content:center;gap:24px;margin-top:14px}.navlinks a{font-size:10px}.nav-visit{border:0;padding:0}.hero{margin:10px 10px 0;height:410px}.hero-copy{padding:25px 18px 40px}.hero h1{font-size:clamp(2.8rem,11vw,4rem)}.hero h1 span{font-size:9px;margin-top:20px;letter-spacing:.28em}.hero .eyebrow{font-size:9px;margin-bottom:22px}.hero-copy>p:not(.eyebrow){font-size:21px;margin:23px 0}.hero-caption{font-size:8px;right:14px;bottom:14px}.hero-image{object-position:55% 65%}.tourism-note{grid-template-columns:1fr;gap:6px;padding-block:20px}.tourism-note p{font-size:10px}.terrace-feature{grid-template-columns:1fr;gap:26px;padding-block:45px 50px}.terrace-feature-copy{padding:0}.terrace-feature-copy:before{font-size:20px;margin-bottom:22px;padding-bottom:14px}.terrace-feature-copy h2{font-size:2.8rem}.terrace-feature-copy p:not(.eyebrow){max-width:none}.section,.events{padding-block:50px}h2{font-size:2.7rem}.section-heading{grid-template-columns:1fr;gap:20px;margin-bottom:28px}.section-heading>p{font-size:14px}.beach img{aspect-ratio:1.4}.beach-activities{padding-block:50px}.activity-grid{grid-template-columns:1fr;gap:35px}.activity-grid article:nth-child(n){padding:0}.activity-grid img{aspect-ratio:1.3}.activity-copy{padding-top:20px}.surf-photo-story{grid-template-columns:1fr;gap:25px}.surf-photo-main img{aspect-ratio:auto;object-fit:contain}.surf-photo-grid{grid-template-columns:1fr 1fr;gap:20px 15px}.surf-photo-grid img{aspect-ratio:1.15}.surf-photo-grid figure:last-child{grid-column:1/-1}.surf-photo-grid figure:last-child img{aspect-ratio:2}.split{grid-template-columns:1fr;gap:30px}.section-copy{max-width:none}.food{padding-bottom:50px}.food-grid{grid-template-columns:1fr 1fr;gap:20px 15px}.food-grid figure:nth-child(n){padding:0}.food-grid figure:first-child{grid-column:1/-1}.food-grid figure:first-child img{aspect-ratio:1.3}.resort-section{padding:32px 25px;grid-template-columns:1fr;gap:28px;margin-bottom:50px}.resort-intro h2{font-size:2.4rem}.resort-side{padding:25px 0 0;border-left:0;border-top:1px solid #ffffff35}.resort-side>p:not(.eyebrow){font-size:25px}.gallery{grid-template-columns:1fr 1fr;gap:25px 15px}.gallery figure:nth-child(even){padding-top:25px}.gallery-section{padding-bottom:50px}.guide-related{padding-block:40px}.guide-related nav{grid-template-columns:1fr 1fr;gap:15px 20px}.guide-related nav a{font-size:21px;padding:20px 0}.beach-guide{grid-template-columns:1fr;gap:25px;padding-block:40px 50px}.beach-guide h2{font-size:2.6rem}.visit{padding-block:45px}.visit-grid{grid-template-columns:1fr;gap:35px}.visit h2{font-size:2.7rem}.share-guide{padding-block:30px}.share-actions{gap:12px}.share-actions .button{padding:12px 17px;font-size:10px}.footer{display:block}.footer>*{display:block;margin-bottom:10px}.reading-guide{padding-block:35px 50px}.reading-guide h1{font-size:2.75rem}.guide-lead{font-size:20px}.reading-body h2{font-size:2rem}.reading-guide .guide-related nav{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.tourism-note{display:block}

.terrace-detail-photo{max-width:620px;margin:40px auto}.terrace-detail-photo img{height:auto}.terrace-detail-photo figcaption{max-width:540px}
