@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Playfair+Display:ital,wght@0,500;0,600;0,700;1,500;1,600&display=swap');
:root{--navy:#153a5b;--teal:#247c78;--cream:#fff8ec;--ink:#243341;--coral:#d86b57;--sand:#f2be65}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font:400 17px/1.7 'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}p{margin:0 0 1.2em}h1,h2,h3{color:var(--navy);margin:0;font-weight:500}h1,h2{font-family:'Playfair Display',Georgia,serif;line-height:1.15;letter-spacing:-.035em}h1{font-size:clamp(2.8rem,5.3vw,5rem)}h2{font-size:clamp(2.2rem,3.6vw,3.4rem);margin-bottom:28px}h3{font-size:1.2rem;line-height:1.4;font-weight:700;margin-bottom:13px}em{font-weight:500;color:var(--teal)}img{display:block;max-width:100%;object-fit:cover}button{font:inherit}.wrap{width:min(1180px,calc(100% - 64px));margin-inline:auto}.eyebrow{font-size:.75rem;letter-spacing:.17em;font-weight:700;color:var(--teal);margin-bottom:24px}.lead{font-size:1.3rem;line-height:1.6}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:13px 25px;background:var(--teal);color:white;border:1px solid transparent;border-radius:5px;font-size:.95rem;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#195e5a;transform:translateY(-2px)}.button.small{min-height:44px;padding:10px 18px;font-size:.85rem}.button.light{background:var(--cream);color:var(--navy)}.button.outline{background:transparent;border-color:var(--teal);color:var(--teal)}.button.outline:hover{background:#eaf5f2}.text-link{color:var(--teal);font-size:.9rem;font-weight:700;text-decoration:underline;text-underline-offset:5px}.skip{position:absolute;left:12px;top:-80px;padding:12px;background:white;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid #d86b57;outline-offset:5px}header{background:#fff8ef;border-bottom:1px solid #eae6df}.nav{display:flex;justify-content:space-between;align-items:center;min-height:104px}.brand{width:165px;height:103px;object-fit:contain}nav{display:flex;align-items:center;gap:32px}nav>a:not(.button){font-size:.9rem;position:relative;padding:10px 0}nav [aria-current=page]{color:var(--teal);font-weight:700}nav [aria-current=page]:after{content:'';position:absolute;bottom:0;left:0;width:24px;height:2px;background:var(--coral)}.menu{display:none}.hero{position:relative;min-height:620px;background:var(--navy);isolation:isolate;color:white;overflow:hidden}.hero-photo{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,rgba(9,35,55,.97) 0%,rgba(9,35,55,.88) 34%,rgba(9,35,55,.36) 75%),url('/assets/amigos.webp') center 48%/cover}.hero-content{padding:86px 0 30px}.hero .eyebrow{color:#a3d7d0}.hero h1{color:white;max-width:870px}.hero h1 em{color:#f2be65}.hero p:not(.eyebrow){max-width:630px;margin:27px 0 30px;font-size:1.1rem}.hero .button{background:#fff8ec;color:var(--navy)}.hero-foot{display:flex;gap:32px;margin-top:60px;padding-top:22px;border-top:1px solid #ffffff35;font-size:.8rem;color:#e0e9ef}.ribbon{display:flex;justify-content:center;gap:80px;padding:23px 32px;color:var(--navy);background:var(--cream);font-size:.86rem}.ribbon span:before{content:'•';color:var(--coral);margin-right:14px}.intro{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-block:95px}.intro p{max-width:570px}.services{padding:80px 0;background:#f2f7f5}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:42px}.service{padding:35px;background:white;border-top:3px solid var(--teal);display:flex;flex-direction:column}.number{font-family:Georgia,serif;font-size:2rem;color:var(--teal);margin-bottom:30px}.service p{font-size:1rem}.service .text-link{margin-top:auto}.travelers{padding-block:90px}.travel-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}.travel-image{position:relative;min-height:390px;overflow:hidden;border-radius:4px;background:var(--navy)}.travel-image img{width:100%;height:100%;position:absolute;inset:0;transition:transform .5s}.travel-image:hover img{transform:scale(1.03)}.travel-image:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 20%,rgba(5,24,39,.91))}.travel-image>div{position:absolute;bottom:0;left:0;padding:32px;z-index:1;color:white}.travel-image h3{color:white;font-family:Georgia,serif;font-weight:400;font-size:1.9rem}.travel-image p{margin:0;font-size:1rem}.note{margin-top:35px;padding:25px 30px;border-left:3px solid var(--coral);background:#fff8ec}.note p{margin:0;font-size:1rem}.clarity{background:var(--navy);color:#e1e9ef;padding:65px 0}.clarity h2,.clarity h3{color:white}.three{display:grid;grid-template-columns:repeat(3,1fr);gap:48px}.three p{margin:0;font-size:1rem}.process{padding-block:90px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:28px;counter-reset:step;padding:20px 0 0;list-style:none}.steps li:before{counter-increment:step;content:'0' counter(step);display:block;color:var(--teal);font-family:Georgia,serif;font-size:2rem;border-bottom:1px solid #d4dfdf;padding-bottom:18px;margin-bottom:25px}.steps h3{font-size:1.1rem}.steps p{font-size:1rem}.story-band{background:#247c78;color:white;padding:75px 0}.story-inner{display:grid;grid-template-columns:1.4fr 1fr;gap:100px;align-items:center}.story-band h2{color:white}.story-band .eyebrow{color:#d2ece7}.quote{font-family:Georgia,serif;font-size:2rem;line-height:1.5;border-left:1px solid #ffffff60;padding-left:45px}.blog-teaser{padding-block:80px}.blog-teaser p{max-width:650px}.cta{margin-top:20px;margin-bottom:80px;padding:60px;text-align:center;background:var(--cream);border-radius:8px;border-top:4px solid var(--sand)}.cta p{font-size:1rem}.cta h2{font-size:3.2rem}footer{background:#173b5b;color:#dce6ed;padding:40px 0 0}footer h3{color:white;font-size:1rem}.footer-grid{display:grid;grid-template-columns:1fr .7fr 1.4fr;gap:55px;padding-bottom:40px}.footer-grid>div>a{display:block;font-size:.88rem;margin:9px 0;overflow-wrap:anywhere}.footer-grid p{font-size:.85rem;margin:12px 0}.footer-grid img{object-fit:contain}.legal{border-top:1px solid #ffffff30;padding-block:22px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem}.about-hero,.about-story{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-block:75px}.about-hero h1{font-size:3.5rem;margin-bottom:28px}.portrait{width:100%;height:560px;border-radius:4px;object-position:center}.about-story{grid-template-columns:1fr 1.1fr;padding-top:30px;padding-bottom:90px}.about-story .portrait{height:520px}.cream-section{background:var(--cream);padding:75px 0}.narrow{max-width:820px}.values{padding-bottom:80px}.values-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.values-grid article{border-top:1px solid #cbdcd7;padding-top:22px}.values-grid p{max-width:480px}.editorial-hero{padding:80px 0;background:var(--cream)}.editorial-hero h1{margin-bottom:28px}.editorial-hero p:not(.eyebrow){max-width:650px}.blog-intro{padding-block:60px}.blog-intro>p{max-width:750px}.blog-intro h2{margin-top:50px}.topics{display:grid;grid-template-columns:1fr 1fr;gap:30px 50px}.topics article{display:flex;gap:25px;padding:22px 0;border-top:1px solid #d4dfdf}.topics article>span{color:var(--teal);font-family:Georgia,serif;font-size:1.6rem}.topics p{font-size:1rem;margin:0}.blog-empty{margin-top:40px;background:#edf5f2;padding:30px}.contact-hero{padding-block:70px}.contact-hero h1{margin-bottom:26px}.contact-hero>.lead{max-width:760px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;margin-top:50px}.contact-main{border-top:3px solid var(--teal);padding-top:30px}.contact-main h2,.contact-guide h2{font-size:2rem}.phone{font-size:1.8rem;color:var(--navy)}.contact-detail{margin-top:34px}.contact-detail h3{margin-top:23px;margin-bottom:5px;font-size:1rem}.contact-detail a{color:var(--teal);overflow-wrap:anywhere}.contact-guide{background:var(--cream);padding:40px}.contact-guide li{margin-bottom:12px}.contact-guide ul{padding-left:20px}.company{padding-bottom:75px}.company h2{font-size:2rem}.company dl{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.company dt{font-size:.85rem;color:#526472}.company dd{margin:6px 0 20px}.company>p{font-size:.9rem;max-width:850px}.company a{text-decoration:underline}
@media(max-width:850px){.wrap{width:calc(100% - 40px)}nav{gap:18px}nav .button{display:none}.intro,.story-inner{gap:35px}.cards{gap:12px}.service{padding:24px}.three{gap:25px}.steps{grid-template-columns:1fr 1fr}.about-hero,.about-story{gap:30px}.about-hero h1{font-size:2.7rem}.portrait{height:440px}.footer-grid{gap:25px}.hero{min-height:590px}.hero-content{padding-top:75px}.ribbon{gap:25px}.contact-grid{gap:25px}}
@media(max-width:600px){body{font-size:16px}.nav{min-height:85px;position:relative}.brand{width:135px;height:85px}.menu{display:block;background:none;border:1px solid #a4b8bd;border-radius:4px;color:var(--navy);font-size:.9rem;padding:8px 12px}.menu span{margin-left:8px}nav{display:none;position:absolute;top:85px;left:-20px;right:-20px;background:#fff8ef;z-index:10;padding:20px;box-shadow:0 8px 18px #173b5b22;align-items:stretch}nav.open{display:flex;flex-direction:column;gap:6px}nav .button{display:inline-flex}nav>a:not(.button){padding:12px}.hero{min-height:590px}.hero-content{padding-top:60px}.hero h1{font-size:2.9rem}.hero-photo{background-position:60% center}.hero p:not(.eyebrow){font-size:1rem}.hero-foot{margin-top:45px;gap:16px;flex-wrap:wrap;font-size:.75rem}.ribbon{padding:20px;gap:12px;flex-wrap:wrap;font-size:.75rem}.ribbon span:before{margin-right:7px}.intro,.about-hero,.about-story,.story-inner,.contact-grid{grid-template-columns:1fr;gap:25px;padding-block:55px}.intro h2{margin-bottom:10px}.cards,.travel-grid,.three,.topics,.footer-grid,.values-grid,.company dl{grid-template-columns:1fr}.services,.travelers,.process,.blog-teaser{padding-block:55px}.service{padding:28px}.number{margin-bottom:18px}.travel-image{min-height:340px}.travel-image>div{padding:25px}.three{gap:30px}.clarity{padding:45px 0}.steps{gap:22px}.steps h3{font-size:1rem}.steps p{font-size:.95rem}.story-band{padding:15px 0}.quote{font-size:1.6rem;padding-left:25px}.cta{padding:38px 22px;margin-bottom:50px}.cta h2{font-size:2.6rem}.footer-grid{gap:28px}.legal{flex-direction:column;gap:8px}.about-hero h1{font-size:2.8rem}.portrait{height:auto;max-height:580px;object-fit:contain}.about-story .portrait{height:auto;order:2}.cream-section{padding:50px 0}.editorial-hero{padding:55px 0}.contact-grid{padding-block:0}.contact-guide{padding:27px}.company dl{gap:0}.lead{font-size:1.15rem}.company{padding-bottom:45px}.contact-hero h1{font-size:2.8rem}h2{font-size:2.25rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* White brand header with navy navigation and teal call to action. */
header{background:#ffffff;border-bottom:1px solid #e3e9ed;color:var(--navy)}
header .brand{background:#fff;width:165px;height:103px;object-fit:contain;padding:5px}
header nav>a:not(.button),header nav [aria-current=page]{color:var(--navy)}
header nav [aria-current=page]:after{background:var(--teal)}
header .menu{color:var(--navy);border-color:#a4b8bd}
header .button.small{background:var(--teal);color:#ffffff}
header .button.small:hover{background:#1d6663}
@media(max-width:600px){header nav{background:#ffffff}header .brand{width:135px;height:85px;padding:4px}}

/* Contact channel icons, with visible text labels. */
.contact-icon{display:inline-block;width:1.25em;height:1.25em;flex-shrink:0;vertical-align:middle;margin-right:.5em}
.contact-channel{display:inline-flex;align-items:center}
.contact-detail a{display:inline-flex;align-items:center;max-width:100%}
.contact-detail a span{min-width:0;overflow-wrap:anywhere}
.footer-grid>div>a:has(.contact-icon){display:flex;align-items:center}
.footer-grid>div>a span{min-width:0;overflow-wrap:anywhere}
