{"id":778726,"date":"2026-05-22T12:45:24","date_gmt":"2026-05-22T04:45:24","guid":{"rendered":"https:\/\/www.tallship.com.sg\/?page_id=778726"},"modified":"2026-06-25T11:32:39","modified_gmt":"2026-06-25T03:32:39","slug":"albatross-island-restaurant","status":"publish","type":"page","link":"https:\/\/www.tallship.com.sg\/zh\/albatross-island-restaurant\/","title":{"rendered":"Albatross Island Restaurant"},"content":{"rendered":"\r\n<link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"><link rel=\"preconnect\" href=\"https:\/\/fonts.gstatic.com\" crossorigin><link rel=\"preconnect\" href=\"https:\/\/fonts.googleapis.com\"><style>\r\n\/* ----------------------------------------------------------------------------\r\n   STOCK PHOTO PLACEHOLDERS live inside this <style> block as background images.\r\n   To replace one, find its rule below and change the URL in url('...').\r\n     .hero-poster      -> hero still (shown before video loads)\r\n     .intro-visual     -> intro section photo\r\n     .menu-hero \/ .menu-> dining banner\r\n     .route-photo      -> chart background photo\r\n     .cta-poster       -> reserve-section still\r\n   The 4 photo journey cards are further down in the HTML (search \"background-image\").\r\n---------------------------------------------------------------------------- *\/\r\n:root{\r\n  --ink:#071621;\r\n  --ink-soft:#0a2632;\r\n  --navy:#112832;\r\n  --navy-mid:#143a5c;\r\n  --teal:#3b7c84;\r\n  --seafoam:#9ec5c8;\r\n  --sea:#0b525b;\r\n  --sea-light:#76a8a0;\r\n  --gold:#d2aa67;\r\n  --gold-bright:#f1d69f;\r\n  --gold-deep:#806234;\r\n  --cream:#fcf9f1;\r\n  --ivory:#ffffff;\r\n  --coral:#e8945a;\r\n  --paper:#f3ecde;\r\n  --paper-mid:#e8dfca;\r\n  --paper-deep:#dccfb4;\r\n  --ink-text:#112832;\r\n  --ink-soft-text:#3a4b66;\r\n  --ink-faint:#5d6c84;\r\n  --line:rgba(225,205,166,.24);\r\n  --ease-out:cubic-bezier(.18,.8,.24,1);\r\n  --ease-in-out:cubic-bezier(.6,.05,.2,.95);\r\n  --shadow-premium:0 40px 80px -20px rgba(0,0,0,.8);\r\n  --shadow-glow:0 0 30px rgba(210,170,103,.18);\r\n  --serif:'Cormorant Garamond', Georgia, serif;\r\n  --sans:'Inter', system-ui, sans-serif;\r\n  --mono:'DM Mono', ui-monospace, 'Courier New', monospace;\r\n}\r\n*{box-sizing:border-box;margin:0;padding:0}\r\nhtml{scroll-behavior:smooth;scroll-padding-top:90px;background:var(--ink)}\r\nbody{font-family:var(--sans);background:var(--ink);color:var(--cream);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased}\r\nimg, svg, canvas, video{display:block;max-width:100%}\r\na{color:inherit;text-decoration:none}\r\nbutton{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}\r\n::selection{background:var(--gold);color:var(--ink)}\r\n::-webkit-scrollbar{width:10px}\r\n::-webkit-scrollbar-track{background:var(--ink)}\r\n::-webkit-scrollbar-thumb{background:var(--gold-deep)}\r\n::-webkit-scrollbar-thumb:hover{background:var(--gold)}\r\nbody::after{content:\"\";position:fixed;inset:0;pointer-events:none;z-index:200;background-image:url(\"data:image\/svg+xml;utf8,<svg xmlns='http:\/\/www.w3.org\/2000\/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'\/><feColorMatrix values='0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 .04 0'\/><\/filter><rect width='100%' height='100%' filter='url(%23n)'\/><\/svg>\");mix-blend-mode:overlay;opacity:.35}\r\n\r\n\/* ============ SPLASH ============ *\/\r\n.splash{position:fixed;inset:0;background:var(--ink);z-index:999;display:flex;align-items:center;justify-content:center;transition:opacity .8s ease, visibility .8s ease}\r\n.splash.gone{opacity:0;visibility:hidden;pointer-events:none}\r\n.splash svg{width:64px;height:64px;color:var(--gold-bright);animation:spin 4s linear infinite}\r\n@keyframes spin{to{transform:rotate(360deg)}}\r\n.splash .label{position:absolute;bottom:28%;left:50%;transform:translateX(-50%);font-family:var(--serif);font-style:italic;color:var(--gold-bright);letter-spacing:.4em;font-size:.78rem;text-transform:uppercase;opacity:.65}\r\n\r\n\/* ============ REUSABLE ============ *\/\r\n.eyebrow{font-family:var(--sans);font-size:.75rem;font-weight:500;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-bright);display:inline-flex;align-items:center;gap:1rem;opacity:.92}\r\n.eyebrow::before,.eyebrow::after{content:\"\";width:40px;height:1px;background:linear-gradient(90deg, transparent, var(--gold-bright))}\r\n.eyebrow::after{background:linear-gradient(90deg, var(--gold-bright),transparent)}\r\n.eyebrow.left::before{display:none}\r\n.h-display{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem, 6vw, 5rem);line-height:1.05;letter-spacing:-.02em;text-shadow:0 4px 30px rgba(0,0,0,.6)}\r\n.h-display em{font-style:italic;color:var(--gold-bright)}\r\n.h-section{font-family:var(--serif);font-weight:300;font-size:clamp(2.5rem, 4vw, 3.8rem);line-height:1.1;letter-spacing:-.02em;text-shadow:0 4px 20px rgba(0,0,0,.4)}\r\n.h-section em{font-style:italic;color:var(--gold-bright);font-weight:400}\r\n.lede{font-family:var(--serif);font-weight:300;font-size:clamp(1.2rem, 1.8vw, 1.5rem);color:rgba(251,247,238,.78);line-height:1.6;max-width:65ch}\r\n.btn{display:inline-flex;align-items:center;justify-content:center;gap:.8rem;padding:1.1rem 2rem;font-family:var(--sans);font-weight:600;font-size:.72rem;letter-spacing:.18em;text-transform:uppercase;border:1px solid rgba(243,236,222,.45);color:var(--cream);background:transparent;border-radius:999px;transition:all .35s var(--ease-out);cursor:pointer;position:relative;overflow:hidden;white-space:nowrap}\r\n.btn::before{content:\"\";position:absolute;inset:0;background:var(--gold-bright);transform:scaleY(0);transform-origin:bottom;transition:transform .4s var(--ease-out);z-index:-1}\r\n.btn:hover{transform:translateY(-2px);color:var(--gold-bright);border-color:var(--gold-bright)}\r\n.btn:hover::before{transform:scaleY(1)}\r\n.btn.solid{background:var(--cream);color:var(--ink);border-color:var(--cream)}\r\n.btn.solid::before{background:var(--ivory)}\r\n.btn .arrow{display:inline-block;transition:transform .3s;font-family:var(--mono);font-weight:500}\r\n.btn:hover .arrow{transform:translateX(5px)}\r\n.container{max-width:1320px;margin:0 auto;padding:0 2rem}\r\n\/* ============ KICKER (mono micro-eyebrow) ============ *\/\r\n.kicker{font-family:var(--mono);font-weight:500;font-size:.65rem;letter-spacing:.24em;text-transform:uppercase;color:var(--gold-bright);display:inline-block}\r\n.kicker.dark{color:var(--gold-deep)}\r\n\r\n\r\n\/* ============ TICKETS \/ CHOOSE YOUR EXPERIENCE ============ *\/\r\n.tickets{padding:8rem 0;background:linear-gradient(180deg,var(--paper) 0%,var(--paper-mid) 100%);color:var(--ink-text);position:relative;z-index:2}\r\n.tickets-head{text-align:center;max-width:680px;margin:0 auto 4rem}\r\n.tickets-head .kicker{margin-bottom:1rem}\r\n.tickets-head h2{margin-top:.5rem;font-family:var(--serif);font-weight:300;font-size:clamp(2rem,3.2vw,3.4rem);line-height:1.08;color:var(--ink-text);letter-spacing:-.015em}\r\n.tickets-head h2 em{font-style:italic;color:var(--gold-deep)}\r\n.tickets-head p{margin-top:1.2rem;color:var(--ink-soft-text);font-size:clamp(1rem,1.15vw,1.15rem);line-height:1.65;font-family:var(--serif);font-weight:300}\r\n.ticket-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem;max-width:880px;margin:0 auto}\r\n.ticket{position:relative;min-height:380px;padding:2.2rem 2rem 5.5rem;border:1px solid rgba(17,40,50,.16);border-radius:20px;background:#fffdf8;overflow:hidden;transition:.4s var(--ease-out);display:flex;flex-direction:column}\r\n.ticket:hover{transform:translateY(-6px);box-shadow:0 28px 60px rgba(17,40,50,.13);border-color:rgba(210,170,103,.5)}\r\n.ticket.featured{background:var(--ink);color:var(--cream);border-color:var(--ink)}\r\n.ticket::before{content:\"\";position:absolute;right:-58px;bottom:-58px;width:180px;height:180px;border:1px solid rgba(210,170,103,.4);border-radius:50%;box-shadow:0 0 0 20px rgba(210,170,103,.06),0 0 0 40px rgba(210,170,103,.04);pointer-events:none}\r\n.ticket .top{position:relative;z-index:1;display:flex;justify-content:space-between;gap:.7rem;align-items:start;margin-bottom:1.1rem}\r\n.ticket .type{font-family:var(--mono);font-weight:500;font-size:.62rem;letter-spacing:.18em;text-transform:uppercase;color:var(--gold-deep)}\r\n.ticket.featured .type{color:var(--gold-bright)}\r\n.ticket h3{font-family:var(--serif);font-weight:400;font-size:2rem;line-height:1.05;color:var(--ink-text);margin:0 0 .3rem}\r\n.ticket.featured h3{color:var(--cream)}\r\n.ticket h3 small{font-family:var(--sans);font-weight:600;font-size:.68rem;color:#748287;letter-spacing:.04em;display:block;margin-top:.5rem;text-transform:none}\r\n.ticket.featured h3 small{color:rgba(255,255,255,.6)}\r\n.ticket ul{list-style:none;padding:0;margin:1.6rem 0 0;display:grid;gap:.7rem;position:relative;z-index:1}\r\n.ticket li{font-size:.92rem;line-height:1.5;color:#56676e;display:flex;align-items:start;gap:.6rem}\r\n.ticket.featured li{color:rgba(252,249,241,.78)}\r\n.ticket li::before{content:\"\u2713\";color:var(--gold-deep);font-weight:700;flex-shrink:0}\r\n.ticket.featured li::before{color:var(--gold-bright)}\r\n.ticket .btn{position:absolute;left:1.8rem;right:1.8rem;bottom:1.8rem;z-index:2}\r\n.ticket:not(.featured) .btn{border-color:rgba(17,40,50,.32);color:var(--ink-text)}\r\n.ticket:not(.featured) .btn:hover{background:var(--ink);color:var(--cream);border-color:var(--ink)}\r\n@media(max-width:780px){\r\n  .tickets{padding:5rem 0}\r\n  .ticket-grid{grid-template-columns:1fr}\r\n}\r\n\r\n\/* ============ PROOF \/ PULL QUOTE ============ *\/\r\n.proof{padding:8rem 0;background:#dde8e2;color:var(--ink-text);position:relative;z-index:2}\r\n.proof-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:6vw;align-items:center;max-width:1180px;margin:0 auto}\r\n.proof-quote .kicker{color:var(--gold-deep);margin-bottom:1.5rem}\r\n.proof-quote .q{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.8rem,3.4vw,3.4rem);line-height:1.1;letter-spacing:-.015em;color:var(--ink-text);margin:.5rem 0 1.5rem}\r\n.proof-quote .q em{font-style:italic;color:#226570;font-weight:400}\r\n.proof-quote .meta{font-family:var(--mono);font-weight:500;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:#6b7776}\r\n.proof-list{display:grid;border-top:1px solid rgba(17,40,50,.14)}\r\n.proof-row{padding:1.2rem 0;border-bottom:1px solid rgba(17,40,50,.14);display:flex;align-items:center;justify-content:space-between;gap:1rem}\r\n.proof-row strong{font-family:var(--serif);font-weight:400;font-size:1.1rem;color:var(--ink-text)}\r\n.proof-row span{font-family:var(--mono);font-weight:500;font-size:.65rem;letter-spacing:.18em;text-transform:uppercase;color:#758482;text-align:right}\r\n@media(max-width:900px){.proof{padding:5rem 0}.proof-grid{grid-template-columns:1fr;gap:3rem}}\r\n\r\n\/* ============ STICKY BOOK BAR ============ *\/\r\n.sticky-book{position:fixed;left:50%;bottom:18px;z-index:90;transform:translateX(-50%) translateY(160px);width:min(640px,calc(100% - 2rem));display:grid;grid-template-columns:1fr auto;align-items:center;gap:1rem;padding:.55rem .55rem .55rem 1.2rem;border:1px solid rgba(241,214,159,.32);border-radius:999px;background:rgba(7,22,33,.92);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);box-shadow:0 22px 60px rgba(0,0,0,.32);transition:transform .5s var(--ease-out)}\r\n.sticky-book.show{transform:translateX(-50%) translateY(0)}\r\n.sticky-book .label{display:flex;flex-direction:column;gap:.18rem;min-width:0}\r\n.sticky-book small{font-family:var(--mono);font-weight:500;font-size:.55rem;letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,.5)}\r\n.sticky-book strong{font-family:var(--serif);font-weight:400;font-style:italic;font-size:.95rem;color:var(--cream);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}\r\n.sticky-book .btn{padding:.7rem 1.2rem;font-size:.65rem;background:var(--cream);color:var(--ink);border-color:var(--cream);min-height:0}\r\n.sticky-book .btn:hover{background:var(--gold-bright);border-color:var(--gold-bright);color:var(--ink)}\r\n@media(max-width:560px){.sticky-book strong{font-size:.85rem}.sticky-book .btn{padding:.6rem 1rem}}\r\n\r\n\r\n\/* ============ VIDEO LIGHTBOX ============ *\/\r\n.vid-lightbox{position:fixed;inset:0;z-index:99999;display:none;align-items:center;justify-content:center;padding:2rem;\r\n  background:rgba(4,10,18,.94);-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);\r\n  opacity:0;transition:opacity .35s var(--ease-out)}\r\n.vid-lightbox.open{display:flex;opacity:1}\r\n.vid-lightbox-video{max-width:min(1400px, 94vw);max-height:88vh;width:auto;height:auto;background:#000;\r\n  border-radius:4px;box-shadow:0 40px 100px rgba(0,0,0,.6),0 0 0 1px rgba(230,195,137,.25)}\r\n.vid-lightbox-close{position:absolute;top:1.6rem;right:1.6rem;width:44px;height:44px;border-radius:50%;\r\n  background:rgba(4,10,18,.7);border:1px solid rgba(230,195,137,.4);color:var(--cream);\r\n  font-size:1.5rem;line-height:1;cursor:pointer;display:grid;place-items:center;\r\n  transition:background .25s ease, border-color .25s ease, transform .25s ease;z-index:2}\r\n.vid-lightbox-close:hover{background:rgba(230,195,137,.2);border-color:var(--gold-bright);transform:scale(1.05)}\r\n.vid-lightbox-caption{position:absolute;left:50%;bottom:1.4rem;transform:translateX(-50%);z-index:2;\r\n  font-family:var(--serif);font-style:italic;font-size:1rem;color:rgba(251,247,238,.7);letter-spacing:.02em;\r\n  text-shadow:0 2px 12px rgba(0,0,0,.6)}\r\n\r\n\/* ============ NAV ============ *\/\r\n.nav{position:fixed;top:0;left:0;right:0;z-index:100;padding:1.4rem 0;transition:background .35s ease, padding .35s ease}\r\n.nav.scrolled{background:rgba(4,10,18,.85);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);padding:1rem 0;border-bottom:1px solid rgba(201,168,117,.15)}\r\n.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:1.5rem;flex-wrap:nowrap}\r\n.brand{display:flex;align-items:center;gap:.85rem;font-family:var(--serif);font-size:1.05rem;letter-spacing:.06em;text-transform:uppercase}\r\n.brand-mark{width:38px;height:38px;display:grid;place-items:center;color:var(--gold-bright)}\r\n.brand-text strong{font-weight:500;color:var(--cream)}\r\n.brand-text span{color:rgba(251,247,238,.55);font-size:.65rem;letter-spacing:.28em;display:block;margin-top:1px}\r\n.nav-links{display:flex;flex-wrap:nowrap;gap:clamp(1.4rem, 2vw, 2.6rem);font-size:.72rem;letter-spacing:.17em;text-transform:uppercase;white-space:nowrap}\r\n.nav-links a{white-space:nowrap}\r\n.nav-links a{opacity:.75;transition:opacity .2s, color .2s;position:relative}\r\n.nav-links a:hover{opacity:1;color:var(--gold-bright)}\r\n.nav-links a::after{content:\"\";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--gold-bright);transition:width .3s ease}\r\n.nav-links a:hover::after{width:100%}\r\n.nav-cta{display:flex;align-items:center;gap:1rem}\r\n.audio-toggle{width:38px;height:38px;border:1px solid rgba(201,168,117,.4);border-radius:50%;display:grid;place-items:center;color:var(--gold-bright);transition:all .25s;position:relative}\r\n.audio-toggle:hover{border-color:var(--gold);background:rgba(201,168,117,.1)}\r\n.audio-toggle svg{width:14px;height:14px}\r\n.audio-toggle.on::after{content:\"\";position:absolute;inset:-1px;border-radius:50%;border:1px solid var(--gold-bright);animation:audioPulse 2s ease-out infinite}\r\n@keyframes audioPulse{0%{transform:scale(1);opacity:.8}100%{transform:scale(1.6);opacity:0}}\r\n\/* Mobile hamburger menu *\/\r\n.nav-burger{display:none;flex-direction:column;justify-content:center;gap:5px;align-items:center;width:42px;height:42px;background:none;border:0;cursor:pointer;padding:0;z-index:130}\r\n.nav-burger span{display:block;width:24px;height:1.5px;background:var(--cream);transition:transform .3s ease, opacity .3s ease}\r\n.nav.nav-open .nav-burger span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}\r\n.nav.nav-open .nav-burger span:nth-child(2){opacity:0}\r\n.nav.nav-open .nav-burger span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}\r\n.nav-overlay{display:none}\r\n@media(max-width:920px){\r\n  .nav-burger{display:flex}\r\n  .nav-links{\r\n    position:fixed;top:0;right:0;flex-direction:column;align-items:flex-start;gap:1.7rem;\r\n    width:min(82vw, 340px);height:100vh;height:100dvh;\r\n    padding:6rem 2.2rem 2rem;\r\n    background:rgba(4,10,18,.97);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);\r\n    border-left:1px solid rgba(201,168,117,.2);box-shadow:-20px 0 60px rgba(0,0,0,.5);\r\n    transform:translateX(105%);transition:transform .45s var(--ease-out);\r\n    z-index:120;font-size:1.05rem;\r\n  }\r\n  .nav.nav-open .nav-links{transform:translateX(0)}\r\n  .nav-links a{opacity:.92}\r\n  .nav-links a::after{display:none}\r\n  .audio-toggle{display:none}\r\n  .nav.nav-open .nav-overlay{display:block;position:fixed;inset:0;background:rgba(4,10,18,.5);z-index:110}\r\n}\r\n\r\n\/* ============ HERO ============ *\/\r\n.hero{position:relative;min-height:100vh;min-height:100dvh;display:flex;align-items:center;overflow:hidden;isolation:isolate;background:var(--ink)}\r\n.hero-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}\r\n.hero-poster{position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1774031826492-3d859b950574?w=2400&q=85&auto=format&fit=crop') center\/cover no-repeat}\r\n.hero-overlay{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(95deg, rgba(4,10,18,.62) 0%, rgba(4,10,18,.42) 28%, rgba(4,10,18,.12) 52%, transparent 68%),linear-gradient(180deg, transparent 0%, transparent 75%, rgba(4,10,18,.35) 100%)}\r\n.hero-vignette{position:absolute;inset:0;z-index:2;pointer-events:none;box-shadow:inset 0 0 120px 10px rgba(4,10,18,.25)}\r\n.hero-ship{position:absolute;right:-4%;bottom:14%;width:60%;max-width:880px;z-index:3;pointer-events:none;animation:heroBob 7s ease-in-out infinite;filter:drop-shadow(0 28px 50px rgba(0,0,0,.55))}\r\n.hero-ship img{width:100%;height:auto;display:block}\r\n@keyframes heroBob{0%,100%{transform:translateY(0) rotate(-.8deg)}50%{transform:translateY(-10px) rotate(.8deg)}}\r\n@media(max-width:880px){.hero-ship{width:95%;bottom:11%;right:-12%;opacity:.65}}\r\n.hero-content{position:relative;z-index:5;max-width:680px;margin:0;padding:7rem 2rem 9rem 5vw;width:100%}\r\n.hero-eyebrow-row{display:flex;align-items:center;gap:1.2rem;margin-bottom:2.2rem;flex-wrap:wrap}\r\n.hero-brand{display:inline-flex;align-items:center;gap:.7rem;padding:.6rem 1.35rem;background:rgba(4,10,18,.5);border:1px solid rgba(201,168,117,.55);border-radius:100px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 34px rgba(0,0,0,.45)}\r\n.hero-brand .dot{width:6px;height:6px;border-radius:50%;background:var(--gold-bright);box-shadow:0 0 12px rgba(230,195,137,.95);flex:none}\r\n.hero-brand .txt{font-family:var(--sans);font-size:1rem;font-weight:600;letter-spacing:.24em;text-transform:uppercase;color:var(--ivory);white-space:nowrap}\r\n.hero-brand .txt em{font-style:normal;color:var(--gold-bright)}\r\n@media(max-width:560px){.hero-brand .txt{font-size:.78rem;letter-spacing:.18em;white-space:normal}}\r\n.hero-title{font-family:var(--serif);font-weight:300;font-size:clamp(2.8rem, 7.5vw, 6.5rem);line-height:.98;letter-spacing:-.025em;margin-bottom:1.8rem;max-width:16ch;text-shadow:0 2px 40px rgba(0,0,0,.55)}\r\n.hero-title em{font-style:italic;color:var(--gold-bright);font-weight:400}\r\n.hero-title .line{display:block;overflow:hidden;padding-bottom:.3em;margin-bottom:-.22em}\r\n.hero-title .line span{display:inline-block;transform:translateY(110%);opacity:0;animation:rise 1.1s cubic-bezier(.2,.7,.2,1) forwards}\r\n.hero-title .line:nth-child(2) span{animation-delay:.15s}\r\n.hero-title .line:nth-child(3) span{animation-delay:.3s}\r\n.hero-title .line:nth-child(4) span{animation-delay:.45s}\r\n@keyframes rise{to{transform:translateY(0);opacity:1}}\r\n.hero-sub{font-family:var(--serif);font-weight:300;font-size:clamp(1.1rem, 1.55vw, 1.45rem);color:rgba(251,247,238,.92);max-width:54ch;line-height:1.55;margin-bottom:2.6rem;text-shadow:0 2px 20px rgba(0,0,0,.5);opacity:0;animation:rise 1.1s cubic-bezier(.2,.7,.2,1) .7s forwards}\r\n.hero-actions{display:flex;gap:1rem;flex-wrap:wrap;align-items:center;opacity:0;animation:rise 1.1s cubic-bezier(.2,.7,.2,1) .9s forwards}\r\n.hero-coord{display:none}\r\n.hero-coord strong{color:var(--gold-bright);font-weight:500;margin-right:.5rem}\r\n.hero-scroll{display:none}\r\n.hero-scroll .line{display:block;width:1px;height:48px;background:linear-gradient(180deg, var(--gold-bright),transparent);position:relative;overflow:hidden}\r\n.hero-scroll .line::after{content:\"\";position:absolute;left:0;top:-40%;width:100%;height:40%;background:var(--ivory);animation:scrollLine 2.4s ease-in-out infinite}\r\n@keyframes scrollLine{0%{top:-40%}100%{top:120%}}\r\n\r\nsection{position:relative}\r\n.section-pad{padding:8rem 0}\r\n.section-pad-lg{padding:10rem 0}\r\n\r\n\/* ============ WAVE DIVIDERS ============ *\/\r\n.wave-sep{position:relative;display:block;width:100%;height:140px;overflow:hidden;margin:0;padding:0;line-height:0;pointer-events:none}\r\n.wave-sep svg{position:absolute;left:0;width:100%;height:100%;display:block}\r\n.wave-sep .w-back{opacity:.4}\r\n.wave-sep .w-mid{opacity:.7}\r\n.wave-sep .w-front{opacity:1}\r\n.wave-sep .gold-line{stroke:var(--gold-bright);stroke-width:1;fill:none;opacity:.45}\r\n\r\n\/* ============ INTRO ============ *\/\r\n.intro{position:relative;overflow:hidden;background:var(--paper)}\r\n.intro::before{content:\"\";position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1437385545573-fcf5b4b7fb57?w=2400&q=80&auto=format&fit=crop') center\/cover no-repeat;filter:blur(3px) brightness(.9) saturate(1.1);transform:scale(1.05);opacity:.15}\r\n.intro::after{content:\"\";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(247,240,221,.55) 0%,rgba(247,240,221,.9) 100%)}\r\n.intro .container{position:relative;z-index:2}\r\n.intro-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:5rem;align-items:center}\r\n@media(max-width:960px){.intro-grid{grid-template-columns:1fr;gap:3rem}}\r\n.intro .eyebrow{color:var(--gold-deep)}\r\n.intro .eyebrow::before,.intro .eyebrow::after{background:linear-gradient(90deg, transparent, var(--gold-deep))}\r\n.intro .h-section{color:var(--ink-text)}\r\n.intro .h-section em{color:var(--gold-deep)}\r\n.intro-text p{font-family:var(--serif);font-size:clamp(1.15rem, 1.4vw, 1.35rem);font-weight:300;color:var(--ink-soft-text);line-height:1.6;margin-top:1.4rem}\r\n.intro-text p strong{color:var(--ink-text)!important}\r\n.intro-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid rgba(12,35,62,.18);margin-top:3rem}\r\n.stat{padding:1.6rem 1.5rem 1.6rem 0;border-right:1px solid rgba(12,35,62,.18);border-bottom:1px solid rgba(12,35,62,.18)}\r\n.stat:nth-child(2n){border-right:none;padding-right:0;padding-left:1.5rem}\r\n.stat:nth-last-child(-n+2){border-bottom:none}\r\n.stat .n{font-family:var(--serif);font-weight:400;font-size:clamp(2.2rem, 3.8vw, 3rem);color:var(--gold-deep);line-height:1}\r\n.stat .l{font-size:.7rem;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin-top:.6rem}\r\n.intro-visual{position:relative;aspect-ratio:1\/1.15;overflow:hidden;border:1px solid rgba(12,35,62,.2);box-shadow:var(--shadow-premium);border-radius:4px}\r\n.intro-visual .photo{position:absolute;inset:0;background:url('https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/ANewCatergeryInPremiumTourism.jpg.jpeg') center\/cover no-repeat;animation:kenburns 24s ease-in-out infinite alternate}\r\n@keyframes kenburns{0%{transform:scale(1) translate(0,0)}100%{transform:scale(1.08) translate(-1.5%,-1%)}}\r\n.intro-visual::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,10,18,.05) 30%,rgba(4,10,18,.65) 100%)}\r\n.intro-visual .caption{position:absolute;left:1.6rem;bottom:1.6rem;z-index:2;font-family:var(--serif);font-style:italic;font-size:1rem;color:rgba(251,247,238,.95);letter-spacing:.04em}\r\n.intro-visual .caption .dot{color:var(--gold-bright);margin:0 .5rem}\r\n\r\n\/* ====================================================================\r\n   JOURNEY, Premium horizontal scrollytelling\r\n   Pin parent (tall) + sticky child + horizontal-translate track\r\n   Lerp-eased JS for that \"expensive\" momentum feel.\r\n   ==================================================================== *\/\r\n.journey-pin{position:relative;height:400vh;background:var(--ink)}\r\n.journey-sticky{\r\n  position:sticky;top:0;height:100vh;overflow:hidden;\r\n  display:grid;grid-template-rows:auto 1fr auto;\r\n}\r\n.journey-sticky::before{\r\n  content:\"\";position:absolute;inset:0;z-index:0;\r\n  background:url('https:\/\/images.unsplash.com\/photo-1758135005218-f18e2a3c3ce8?w=2400&q=80') center\/cover no-repeat;\r\n  filter:blur(8px) brightness(.18);transform:scale(1.06);opacity:.38;\r\n}\r\n.journey-sticky::after{\r\n  content:\"\";position:absolute;inset:0;z-index:1;\r\n  background:\r\n    radial-gradient(ellipse 80% 60% at 50% 50%, rgba(10,37,64,.55), transparent 70%),\r\n    linear-gradient(135deg, rgba(8,24,42,.92) 0%,rgba(12,40,66,.96) 50%,rgba(10,32,48,.94) 100%);\r\n}\r\n.journey-content{position:relative;z-index:2;width:100%;display:flex;flex-direction:column;justify-content:center;min-height:0;overflow:hidden}\r\n\r\n\/* Header strip at the top of pinned area, minimal, just chapter context.\r\n   Top padding clears the fixed nav (~80px) plus breathing room. *\/\r\n.journey-header-strip{\r\n  position:relative;z-index:6;\r\n  display:flex;align-items:flex-start;justify-content:center;\r\n  padding:4.75rem 3rem .5rem;text-align:center;\r\n}\r\n.journey-header-strip .lhs{display:flex;flex-direction:column;gap:.6rem;align-items:center}\r\n.journey-header-strip .lhs .eyebrow{font-size:clamp(.65rem,.85vw,.85rem);letter-spacing:.32em}\r\n.journey-header-strip .lhs h2{\r\n  font-family:var(--serif);font-weight:300;font-style:italic;\r\n  font-size:clamp(1.6rem, 2.5vw, 2.8rem);line-height:1.12;color:var(--cream);\r\n  max-width:42ch;\r\n}\r\n.journey-header-strip .lhs h2 .chapter-title-active{\r\n  color:var(--gold-bright);transition:color .6s var(--ease-out);\r\n}\r\n.journey-header-strip .lhs .meta-mini{\r\n  font-family:var(--serif);font-style:italic;font-size:clamp(.85rem, 1.1vw, 1.15rem);\r\n  color:rgba(251,247,238,.5);letter-spacing:.04em;\r\n}\r\n.journey-header-strip .lhs .meta-mini .roman{\r\n  color:var(--gold-bright);font-size:clamp(1rem, 1.3vw, 1.4rem);margin-right:.5rem;\r\n}\r\n@media(max-width:880px){.journey-header-strip{padding:0 1.5rem;top:4.5rem}}\r\n\r\n\/* The horizontal track *\/\r\n.journey-track-wrap{width:100%;overflow:hidden}\r\n.journey-track{\r\n  --cardw:clamp(400px, 24vw, 540px);\r\n  display:flex;gap:3rem;width:max-content;\r\n  padding-left:calc(50vw - var(--cardw)\/2);\r\n  padding-right:50vw;\r\n  padding-top:30px;padding-bottom:18px;\r\n  will-change:transform;\r\n}\r\n\r\n\/* Individual stage card, sized to fit between top strip and bottom chapter strip *\/\r\n.stage-card{\r\n  width:var(--cardw);flex-shrink:0;\r\n  display:flex;flex-direction:column;gap:.85rem;\r\n  opacity:.4;transform:scale(.93);\r\n  transition:opacity .9s var(--ease-out),transform .9s var(--ease-out);\r\n}\r\n.stage-card.is-active{opacity:1;transform:scale(1)}\r\n\r\n.stage-card .card-meta{display:none}\r\n\r\n.stage-card .head{display:flex;align-items:center;gap:.9rem}\r\n.stage-card .num{\r\n  width:60px;height:60px;border-radius:50%;\r\n  display:grid;place-items:center;position:relative;\r\n  background:radial-gradient(circle at 30% 30%,#1c4670,var(--ink-soft));\r\n  border:1px solid rgba(201,168,117,.45);\r\n  color:var(--gold-bright);\r\n  font-family:var(--serif);font-style:italic;font-size:1.4rem;\r\n  box-shadow:0 0 0 4px rgba(4,10,18,.7),var(--shadow-glow);\r\n  transition:all .6s var(--ease-out);\r\n  flex-shrink:0;\r\n}\r\n.stage-card.is-active .num{\r\n  border-color:var(--gold-bright);\r\n  box-shadow:0 0 0 6px rgba(4,10,18,.7),0 0 40px rgba(230,195,137,.35);\r\n}\r\n.stage-card .num::before{\r\n  content:\"\";position:absolute;inset:-10px;border-radius:50%;\r\n  border:1px solid rgba(201,168,117,.2);transition:all .6s var(--ease-out);\r\n}\r\n.stage-card.is-active .num::before{inset:-14px;border-color:rgba(230,195,137,.35)}\r\n.stage-card .label-block .label{\r\n  font-family:var(--sans);font-size:.7rem;letter-spacing:.32em;text-transform:uppercase;\r\n  color:rgba(251,247,238,.85);display:block;margin-bottom:.2rem;\r\n}\r\n.stage-card .label-block .sublabel{\r\n  font-family:var(--serif);font-style:italic;font-size:.85rem;\r\n  color:rgba(230,195,137,.7);\r\n}\r\n\r\n.stage-card .panel{\r\n  background:rgba(10,22,38,.55);\r\n  border:1px solid rgba(201,168,117,.18);\r\n  border-radius:4px;overflow:hidden;\r\n  box-shadow:var(--shadow-premium);\r\n  backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);\r\n  transition:all .7s var(--ease-out);\r\n}\r\n.stage-card.is-active .panel{\r\n  border-color:rgba(230,195,137,.4);\r\n  box-shadow:0 60px 100px -30px rgba(0,0,0,.92),0 0 0 1px rgba(230,195,137,.12);\r\n}\r\n\r\n.stage-card .photo-card{\r\n  position:relative;aspect-ratio:16\/9;overflow:hidden;background:var(--ink);cursor:pointer;\r\n}\r\n.stage-card .photo-card::after{\r\n  content:\"\";position:absolute;inset:0;\r\n  background:linear-gradient(180deg, rgba(4,10,18,.1) 0%,rgba(4,10,18,.45) 65%,rgba(4,10,18,.88) 100%);\r\n}\r\n\/* Play button, marks each photo-card as a video *\/\r\n.stage-card .photo-card::before{\r\n  content:\"\";position:absolute;z-index:4;\r\n  left:50%;top:48%;transform:translate(-50%,-50%) scale(.88);\r\n  width:62px;height:62px;border-radius:50%;\r\n  background:rgba(4,10,18,.4) url(\"data:image\/svg+xml,%3Csvg xmlns='http:\/\/www.w3.org\/2000\/svg' viewBox='0 0 24 24'%3E%3Cpath d='M8 5v14l11-7z' fill='%23fbf7ee'\/%3E%3C\/svg%3E\") 54% center\/22px no-repeat;\r\n  border:1.5px solid rgba(251,247,238,.85);\r\n  -webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);\r\n  box-shadow:0 8px 26px rgba(0,0,0,.45);\r\n  opacity:.85;pointer-events:none;\r\n  transition:transform .55s var(--ease-out),opacity .4s ease, background-color .35s ease, border-color .35s ease;\r\n}\r\n.stage-card.is-active .photo-card::before{opacity:1;transform:translate(-50%,-50%) scale(1)}\r\n.stage-card .photo-card:hover::before{\r\n  background-color:rgba(201,168,117,.9);border-color:var(--gold-bright);\r\n  transform:translate(-50%,-50%) scale(1.08);\r\n}\r\n.stage-card .photo-card .img{\r\n  position:absolute;inset:0;background-size:cover;background-position:center;\r\n  transition:transform 1.6s var(--ease-out);opacity:.92;\r\n}\r\n.stage-card.is-active .photo-card .img{transform:scale(1.04);opacity:1}\r\n\/* Real video in a journey card, fills the frame; hides the play-icon overlay *\/\r\n.stage-card .photo-card .card-vid{\r\n  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;background:#0a2540;\r\n  transition:transform 1.6s var(--ease-out);opacity:.95;\r\n}\r\n.stage-card.is-active .photo-card .card-vid{transform:scale(1.03);opacity:1}\r\n\/* Card-with-video, click to open the lightbox. Play icon fades in on hover. *\/\r\n.stage-card .photo-card.has-video{cursor:pointer}\r\n.stage-card .photo-card.has-video::before{opacity:0;transform:translate(-50%,-50%) scale(.85)}\r\n.stage-card .photo-card.has-video:hover::before{opacity:1;transform:translate(-50%,-50%) scale(1);background-color:rgba(230,195,137,.92);border-color:var(--gold-bright)}\r\n.stage-card .photo-card.vessel .img{\r\n  background:linear-gradient(180deg,#1a3a5c 0%,#0a2540 50%,#040d18 100%);\r\n}\r\n.stage-card .photo-card.vessel .vessel-img{\r\n  position:absolute;left:50%;bottom:0;width:90%;height:auto;max-height:92%;\r\n  transform:translateX(-50%);object-fit:contain;object-position:bottom;z-index:1;\r\n  filter:drop-shadow(0 18px 30px rgba(0,0,0,.55));\r\n}\r\n.stage-card .photo-card.vessel.speedboat .vessel-img{transform:translateX(-50%) scaleX(-1)}\r\n.stage-card .v-corner{\r\n  position:absolute;top:1.2rem;left:1.2rem;z-index:3;\r\n  font-size:.6rem;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-bright);\r\n  background:rgba(4,10,18,.4);backdrop-filter:blur(8px);padding:.4rem .8rem;border-radius:2px;\r\n  border:1px solid rgba(230,195,137,.2);\r\n}\r\n.stage-card .v-title{\r\n  position:absolute;left:1.8rem;bottom:1.6rem;z-index:3;\r\n  font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--cream);\r\n  text-shadow:0 2px 14px rgba(0,0,0,.6);\r\n}\r\n.stage-card .v-time{\r\n  position:absolute;top:1.2rem;right:1.2rem;z-index:3;\r\n  font-size:.65rem;letter-spacing:.22em;color:rgba(251,247,238,.85);\r\n  background:rgba(4,10,18,.55);backdrop-filter:blur(8px);padding:.4rem .7rem;border-radius:2px;\r\n}\r\n\r\n.stage-card .body{padding:1.1rem 1.5rem 1.2rem}\r\n.stage-card h3{\r\n  font-family:var(--serif);font-weight:300;\r\n  font-size:1.55rem;line-height:1.18;\r\n  color:var(--ivory);margin-bottom:.55rem;\r\n  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;\r\n}\r\n.stage-card h3 em{font-style:italic;color:var(--gold-bright);font-weight:400}\r\n.stage-card .desc{\r\n  color:rgba(251,247,238,.72);font-size:.92rem;line-height:1.55;\r\n  margin-bottom:.95rem;\r\n  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;\r\n}\r\n.stage-card.is-active .desc{-webkit-line-clamp:3}\r\n\r\n\/* Features = single italic strip below desc, saves vertical space *\/\r\n.stage-card .features{\r\n  border-top:1px solid rgba(201,168,117,.18);\r\n  padding-top:.7rem;\r\n  font-family:var(--serif);font-style:italic;\r\n  font-size:.8rem;color:rgba(251,247,238,.7);\r\n  letter-spacing:.02em;line-height:1.4;\r\n}\r\n.stage-card .features em{color:var(--gold-bright);font-style:italic;font-weight:400}\r\n.stage-card .features .sep{color:rgba(230,195,137,.4);margin:0 .25rem}\r\n\/* Each feature is now an inline chip: KEY \u00b7 value *\/\r\n.stage-card .feature{display:inline-flex;align-items:baseline;gap:.4rem;white-space:nowrap}\r\n.stage-card .feature+.feature::before{\r\n  content:\"\u00b7\";color:rgba(201,168,117,.4);margin-right:.3rem;\r\n}\r\n.stage-card .feature .k{\r\n  font-size:.55rem;letter-spacing:.26em;text-transform:uppercase;\r\n  color:rgba(230,195,137,.55);font-family:var(--sans);\r\n}\r\n.stage-card .feature .v{\r\n  font-family:var(--serif);font-size:.8rem;color:rgba(251,247,238,.85);line-height:1.25;\r\n}\r\n.stage-card .feature .v em{font-style:italic;color:var(--gold-bright)}\r\n.stage-card .feature .v em{font-style:italic;color:var(--gold-bright)}\r\n\r\n\/* Bottom chapter strip (timeline w\/ all 6 markers),sits in grid row 3 *\/\r\n.journey-chapter-strip{\r\n  position:relative;margin:0 auto 1.6rem;\r\n  z-index:6;width:min(1240px, 92vw);\r\n  display:flex;justify-content:space-between;align-items:flex-end;\r\n  padding-top:1rem;\r\n}\r\n.journey-chapter-strip::before{\r\n  content:\"\";position:absolute;left:12.5%;right:12.5%;bottom:14px;\r\n  height:1px;background:rgba(201,168,117,.18);z-index:0;\r\n}\r\n.journey-chapter-strip .progress-line{\r\n  position:absolute;left:12.5%;bottom:14px;height:1px;\r\n  background:linear-gradient(90deg, var(--gold-bright),var(--gold));\r\n  z-index:1;width:0;transition:width .12s linear;\r\n  box-shadow:0 0 8px rgba(230,195,137,.4);\r\n}\r\n.chapter-marker{\r\n  position:relative;z-index:2;flex:1;\r\n  display:flex;flex-direction:column;align-items:center;gap:.85rem;\r\n  font-size:clamp(.62rem,.78vw,.82rem);letter-spacing:.28em;text-transform:uppercase;\r\n  color:rgba(251,247,238,.4);\r\n  cursor:pointer;transition:color .35s ease;\r\n  padding-bottom:8px;\r\n}\r\n.chapter-marker:hover{color:rgba(251,247,238,.85)}\r\n.chapter-marker.active{color:var(--gold-bright)}\r\n.chapter-marker .roman{\r\n  font-family:var(--serif);font-style:italic;\r\n  font-size:clamp(.9rem, 1.2vw, 1.3rem);letter-spacing:.06em;display:block;\r\n}\r\n.chapter-marker .name{display:block;margin-bottom:.4rem}\r\n.chapter-marker .dot{\r\n  width:11px;height:11px;border-radius:50%;\r\n  background:rgba(251,247,238,.25);border:1px solid rgba(201,168,117,.3);\r\n  transition:all .4s var(--ease-out);\r\n}\r\n.chapter-marker.active .dot{\r\n  background:var(--gold-bright);border-color:var(--gold-bright);\r\n  box-shadow:0 0 0 4px rgba(230,195,137,.18),0 0 16px rgba(230,195,137,.5);\r\n  transform:scale(1.25);\r\n}\r\n.chapter-marker.done .dot{background:rgba(230,195,137,.55);border-color:rgba(230,195,137,.55)}\r\n@media(max-width:780px){\r\n  .chapter-marker .name{display:none}\r\n  .chapter-marker{gap:.4rem}\r\n  .journey-chapter-strip{bottom:2rem}\r\n}\r\n\r\n\/* Mobile fallback for journey, stack vertically, disable pin *\/\r\n@media(max-width:880px){\r\n  .journey-pin{height:auto}\r\n  .journey-sticky{position:relative;top:auto;height:auto;padding:6rem 0}\r\n  .journey-content{padding-top:6rem}\r\n  .journey-header-strip{position:relative;top:auto;padding:0 1.5rem;margin-bottom:3rem;flex-direction:column;gap:1.5rem}\r\n  .journey-header-strip .rhs{align-items:flex-start;text-align:left}\r\n  .journey-track-wrap{padding:0 1.5rem}\r\n  .journey-track{flex-direction:column;width:100%;padding:0;gap:2.5rem}\r\n  .stage-card{width:100%;opacity:1;transform:none}\r\n  .journey-chapter-strip{display:none}\r\n}\r\n\r\n\/* ============ MENU (light) ============ *\/\r\n.menu{position:relative;overflow:hidden;background:var(--paper)}\r\n.menu::before{content:\"\";position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1715249792892-ec2689ab016e?w=2400&q=80&auto=format&fit=crop') center\/cover no-repeat;filter:blur(3px) brightness(.9) saturate(1.1);transform:scale(1.06);opacity:.15}\r\n.menu::after{content:\"\";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(247,240,221,.6) 0%,rgba(247,240,221,.9) 100%)}\r\n.menu .container{position:relative;z-index:2}\r\n.menu .eyebrow{color:var(--gold-deep)}\r\n.menu .eyebrow::before,.menu .eyebrow::after{background:linear-gradient(90deg, transparent, var(--gold-deep))}\r\n.menu .h-section{color:var(--ink-text)}\r\n.menu .h-section em{color:var(--gold-deep)}\r\n.menu .lede{color:var(--ink-soft-text)}\r\n.menu-head{display:grid;grid-template-columns:1.2fr 1fr;gap:3rem;align-items:end;margin-bottom:3rem}\r\n@media(max-width:860px){.menu-head{grid-template-columns:1fr}}\r\n.menu-hero{width:100%;aspect-ratio:21\/8;margin-bottom:3.5rem;border:1px solid rgba(12,35,62,.2);overflow:hidden;position:relative;box-shadow:var(--shadow-premium);border-radius:4px}\r\n.menu-hero .img{position:absolute;inset:0;background-position:center;background-size:cover;background-repeat:no-repeat;animation:kenburns 26s ease-in-out infinite alternate}\r\n.menu-hero::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,10,18,.25) 0%,rgba(4,10,18,.15) 50%,rgba(4,10,18,.88) 100%)}\r\n.menu-hero .caption{position:absolute;left:2rem;bottom:1.6rem;z-index:2;font-family:var(--serif);font-style:italic;font-size:1.1rem;color:var(--cream);max-width:60ch}\r\n.menu-hero .caption .dot{color:var(--gold-bright);margin:0 .5rem}\r\n.menu-tabs{display:flex;gap:0;border-bottom:1px solid rgba(12,35,62,.22);margin-bottom:3rem;overflow-x:auto}\r\n.menu-tab{padding:1rem 1.6rem;font-family:var(--serif);font-size:1.05rem;font-weight:400;color:rgba(12,35,62,.55);border-bottom:2px solid transparent;letter-spacing:.04em;transition:all .25s;white-space:nowrap;display:flex;align-items:center;gap:.7rem}\r\n.menu-tab .num{font-size:.65rem;letter-spacing:.2em;color:rgba(12,35,62,.45);font-family:var(--sans)}\r\n.menu-tab:hover{color:var(--ink-text)}\r\n.menu-tab.active{color:var(--gold-deep);border-bottom-color:var(--gold-deep)}\r\n.menu-tab.active .num{color:var(--gold-deep)}\r\n.menu-panels{position:relative;min-height:540px}\r\n.menu-panel{display:none;grid-template-columns:1.2fr 1fr;gap:4rem;animation:fadeIn .6s var(--ease-out)}\r\n.menu-panel.active{display:grid}\r\n@media(max-width:860px){.menu-panel{grid-template-columns:1fr;gap:2rem}}\r\n@keyframes fadeIn{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}\r\n.menu-items{display:flex;flex-direction:column}\r\n.menu-item{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:1.2rem 0;border-bottom:1px dashed rgba(12,35,62,.18)}\r\n.menu-item:last-child{border-bottom:none}\r\n.menu-item h4{font-family:var(--serif);font-weight:500;font-size:1.18rem;color:var(--ink-text);margin-bottom:.3rem;display:flex;align-items:center;gap:.6rem;flex-wrap:wrap}\r\n.menu-item .tags{display:inline-flex;gap:.4rem}\r\n.menu-item .tag{font-size:.55rem;letter-spacing:.16em;text-transform:uppercase;padding:.2rem .5rem;border-radius:2px;background:rgba(201,168,117,.2);color:var(--gold-deep)}\r\n.menu-item .tag.veg{background:rgba(59,124,132,.18);color:var(--teal)}\r\n.menu-item p{font-size:.85rem;color:var(--ink-soft-text);line-height:1.55}\r\n.menu-item .price{font-family:var(--serif);font-size:1.05rem;color:var(--gold-deep);align-self:start;white-space:nowrap}\r\n.menu-item.course{grid-template-columns:1fr;padding:1.8rem 0}\r\n.menu-item.course:first-child{padding-top:1rem}\r\n.menu-item .course-no{font-family:var(--sans);font-size:.65rem;font-weight:500;letter-spacing:.32em;text-transform:uppercase;color:var(--gold-deep);display:block;margin-bottom:.7rem}\r\n.menu-item.course h4{font-size:1.45rem;font-weight:400;line-height:1.25}\r\n.menu-item.course .ingredients{font-family:var(--serif);font-style:italic;font-size:1rem;color:var(--ink-soft-text);margin-top:.5rem;line-height:1.55}\r\n\r\n.menu-side{background:linear-gradient(160deg, rgba(255,255,255,.92),rgba(237,229,207,.95));border:1px solid rgba(12,35,62,.18);padding:2.5rem;position:relative;overflow:hidden;display:flex;flex-direction:column;justify-content:space-between;backdrop-filter:blur(16px);border-radius:4px}\r\n.menu-side::before{content:\"\";position:absolute;top:-50%;right:-30%;width:400px;height:400px;border-radius:50%;background:radial-gradient(circle, rgba(201,168,117,.25),transparent 70%)}\r\n.menu-side .badge{font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep);margin-bottom:1rem;display:flex;align-items:center;gap:.6rem}\r\n.menu-side h3{font-family:var(--serif);font-weight:300;font-size:1.75rem;line-height:1.2;color:var(--ink-text);margin-bottom:1rem}\r\n.menu-side p{color:var(--ink-soft-text);font-size:.92rem;line-height:1.6;margin-bottom:1.5rem}\r\n.menu-side .feat{display:flex;flex-direction:column;gap:.7rem;font-size:.85rem;color:var(--ink-soft-text)}\r\n.menu-side .feat span{display:flex;align-items:center;gap:.7rem}\r\n.menu-side .feat svg{width:14px;height:14px;color:var(--gold-deep);flex-shrink:0}\r\n\r\n\/* ============ ROUTE (dark) ============ *\/\r\n.route{position:relative;overflow:hidden;background:#06182a}\r\n.route::before{content:\"\";position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1763582519549-d833a8e0eabb?w=2400&q=80&auto=format&fit=crop') center\/cover no-repeat;filter:blur(2px) brightness(.4) saturate(1.15);transform:scale(1.05);opacity:.5}\r\n.route::after{content:\"\";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(4,10,18,.88) 0%,rgba(10,24,40,.92) 100%)}\r\n.route .container{position:relative;z-index:2}\r\n.route-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:4rem;align-items:center}\r\n@media(max-width:960px){.route-grid{grid-template-columns:1fr}}\r\n.route-photo{position:relative;aspect-ratio:1\/1.05;border:1px solid rgba(201,168,117,.25);overflow:hidden;box-shadow:var(--shadow-premium);border-radius:4px}\r\n.route-photo .img{position:absolute;inset:0;background:url('https:\/\/images.unsplash.com\/photo-1758135005218-f18e2a3c3ce8?w=1600&q=85&auto=format&fit=crop') center\/cover no-repeat;animation:kenburns 28s ease-in-out infinite alternate}\r\n.route-photo::after{content:\"\";position:absolute;inset:0;background:linear-gradient(180deg, rgba(4,10,18,0) 30%,rgba(4,10,18,.6) 100%),linear-gradient(120deg, rgba(8,33,58,.4),transparent 60%)}\r\n.route-map-overlay{position:absolute;inset:0;z-index:2;display:grid;place-items:end stretch;padding:2rem}\r\n.route-map-overlay svg{width:100%;max-width:560px;margin:0 auto}\r\n.route-legend{margin-top:1.4rem;display:flex;flex-wrap:wrap;gap:1.4rem;font-size:.75rem;color:rgba(251,247,238,.7)}\r\n.route-legend .key{display:flex;align-items:center;gap:.5rem}\r\n.route-legend .dot{width:10px;height:10px;border-radius:50%}\r\n.route-legend .dot.hub{background:var(--gold-bright);box-shadow:0 0 10px var(--gold)}\r\n.route-legend .dot.ship{background:var(--coral)}\r\n.route-legend .dot.island{background:var(--seafoam)}\r\n.rope-divider{display:flex;align-items:center;justify-content:center;gap:1.2rem;margin:2.5rem 0}\r\n.rope-divider svg{flex:1;max-width:200px;color:var(--gold);opacity:.6}\r\n.rope-divider .knot{color:var(--gold-bright)}\r\n\r\n\/* ============ PILLARS (light) ============ *\/\r\n.pillars{position:relative;overflow:hidden;background:var(--paper)}\r\n.pillars::before{content:\"\";position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1437385545573-fcf5b4b7fb57?w=2400&q=80&auto=format&fit=crop') center\/cover no-repeat;filter:blur(4px) brightness(.85) saturate(1.1);transform:scale(1.06);opacity:.12}\r\n.pillars::after{content:\"\";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(247,240,221,.7) 0%,rgba(247,240,221,.92) 100%)}\r\n.pillars .container{position:relative;z-index:2}\r\n.pillars .eyebrow{color:var(--gold-deep)}\r\n.pillars .eyebrow::before,.pillars .eyebrow::after{background:linear-gradient(90deg, transparent, var(--gold-deep))}\r\n.pillars .h-section{color:var(--ink-text)}\r\n.pillars .h-section em{color:var(--gold-deep)}\r\n.pillars .lede{color:var(--ink-soft-text)}\r\n.pillars-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(12,35,62,.18);margin-top:4rem}\r\n@media(max-width:960px){.pillars-grid{grid-template-columns:1fr}}\r\n.pillar{background:linear-gradient(160deg, rgba(255,255,255,.95),rgba(237,229,207,.92));padding:2.5rem 2rem;display:flex;flex-direction:column;gap:1rem;transition:background .35s ease;position:relative;overflow:hidden}\r\n.pillar:hover{background:linear-gradient(160deg, rgba(255,255,255,1),rgba(247,240,221,1))}\r\n.pillar .icon{width:48px;height:48px;color:var(--gold-deep);display:grid;place-items:center;margin-bottom:.5rem}\r\n.pillar h3{font-family:var(--serif);font-weight:300;font-size:1.6rem;line-height:1.2;color:var(--ink-text)}\r\n.pillar p{font-size:.9rem;color:var(--ink-soft-text);line-height:1.6}\r\n.pillar .num{position:absolute;top:1.4rem;right:1.6rem;font-family:var(--serif);font-style:italic;font-size:.85rem;color:var(--gold-deep)}\r\n\r\n\/* ============ MEET THE CHEF (light) ============ *\/\r\n.chef{padding:8rem 0;background:linear-gradient(180deg, var(--paper) 0%,#f1ead9 100%);color:var(--ink-text);position:relative;z-index:2}\r\n.chef-inner{display:grid;grid-template-columns:minmax(0,38%) minmax(0,1fr);gap:5rem;align-items:center;max-width:1180px;margin:0 auto}\r\n.chef-portrait{aspect-ratio:3\/4;overflow:hidden;border-radius:4px;box-shadow:var(--shadow-premium);position:relative;background:#0a2540}\r\n.chef-portrait img{width:100%;height:100%;object-fit:cover;object-position:center top;display:block;transition:transform 1.4s var(--ease-out)}\r\n.chef-portrait:hover img{transform:scale(1.03)}\r\n.chef-portrait::after{content:\"\";position:absolute;inset:auto 0 0 0;height:35%;background:linear-gradient(180deg, transparent, rgba(4,10,18,.55));pointer-events:none}\r\n.chef-text .eyebrow{color:var(--gold-deep)}\r\n.chef-text h2{margin-top:1.4rem;font-family:var(--serif);font-weight:300;font-size:clamp(2rem, 3vw, 3.2rem);line-height:1.12;color:var(--ink-text);letter-spacing:-.01em}\r\n.chef-text h2 em{font-style:italic;color:var(--gold-deep)}\r\n.chef-text p.bio{color:var(--ink-text);margin-top:1.6rem;line-height:1.75;font-size:clamp(1rem, 1.05vw, 1.1rem);max-width:54ch}\r\n.chef-text p.bio em{font-style:italic;color:var(--gold-deep)}\r\n.chef-creds{margin-top:2.4rem;display:flex;flex-wrap:wrap;align-items:center;gap:.8rem;font-size:.65rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-deep)}\r\n.chef-creds .sep{color:var(--ink-faint);opacity:.6}\r\n@media(max-width:900px){\r\n  .chef{padding:5rem 0}\r\n  .chef-inner{grid-template-columns:1fr;gap:2.8rem}\r\n  .chef-portrait{max-width:440px;margin:0 auto;width:100%}\r\n}\r\n\r\n\/* ============ AWARDS (light) ============ *\/\r\n.awards{padding:3rem 0;background:var(--paper-mid);border-top:1px solid rgba(12,35,62,.15);border-bottom:1px solid rgba(12,35,62,.15);position:relative;z-index:2}\r\n.awards-inner{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:2rem}\r\n.awards-label{font-size:.66rem;letter-spacing:.34em;text-transform:uppercase;color:var(--ink-faint);display:flex;flex-direction:column;gap:.55rem;max-width:240px}\r\n.awards-label .awards-tag{font-family:var(--serif);font-style:italic;font-size:.95rem;letter-spacing:.02em;text-transform:none;color:var(--ink-soft-text);line-height:1.4}\r\n.awards-list{display:flex;flex-wrap:wrap;gap:2.5rem;align-items:center}\r\n.award{display:flex;align-items:center;gap:.7rem;font-family:var(--serif);font-size:1.05rem;color:var(--ink-text)}\r\n.award svg{width:22px;height:22px;color:var(--gold-deep)}\r\n\r\n\/* ============ CTA (dark) ============ *\/\r\n.cta{position:relative;text-align:center;overflow:hidden;padding:10rem 0 5rem;isolation:isolate;min-height:80vh;display:flex;align-items:center;justify-content:center;background:#08182a}\r\n.cta-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0}\r\n.cta-poster{position:absolute;inset:0;z-index:0;background:url('https:\/\/images.unsplash.com\/photo-1437385545573-fcf5b4b7fb57?w=2400&q=85&auto=format&fit=crop') center\/cover no-repeat}\r\n.cta-overlay{position:absolute;inset:0;z-index:1;background:linear-gradient(180deg, rgba(4,10,18,.65) 0%,rgba(4,10,18,.55) 40%,rgba(4,10,18,.85) 100%);box-shadow:inset 0 0 200px 40px rgba(4,10,18,.7)}\r\n.cta-content{position:relative;z-index:3;max-width:780px;margin:0 auto;padding:0 2rem}\r\n.cta-content h2{margin-bottom:1.5rem;text-shadow:0 2px 30px rgba(0,0,0,.5)}\r\n.cta-content .lede{margin:0 auto 2.5rem;color:rgba(251,247,238,.95);text-shadow:0 2px 20px rgba(0,0,0,.5)}\r\n.cta-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}\r\n\r\n\/* ============ FOOTER ============ *\/\r\nfooter{padding:4rem 0 2.5rem;background:var(--ink);border-top:1px solid rgba(201,168,117,.18);position:relative;z-index:2}\r\n.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem;margin-bottom:3rem}\r\n@media(max-width:780px){.foot-grid{grid-template-columns:1fr 1fr;gap:2rem}}\r\n.foot-col h5{font-size:.66rem;letter-spacing:.3em;text-transform:uppercase;color:var(--gold-bright);margin-bottom:1rem}\r\n.foot-col ul{list-style:none;display:flex;flex-direction:column;gap:.6rem}\r\n.foot-col a{font-size:.88rem;color:rgba(251,247,238,.7)}\r\n.foot-col a:hover{color:var(--gold-bright)}\r\n.foot-col p{font-size:.88rem;color:rgba(251,247,238,.7);line-height:1.6}\r\n.foot-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:2rem;border-top:1px solid rgba(201,168,117,.18);font-size:.76rem;color:rgba(251,247,238,.55);flex-wrap:wrap;gap:1rem}\r\n.foot-coords{display:flex;gap:1.5rem}\r\n\r\n.reveal{opacity:0;transform:translateY(30px);transition:all 1s var(--ease-out)}\r\n.reveal.in{opacity:1;transform:translateY(0)}\r\n\r\n\/* ============ WAVE DIVIDER COLORS ============ *\/\r\n.wave-sep.to-intro{background:#06192e}\r\n.wave-sep.to-intro .w-back path{fill:#1a2f48}\r\n.wave-sep.to-intro .w-mid path{fill:#c8bea4}\r\n.wave-sep.to-intro .w-front path{fill:var(--paper)}\r\n.wave-sep.to-intro .gold-line{stroke:var(--gold-bright);opacity:.55}\r\n.wave-sep.to-journey{background:var(--paper)}\r\n.wave-sep.to-journey .w-back path{fill:#c8bea4}\r\n.wave-sep.to-journey .w-mid path{fill:#1a3a5c}\r\n.wave-sep.to-journey .w-front path{fill:#0a2540}\r\n.wave-sep.to-journey .gold-line{stroke:var(--gold-deep);opacity:.65}\r\n.wave-sep.to-menu{background:#0a2030}\r\n.wave-sep.to-menu .w-back path{fill:#1f3f5a}\r\n.wave-sep.to-menu .w-mid path{fill:#c8bea4}\r\n.wave-sep.to-menu .w-front path{fill:var(--paper)}\r\n.wave-sep.to-menu .gold-line{stroke:var(--gold-bright);opacity:.55}\r\n.wave-sep.to-route{background:var(--paper)}\r\n.wave-sep.to-route .w-back path{fill:#c8bea4}\r\n.wave-sep.to-route .w-mid path{fill:#143a5c}\r\n.wave-sep.to-route .w-front path{fill:#06182a}\r\n.wave-sep.to-route .gold-line{stroke:var(--gold-deep);opacity:.65}\r\n.wave-sep.to-pillars{background:#06192e}\r\n.wave-sep.to-pillars .w-back path{fill:#1a2f48}\r\n.wave-sep.to-pillars .w-mid path{fill:#c8bea4}\r\n.wave-sep.to-pillars .w-front path{fill:var(--paper)}\r\n.wave-sep.to-pillars .gold-line{stroke:var(--gold-bright);opacity:.55}\r\n.wave-sep.to-cta{background:var(--paper-mid)}\r\n.wave-sep.to-cta .w-back path{fill:#c8bea4}\r\n.wave-sep.to-cta .w-mid path{fill:#143a5c}\r\n.wave-sep.to-cta .w-front path{fill:#08182a}\r\n.wave-sep.to-cta .gold-line{stroke:var(--gold-deep);opacity:.65}\r\n<\/style>\r\n\r\n<!-- ============ SPLASH ============ -->\r\n<div class=\"splash\" id=\"splash\">\r\n  <svg viewBox=\"0 0 80 80\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\">\r\n    <circle cx=\"40\" cy=\"40\" r=\"34\"\/>\r\n    <circle cx=\"40\" cy=\"40\" r=\"24\" opacity=\".55\"\/>\r\n    <polygon points=\"40,8 44,40 40,44 36,40\" fill=\"currentColor\"\/>\r\n    <polygon points=\"40,72 44,40 40,36 36,40\" fill=\"currentColor\" opacity=\".4\"\/>\r\n    <circle cx=\"40\" cy=\"40\" r=\"3\" fill=\"currentColor\"\/>\r\n  <\/svg>\r\n  <div class=\"label\">Setting Sail<\/div>\r\n<\/div>\r\n\r\n<!-- ============ NAV ============ -->\r\n<nav class=\"nav\" id=\"nav\">\r\n  <div class=\"container nav-inner\">\r\n    <!-- MEDIA: logo,\"RA-logo.png\" (your real Royal Albatross logo). Clicking\r\n         it returns to the main site. On WordPress, replace src with the Media\r\n         Library URL. Adjust height to resize. -->\r\n    <a href=\"https:\/\/tallship.com.sg\" class=\"brand\" aria-label=\"Royal Albatross, back to main site\">\r\n      <img decoding=\"async\" src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png\" alt=\"Royal Albatross\" style=\"height:34px;width:auto;display:block\" \/>\r\n    <\/a>\r\n    <!-- EDIT: NAV LINKS. The first four jump to sections on this page.\r\n         The last one links back to the main Royal Albatross site. -->\r\n    <div class=\"nav-links\">\r\n      <a href=\"#journey\">The Journey<\/a>\r\n      <a href=\"#menu\">Dining<\/a>\r\n      <a href=\"#route\">Southern Islands<\/a>\r\n      <a href=\"#why\">Experience<\/a>\r\n      <a href=\"https:\/\/tallship.com.sg\">Royal Albatross \u2197<\/a>\r\n    <\/div>\r\n    <div class=\"nav-cta\">\r\n      <button class=\"audio-toggle\" id=\"audioToggle\" aria-label=\"Toggle ambient audio\">\r\n        <svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\" stroke-linecap=\"round\" stroke-linejoin=\"round\">\r\n          <path d=\"M11 5L6 9H2v6h4l5 4V5z\"\/>\r\n          <path d=\"M15.54 8.46a5 5 0 010 7.07\" opacity=\".7\"\/>\r\n        <\/svg>\r\n      <\/button>\r\n      <a href=\"https:\/\/tallship.ticketupp.com\/products\/Albatross-Island-Restaurant#ticket-types\" class=\"btn solid\">Reserve <span class=\"arrow\">\u2192<\/span><\/a>\r\n      <button class=\"nav-burger\" id=\"navBurger\" aria-label=\"Open menu\" aria-expanded=\"false\"><span><\/span><span><\/span><span><\/span><\/button>\r\n    <\/div>\r\n  <\/div>\r\n  <div class=\"nav-overlay\" id=\"navOverlay\"><\/div>\r\n<\/nav>\r\n\r\n<!-- ============ HERO ============ -->\r\n<header class=\"hero\">\r\n  <div class=\"hero-poster\"><\/div>\r\n  <!-- ============================================================\r\n       EDIT: HERO, headline, sub-line, brand name and buttons below.\r\n       MEDIA: hero background video. \"hero-keyvisual.mp4\" is a LOCAL file.\r\n       For WordPress: upload it to the Media Library and replace the src\r\n       below with its URL. The poster=\"...\" image shows while it loads.\r\n       Keep autoplay + muted (browsers block autoplay with sound).\r\n       ============================================================ -->\r\n  <video class=\"hero-video\" id=\"heroVideo\" autoplay muted loop playsinline preload=\"auto\" poster=\"https:\/\/images.unsplash.com\/photo-1774031826492-3d859b950574?w=2400&#038;q=85&#038;auto=format&#038;fit=crop\">\r\n    <source src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/05\/hf_20260521_045105_60a4b7da-88ee-4d6a-929d-78ac8fc91331.mp4\" type=\"video\/mp4\">\r\n  <\/video>\r\n  <div class=\"hero-overlay\"><\/div>\r\n  <div class=\"hero-vignette\"><\/div>\r\n\r\n  <div class=\"hero-content\">\r\n    <div class=\"hero-eyebrow-row\">\r\n      <!-- EDIT: brand name. The word inside <em> shows in gold. -->\r\n      <span class=\"hero-brand\"><span class=\"dot\"><\/span><span class=\"txt\"><em>Albatross<\/em> Island Restaurant<\/span><\/span>\r\n    <\/div>\r\n    <!-- EDIT: headline. Each <span class=\"line\"> is one line; <em> = gold italic. -->\r\n    <!-- EDIT: the sub-line and the two buttons are just below. -->\r\n\r\n    <h1 class=\"hero-title\">\r\n      <span class=\"line\"><span>Reimagine<\/span><\/span>\r\n      <span class=\"line\"><span>the way<\/span><\/span>\r\n      <span class=\"line\"><span>you <em>dine.<\/em><\/span><\/span>\r\n    <\/h1>\r\n    <p class=\"hero-sub\">Skim across the water by speedboat, step aboard Asia\u2019s only luxury tall ship, and dine anchored off Lazarus Island, then island-hop the Southern Islands all day.<\/p>\r\n    <div class=\"hero-actions\">\r\n      <a href=\"https:\/\/tallship.ticketupp.com\/products\/Albatross-Island-Restaurant#ticket-types\" class=\"btn solid\">Begin the Journey <span class=\"arrow\">\u2192<\/span><\/a>\r\n      <a href=\"#menu\" class=\"btn\">View Dining Menus<\/a>\r\n    <\/div>\r\n  <\/div>\r\n\r\n  <div class=\"hero-coord\"><strong>1\u00b013\u2032N<\/strong> 103\u00b050\u2032E \u00b7 Lazarus Island<\/div>\r\n  <div class=\"hero-scroll\">Scroll <span class=\"line\"><\/span><\/div>\r\n<\/header>\r\n<\/div>\r\n\r\n<!-- WAVE DIVIDER: hero \u2192 intro -->\r\n<div class=\"wave-sep to-intro\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- ============ INTRO ============ -->\r\n<section class=\"intro section-pad\" id=\"story\">\r\n  <div class=\"container intro-grid\">\r\n    <div class=\"intro-text reveal\">\r\n      <span class=\"eyebrow left\">A New Category in Premium Tourism<\/span>\r\n      <h2 class=\"h-section\" style=\"margin-top:1.4rem\">A new category in <em>premium tourism<\/em>.<\/h2>\r\n      <p>Tall Ship Adventures combines the <strong>Royal Albatross<\/strong>, Asia\u2019s only luxury tall ship, with <strong>Albatross Speedboat Adventures<\/strong>, Singapore\u2019s first hop-on hop-off speedboat experience, into a single premium ecosystem off the Southern Islands.<\/p>\r\n      <p>Brunch and lunch anchored in the C-shaped Lazarus lagoon. Sunset and dinner sailings from Resorts World Sentosa, and unlimited island exploration for every guest, all day, included.<\/p>\r\n      <div class=\"intro-stats\">\r\n        <div class=\"stat\"><div class=\"n\">1<\/div><div class=\"l\">Luxury tall ship in Asia<\/div><\/div>\r\n        <div class=\"stat\"><div class=\"n\">5<\/div><div class=\"l\">Premium speedboats<\/div><\/div>\r\n        <div class=\"stat\"><div class=\"n\">4<\/div><div class=\"l\">Sentosa pickup hubs<\/div><\/div>\r\n        <div class=\"stat\"><div class=\"n\">6\u00d7<\/div><div class=\"l\">Daily sailings\/week<\/div><\/div>\r\n      <\/div>\r\n    <\/div>\r\n    <div class=\"intro-visual reveal\">\r\n      <div class=\"photo\"><\/div>\r\n      <div class=\"caption\">Royal Albatross<span class=\"dot\">\u00b7<\/span>est. 2008<span class=\"dot\">\u00b7<\/span>22 sails, 4 masts<\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- WAVE DIVIDER: intro \u2192 journey -->\r\n<div class=\"wave-sep to-journey\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- =====================================================\r\n     JOURNEY, Horizontal scrollytelling (premium)\r\n     ===================================================== -->\r\n<div class=\"journey-pin\" id=\"journey-pin\">\r\n  <div class=\"journey-sticky\" id=\"journey-sticky\">\r\n\r\n    <!-- Top strip: chapter context (updates as you scroll) -->\r\n    <div class=\"journey-header-strip\">\r\n      <div class=\"lhs\">\r\n        <span class=\"eyebrow\">The Guest Journey \u00b7 Four chapters at sea<\/span>\r\n        <h2><span class=\"chapter-title-active\" id=\"chapterTitle\">Buy your ticket.<\/span><\/h2>\r\n        <div class=\"meta-mini\"><span class=\"roman\" id=\"chapterNum\">I<\/span><span id=\"chapterCoord\">Online booking \u00b7 24\/7<\/span><\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"journey-content\">\r\n\r\n      <div class=\"journey-track-wrap\">\r\n        <div class=\"journey-track\" id=\"journey-track\">\r\n\r\n          <!-- ============================================================\r\n               EDIT: JOURNEY, the 4 chapter cards below.\r\n               Per card you can change: data-title \/ data-coord (shown in the\r\n               header strip), the <h3> title, the <p class=\"desc\"> text, the\r\n               <span class=\"v-title\"> caption and <span class=\"v-time\"> runtime.\r\n               Card photos: Chapters I & IV use stock photos (replace the URL);\r\n               Chapters II & III use your brand PNGs (speedboat \/ tall ship).\r\n               ============================================================ -->\r\n\r\n          <!-- ===== CHAPTER I, BUY A TICKET ===== -->\r\n          <article class=\"stage-card is-active\" data-chapter=\"0\" data-title=\"Buy your ticket.\" data-coord=\"Online booking \u00b7 24\/7\">\r\n            <div class=\"head\">\r\n              <div class=\"num\">I<\/div>\r\n              <div class=\"label-block\">\r\n                <span class=\"label\">Step One \u00b7 Buy a ticket<\/span>\r\n                <span class=\"sublabel\">Choose your sailing<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"panel\">\r\n              <div class=\"photo-card has-video\">\r\n                <!-- MEDIA: Chapter I video. REPLACE the <source src> with your Media Library URL on WordPress. -->\r\n                <video class=\"card-vid\" autoplay muted loop playsinline preload=\"metadata\">\r\n                  <source src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/VIDEO-1.mp4\" type=\"video\/mp4\">\r\n                <\/video>\r\n                <span class=\"v-corner\">No. 01<\/span>\r\n                <span class=\"v-time\">0:48<\/span>\r\n                <span class=\"v-title\">It starts with a booking.<\/span>\r\n              <\/div>\r\n              <div class=\"body\">\r\n                <h3>The day is yours to <em>design<\/em>.<\/h3>\r\n                <p class=\"desc\">Pick a date, a pickup hub, and a brunch or lunch seating. Every booking includes a full-day unlimited Hop-On Hop-Off pass across the Southern Islands.<\/p>\r\n                <div class=\"features\">6 days \/ week<span class=\"sep\">\u00b7<\/span>online &amp; <em>instant<\/em><span class=\"sep\">\u00b7<\/span>hop-on pass included<\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/article>\r\n\r\n          <!-- ===== CHAPTER II, SPEEDBOAT RIDE ===== -->\r\n          <article class=\"stage-card\" data-chapter=\"1\" data-title=\"A speedboat ride out to sea.\" data-coord=\"Singapore Strait \u00b7 25 knots\">\r\n            <div class=\"head\">\r\n              <div class=\"num\">II<\/div>\r\n              <div class=\"label-block\">\r\n                <span class=\"label\">Step Two \u00b7 Speedboat ride<\/span>\r\n                <span class=\"sublabel\">Across the Singapore Strait<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"panel\">\r\n              <div class=\"photo-card has-video\">\r\n                <!-- MEDIA: Chapter II video (speedboat ride). REPLACE the <source src> with your Media Library URL on WordPress. -->\r\n                <video class=\"card-vid\" autoplay muted loop playsinline preload=\"metadata\">\r\n                  <source src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/VIDEO-2.mp4\" type=\"video\/mp4\">\r\n                <\/video>\r\n                <span class=\"v-corner\">No. 02<\/span>\r\n                <span class=\"v-time\">1:55<\/span>\r\n                <span class=\"v-title\">Salt spray, open horizon, the city behind you.<\/span>\r\n              <\/div>\r\n              <div class=\"body\">\r\n                <h3>Not transport. The <em>opening act<\/em>.<\/h3>\r\n                <p class=\"desc\">Board your Albatross speedboat and cut across the Singapore Strait at twenty-five knots. By the time the tall ship comes into view, you\u2019re already on the experience.<\/p>\r\n                <div class=\"features\">15 \u2013 25 min crossing<span class=\"sep\">\u00b7<\/span><em>premium<\/em> speedboat<span class=\"sep\">\u00b7<\/span>pickup from 4 hubs<\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/article>\r\n\r\n          <!-- ===== CHAPTER III, BOARD &amp; DINE ===== -->\r\n          <article class=\"stage-card\" data-chapter=\"2\" data-title=\"Board &amp; dine on the Royal Albatross.\" data-coord=\"Lazarus Lagoon \u00b7 10:30am to 3pm\">\r\n            <div class=\"head\">\r\n              <div class=\"num\">III<\/div>\r\n              <div class=\"label-block\">\r\n                <span class=\"label\">Step Three \u00b7 Board &amp; Dine<\/span>\r\n                <span class=\"sublabel\">Anchored in the Lazarus lagoon<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"panel\">\r\n              <div class=\"photo-card has-video\">\r\n                <!-- MEDIA: Chapter III video (board & dine). REPLACE the <source src> with your Media Library URL on WordPress. -->\r\n                <video class=\"card-vid\" autoplay muted loop playsinline preload=\"metadata\">\r\n                  <source src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/VIDEO-3.mp4\" type=\"video\/mp4\">\r\n                <\/video>\r\n                <span class=\"v-corner\">No. 03<\/span>\r\n                <span class=\"v-time\">2:20<\/span>\r\n                <span class=\"v-title\">110 feet, 4 masts, 22 sails.<\/span>\r\n              <\/div>\r\n              <div class=\"body\">\r\n                <h3>Dine on Asia\u2019s only <em>luxury<\/em> tall ship.<\/h3>\r\n                <p class=\"desc\">Step onto teak decks anchored in the sheltered Lazarus lagoon, then settle in for a long lunch at sea, a seasonal, share-style three-course set designed for the deck.<\/p>\r\n                <div class=\"features\">110 ft barquentine<span class=\"sep\">\u00b7<\/span>brunch &amp; lunch<span class=\"sep\">\u00b7<\/span><em>signature<\/em> pairings<\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/article>\r\n\r\n          <!-- ===== CHAPTER IV, HOP ON HOP OFF ===== -->\r\n          <article class=\"stage-card\" data-chapter=\"3\" data-title=\"Hop on, hop off the islands.\" data-coord=\"Southern Islands \u00b7 until 6:30pm\">\r\n            <div class=\"head\">\r\n              <div class=\"num\">IV<\/div>\r\n              <div class=\"label-block\">\r\n                <span class=\"label\">Step Four \u00b7 Explore<\/span>\r\n                <span class=\"sublabel\">Your full-day pass<\/span>\r\n              <\/div>\r\n            <\/div>\r\n            <div class=\"panel\">\r\n              <div class=\"photo-card has-video\">\r\n                <!-- MEDIA: Chapter IV video (hop-on hop-off islands). REPLACE the <source src> with your Media Library URL on WordPress. -->\r\n                <video class=\"card-vid\" autoplay muted loop playsinline preload=\"metadata\">\r\n                  <source src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/VIDEO-4.mp4\" type=\"video\/mp4\">\r\n                <\/video>\r\n                <span class=\"v-corner\">No. 04<\/span>\r\n                <span class=\"v-time\">2:38<\/span>\r\n                <span class=\"v-title\">Lazarus \u00b7 Kusu \u00b7 St John\u2019s \u00b7 Sisters\u2019.<\/span>\r\n              <\/div>\r\n              <div class=\"body\">\r\n                <h3>Hop on. Hop off. <em>All day.<\/em><\/h3>\r\n                <p class=\"desc\">Your full-day pass keeps the day going. Lazarus, Kusu, St John\u2019s, Sisters\u2019 Islands, jump on the next speedboat whenever you like. White sand, sheltered swims, and the slow Singapore most visitors never see.<\/p>\r\n                <div class=\"features\">4 Southern Islands<span class=\"sep\">\u00b7<\/span><em>unlimited<\/em> same-day access<span class=\"sep\">\u00b7<\/span>included, no upsell<\/div>\r\n              <\/div>\r\n            <\/div>\r\n          <\/article>\r\n\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <!-- Chapter strip at the bottom (clickable markers + progress line) -->\r\n    <div class=\"journey-chapter-strip\" id=\"chapterStrip\">\r\n      <div class=\"progress-line\" id=\"progressLine\"><\/div>\r\n      <button class=\"chapter-marker active\" data-jump=\"0\"><span class=\"roman\">I<\/span><span class=\"name\">Ticket<\/span><span class=\"dot\"><\/span><\/button>\r\n      <button class=\"chapter-marker\" data-jump=\"1\"><span class=\"roman\">II<\/span><span class=\"name\">Speedboat ride<\/span><span class=\"dot\"><\/span><\/button>\r\n      <button class=\"chapter-marker\" data-jump=\"2\"><span class=\"roman\">III<\/span><span class=\"name\">Board &amp; Dine<\/span><span class=\"dot\"><\/span><\/button>\r\n      <button class=\"chapter-marker\" data-jump=\"3\"><span class=\"roman\">IV<\/span><span class=\"name\">Explore<\/span><span class=\"dot\"><\/span><\/button>\r\n    <\/div>\r\n\r\n  <\/div>\r\n<\/div>\r\n\r\n<!-- WAVE DIVIDER: journey \u2192 menu -->\r\n<div class=\"wave-sep to-menu\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- ============ MENU ============ -->\r\n<!-- ============================================================\r\n     EDIT: MENU. Four tabs = four <div class=\"menu-panel\"> blocks\r\n     (data-panel=\"brunch\"\/\"lunch\"\/\"bar\"\/\"signature\"). Each dish is ONE line:\r\n       <div class=\"menu-item\"><div><h4>NAME<\/h4><p>DESCRIPTION<\/p><\/div><div class=\"price\">S$ NN<\/div><\/div>\r\n     Copy a line to add a dish; delete a line to remove one.\r\n     Tags: <span class=\"tag\">Signature<\/span> = gold chip,\r\n           <span class=\"tag veg\">V<\/span> = vegetarian marker.\r\n     The right-hand info card is <aside class=\"menu-side\"> (hours + ticks).\r\n     ============================================================ -->\r\n<section class=\"menu section-pad\" id=\"menu\">\r\n  <div class=\"container\">\r\n    <!-- MEDIA: menu banner photo. Replace the background-image URL below with any Media Library URL. Image is cropped to a 21:8 ratio, gently zoomed (Ken Burns). -->\r\n    <div class=\"menu-hero reveal\">\r\n      <div class=\"img\" style=\"background-image:url('https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/49193bd9-26d6-4ff0-8a53-791583c80af6.png')\"><\/div>\r\n      <div class=\"caption\">Chef Inderpal Singh<span class=\"dot\">\u00b7<\/span>MasterChef Singapore S4<span class=\"dot\">\u00b7<\/span>at the helm of the Royal Albatross kitchen<\/div>\r\n    <\/div>\r\n    <div class=\"menu-head reveal\">\r\n      <div>\r\n        <span class=\"eyebrow left\">Royal Albatross \u00b7 AIR<\/span>\r\n        <h2 class=\"h-section\" style=\"margin-top:1.4rem\">Singaporean coastal cuisine, inspired by the <em>spice routes<\/em>.<\/h2>\r\n      <\/div>\r\n      <p class=\"lede\">A three-course lunch adventure designed by Chef Inderpal Singh, served at anchor in the Lazarus lagoon. Two set menus, one for omnivores, one for vegetarians.<\/p>\r\n    <\/div>\r\n\r\n    <div class=\"menu-tabs\">\r\n      <button class=\"menu-tab active\" data-tab=\"nonveg\"><span class=\"num\">01<\/span> Non-Vegetarian<\/button>\r\n      <button class=\"menu-tab\" data-tab=\"veg\"><span class=\"num\">02<\/span> Vegetarian<\/button>\r\n    <\/div>\r\n\r\n    <div class=\"menu-panels\">\r\n      <div class=\"menu-panel active\" data-panel=\"nonveg\">\r\n        <div class=\"menu-items\">\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course One \u00b7 Starter<\/span>\r\n              <h4>Hokkaido Scallop Ceviche<\/h4>\r\n              <p class=\"ingredients\">Green Mango \u00b7 Assam Ponzu \u00b7 Curry Leaf Oil \u00b7 Puffed Rice<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course Two \u00b7 Main<\/span>\r\n              <h4>16-Hour Braised Beef Short Rib<\/h4>\r\n              <p class=\"ingredients\">Rendang Jus Reduction \u00b7 Turmeric Rice \u00b7 Heirloom Carrots Bergedil Rempah \u00b7 Crispy Shallots<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course Three \u00b7 Dessert<\/span>\r\n              <h4>Royal Albatross Kulfi <span class=\"tags\"><span class=\"tag veg\">V<\/span><\/span><\/h4>\r\n              <p class=\"ingredients\">Pandan Gula Melaka Kulfi on a Stick \u00b7 Caramelised Pineapple Segments \u00b7 Burnt Coconut Flakes \u00b7 Brown Butter Curry Leaf Crumbs \u00b7 Sea Salt<\/p>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <aside class=\"menu-side\">\r\n          <span class=\"badge\">\u25c6 Three-Course Lunch Adventure<\/span>\r\n          <h3>Tuesdays to Sunday \u00b7 10:30am to 3:00pm<\/h3>\r\n          <p>A modern Singaporean coastal menu, share-style on the teak. Designed by Chef Inderpal Singh, MasterChef Singapore S4.<\/p>\r\n          <div class=\"feat\">\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Welcome flute on arrival<\/span>\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Served at anchor in the Lazarus lagoon<\/span>\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Dietary requirements on request<\/span>\r\n          <\/div>\r\n        <\/aside>\r\n      <\/div>\r\n      <div class=\"menu-panel\" data-panel=\"veg\">\r\n        <div class=\"menu-items\">\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course One \u00b7 Starter<\/span>\r\n              <h4>Young Coconut &amp; Pomelo Ceviche <span class=\"tags\"><span class=\"tag veg\">V<\/span><\/span><\/h4>\r\n              <p class=\"ingredients\">Green Mango \u00b7 Assam Ponzu \u00b7 Curry Leaf Oil \u00b7 Puffed Rice<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course Two \u00b7 Main<\/span>\r\n              <h4>Lionsmane Rendang <span class=\"tags\"><span class=\"tag veg\">V<\/span><\/span><\/h4>\r\n              <p class=\"ingredients\">Rendang Jus Reduction \u00b7 Turmeric Rice \u00b7 Heirloom Carrots Bergedil Rempah \u00b7 Crispy Shallots<\/p>\r\n            <\/div>\r\n          <\/div>\r\n          <div class=\"menu-item course\">\r\n            <div>\r\n              <span class=\"course-no\">Course Three \u00b7 Dessert<\/span>\r\n              <h4>Royal Albatross Kulfi <span class=\"tags\"><span class=\"tag veg\">V<\/span><\/span><\/h4>\r\n              <p class=\"ingredients\">Pandan Gula Melaka Kulfi on a Stick \u00b7 Caramelised Pineapple Segments \u00b7 Burnt Coconut Flakes \u00b7 Brown Butter Curry Leaf Crumbs \u00b7 Sea Salt<\/p>\r\n            <\/div>\r\n          <\/div>\r\n        <\/div>\r\n        <aside class=\"menu-side\">\r\n          <span class=\"badge\">\u25c6 Three-Course Lunch Adventure<\/span>\r\n          <h3>Tuesdays to Sunday \u00b7 10:30am to 3:00pm<\/h3>\r\n          <p>A plant-forward expression of the same coastal-spice palette. Lionsmane mushroom in place of beef, coconut and pomelo in place of scallop.<\/p>\r\n          <div class=\"feat\">\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Welcome flute on arrival<\/span>\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Served at anchor in the Lazarus lagoon<\/span>\r\n            <span><svg viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.6\"><polyline points=\"20 6 9 17 4 12\"\/><\/svg> Dietary requirements on request<\/span>\r\n          <\/div>\r\n        <\/aside>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============ MEET THE CHEF ============ -->\r\n<!-- EDIT: chef portrait, headline, bio, and credentials below.\r\n     MEDIA: portrait should be a 3:4 vertical crop, ideally 1200\u00d71600 px. -->\r\n<section class=\"chef\" id=\"chef\">\r\n  <div class=\"container\">\r\n    <div class=\"chef-inner\">\r\n      <div class=\"chef-portrait reveal\">\r\n        <img decoding=\"async\" src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/ChatGPT-Image-Jun-16-2026-01_09_18-PM.png\" alt=\"Chef Inderpal Singh, Royal Albatross\" \/>\r\n      <\/div>\r\n      <div class=\"chef-text reveal\">\r\n        <span class=\"eyebrow\">Meet the Chef<\/span>\r\n        <h2><em>Asian fusion,<\/em> Singapore sea.<\/h2>\r\n        <p class=\"bio\">The Royal Albatross kitchen is led by Chef <em>Inderpal Singh<\/em>,the first non-Chinese winner of <em>MasterChef Singapore<\/em>, crowned in 2023 with a Season 4 finale score of 76.6\/90. His cooking traces back to a childhood in his family\u2019s gurdwara langar hall, watching elders coax flavour out of vast vats of dhal and sabji.<\/p>\r\n        <p class=\"bio\">Today he draws from across the spice routes, layering Indian heritage, Thai brightness and Singaporean coastal produce into share-style plates designed for the deck. Expect heritage favourites like his <em>Chaat Attack<\/em> and <em>Methi Tinga<\/em> reimagined for a long lunch at anchor.<\/p>\r\n        <div class=\"chef-creds\">\r\n          <span>MasterChef Singapore S4 Champion<\/span>\r\n          <span class=\"sep\">\u00b7<\/span>\r\n          <span>First non-Chinese winner<\/span>\r\n          <span class=\"sep\">\u00b7<\/span>\r\n          <span>Asian Fusion \u00b7 Spice Routes \u00b7 Singapore<\/span>\r\n        <\/div>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- WAVE DIVIDER: menu \u2192 route -->\r\n<div class=\"wave-sep to-route\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- ============ ROUTE ============ -->\r\n<!-- EDIT: ROUTE. The chart is hand-drawn SVG. Safe text edits: the hub names\r\n     (RWS \/ Ola Beach \/ Sentosa Cove \/ Marina South) and the island labels\r\n     (St John's \/ Kusu \/ Sisters'). Moving the island shapes means editing SVG\r\n     path coordinates, tell me and I'll reposition them for you. -->\r\n<section class=\"route section-pad\" id=\"route\">\r\n  <div class=\"container route-grid\">\r\n    <div class=\"reveal\">\r\n      <span class=\"eyebrow left\">Southern Islands<\/span>\r\n      <h2 class=\"h-section\" style=\"margin-top:1.4rem\">Four hubs. One lagoon. Your <em>full-day pass<\/em>.<\/h2>\r\n      <p class=\"lede\" style=\"margin-top:1.4rem\">Anchored in the sheltered C-shaped lagoon off Lazarus, the Royal Albatross becomes the centrepiece of a route that connects Sentosa, Marina South, and Singapore\u2019s most beautiful islands.<\/p>\r\n      <div class=\"rope-divider\">\r\n        <svg viewBox=\"0 0 200 12\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\"><path d=\"M0 6 Q 20 0 40 6 T 80 6 T 120 6 T 160 6 T 200 6\"\/><\/svg>\r\n        <svg class=\"knot\" width=\"22\" height=\"22\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.4\"><circle cx=\"12\" cy=\"12\" r=\"9\"\/><path d=\"M7 7l10 10M17 7L7 17\"\/><\/svg>\r\n        <svg viewBox=\"0 0 200 12\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"1.3\"><path d=\"M0 6 Q 20 0 40 6 T 80 6 T 120 6 T 160 6 T 200 6\"\/><\/svg>\r\n      <\/div>\r\n      <div class=\"route-legend\">\r\n        <div class=\"key\"><span class=\"dot hub\"><\/span> Pickup hub<\/div>\r\n        <div class=\"key\"><span class=\"dot ship\"><\/span> Royal Albatross anchorage<\/div>\r\n        <div class=\"key\"><span class=\"dot island\"><\/span> Hop-on hop-off island<\/div>\r\n      <\/div>\r\n    <\/div>\r\n\r\n    <div class=\"route-photo reveal\">\r\n      <div class=\"img\"><\/div>\r\n      <div class=\"route-map-overlay\">\r\n        <svg viewBox=\"0 0 640 600\" id=\"routeChart\" aria-label=\"Southern Islands nautical chart\">\r\n          <defs>\r\n            <pattern id=\"grid\" width=\"48\" height=\"48\" patternUnits=\"userSpaceOnUse\">\r\n              <path d=\"M 48 0 L 0 0 0 48\" fill=\"none\" stroke=\"#c9a875\" stroke-width=\".2\" opacity=\".22\"\/>\r\n            <\/pattern>\r\n            <linearGradient id=\"lagoonG\" x1=\"0\" y1=\"0\" x2=\"0\" y2=\"1\">\r\n              <stop offset=\"0%\" stop-color=\"#1f4a72\" stop-opacity=\".95\"\/>\r\n              <stop offset=\"100%\" stop-color=\"#0f2f50\" stop-opacity=\".9\"\/>\r\n            <\/linearGradient>\r\n            <radialGradient id=\"albGlow\" cx=\"50%\" cy=\"50%\" r=\"50%\">\r\n              <stop offset=\"0%\" stop-color=\"#e8945a\" stop-opacity=\".25\"\/>\r\n              <stop offset=\"100%\" stop-color=\"#e8945a\" stop-opacity=\"0\"\/>\r\n            <\/radialGradient>\r\n            <filter id=\"shipShadow\" x=\"-40%\" y=\"-40%\" width=\"180%\" height=\"180%\">\r\n              <feDropShadow dx=\"0\" dy=\"3\" stdDeviation=\"3.5\" flood-color=\"#000\" flood-opacity=\".55\"\/>\r\n            <\/filter>\r\n          <\/defs>\r\n          <rect width=\"640\" height=\"600\" fill=\"rgba(6,15,28,.82)\"\/>\r\n          <rect width=\"640\" height=\"600\" fill=\"url(#grid)\"\/>\r\n          <g stroke=\"rgba(201,168,117,.55)\" stroke-width=\".8\" fill=\"none\">\r\n            <path d=\"M14 26 L14 14 L26 14\"\/>\r\n            <path d=\"M614 26 L614 14 L600 14\"\/>\r\n            <path d=\"M14 574 L14 586 L26 586\"\/>\r\n            <path d=\"M614 574 L614 586 L600 586\"\/>\r\n          <\/g>\r\n          <text x=\"320\" y=\"40\" font-size=\"9\" letter-spacing=\"6\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.65)\" font-family=\"Cormorant Garamond, serif\">CHART \u00b7 SOUTHERN ISLANDS \u00b7 SINGAPORE<\/text>\r\n          <line x1=\"225\" y1=\"52\" x2=\"295\" y2=\"52\" stroke=\"rgba(201,168,117,.4)\" stroke-width=\".5\"\/>\r\n          <line x1=\"345\" y1=\"52\" x2=\"415\" y2=\"52\" stroke=\"rgba(201,168,117,.4)\" stroke-width=\".5\"\/>\r\n          <circle cx=\"320\" cy=\"52\" r=\"2\" fill=\"rgba(201,168,117,.7)\"\/>\r\n          <text x=\"22\" y=\"82\" font-size=\"7\" letter-spacing=\"1\" fill=\"rgba(201,168,117,.45)\" font-family=\"Cormorant Garamond, serif\">1\u00b016\u2032N<\/text>\r\n          <text x=\"22\" y=\"570\" font-size=\"7\" letter-spacing=\"1\" fill=\"rgba(201,168,117,.45)\" font-family=\"Cormorant Garamond, serif\">1\u00b011\u2032N<\/text>\r\n          <text x=\"618\" y=\"82\" font-size=\"7\" letter-spacing=\"1\" text-anchor=\"end\" fill=\"rgba(201,168,117,.45)\" font-family=\"Cormorant Garamond, serif\">103\u00b052\u2032E<\/text>\r\n          <text x=\"618\" y=\"570\" font-size=\"7\" letter-spacing=\"1\" text-anchor=\"end\" fill=\"rgba(201,168,117,.45)\" font-family=\"Cormorant Garamond, serif\">103\u00b050\u2032E<\/text>\r\n          <text x=\"320\" y=\"85\" font-size=\"8\" letter-spacing=\"7\" text-anchor=\"middle\" fill=\"rgba(158,197,200,.5)\" font-family=\"Cormorant Garamond, serif\">SENTOSA \u00b7 MARINA SOUTH<\/text>\r\n          <path d=\"M40 175 Q200 158 320 165 Q450 173 600 165\" stroke=\"rgba(201,168,117,.32)\" stroke-width=\".8\" fill=\"none\"\/>\r\n          <g>\r\n            <text x=\"95\" y=\"110\" font-size=\"6.5\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HUB \u00b7 I<\/text>\r\n            <text x=\"95\" y=\"134\" font-size=\"13\" text-anchor=\"middle\" fill=\"#e6c389\" font-family=\"Cormorant Garamond, serif\">RWS<\/text>\r\n            <line x1=\"95\" y1=\"143\" x2=\"95\" y2=\"178\" stroke=\"rgba(201,168,117,.45)\" stroke-width=\".6\"\/>\r\n            <circle cx=\"95\" cy=\"185\" r=\"6.5\" fill=\"#e6c389\"\/>\r\n            <circle cx=\"95\" cy=\"185\" r=\"15\" fill=\"none\" stroke=\"#e6c389\" opacity=\".4\"><animate attributeName=\"r\" values=\"7;24;7\" dur=\"2.8s\" repeatCount=\"indefinite\"\/><animate attributeName=\"opacity\" values=\".75;0;.75\" dur=\"2.8s\" repeatCount=\"indefinite\"\/><\/circle>\r\n          <\/g>\r\n          <g>\r\n            <text x=\"245\" y=\"110\" font-size=\"6.5\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HUB \u00b7 II<\/text>\r\n            <text x=\"245\" y=\"134\" font-size=\"13\" text-anchor=\"middle\" fill=\"#e6c389\" font-family=\"Cormorant Garamond, serif\">Ola Beach<\/text>\r\n            <line x1=\"245\" y1=\"143\" x2=\"245\" y2=\"178\" stroke=\"rgba(201,168,117,.45)\" stroke-width=\".6\"\/>\r\n            <circle cx=\"245\" cy=\"185\" r=\"6\" fill=\"#e6c389\"\/>\r\n          <\/g>\r\n          <g>\r\n            <text x=\"395\" y=\"110\" font-size=\"6.5\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HUB \u00b7 III<\/text>\r\n            <text x=\"395\" y=\"134\" font-size=\"13\" text-anchor=\"middle\" fill=\"#e6c389\" font-family=\"Cormorant Garamond, serif\">Sentosa Cove<\/text>\r\n            <line x1=\"395\" y1=\"143\" x2=\"395\" y2=\"178\" stroke=\"rgba(201,168,117,.45)\" stroke-width=\".6\"\/>\r\n            <circle cx=\"395\" cy=\"185\" r=\"6\" fill=\"#e6c389\"\/>\r\n          <\/g>\r\n          <g>\r\n            <text x=\"545\" y=\"110\" font-size=\"6.5\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HUB \u00b7 IV<\/text>\r\n            <text x=\"545\" y=\"134\" font-size=\"13\" text-anchor=\"middle\" fill=\"#e6c389\" font-family=\"Cormorant Garamond, serif\">Marina South<\/text>\r\n            <line x1=\"545\" y1=\"143\" x2=\"545\" y2=\"178\" stroke=\"rgba(201,168,117,.45)\" stroke-width=\".6\"\/>\r\n            <circle cx=\"545\" cy=\"185\" r=\"6\" fill=\"#e6c389\"\/>\r\n          <\/g>\r\n          <g fill=\"none\" stroke=\"#c9a875\" stroke-width=\"1.2\" stroke-dasharray=\"3 5\" opacity=\".55\">\r\n            <path id=\"r1\" d=\"M95 185 C 150 290, 250 370, 320 410\"\/>\r\n            <path id=\"r2\" d=\"M245 185 C 270 290, 305 370, 320 410\"\/>\r\n            <path id=\"r3\" d=\"M395 185 C 380 290, 345 370, 320 410\"\/>\r\n            <path id=\"r4\" d=\"M545 185 C 475 300, 390 380, 320 410\"\/>\r\n          <\/g>\r\n          <!-- Speedboats are created & animated by JS (see #routeChart script):\r\n               each craft picks a RANDOM route, travels it bow-first, fades out,\r\n               then respawns on another random route. -->\r\n          <!-- Lazarus Island landmass (crescent embracing the anchorage lagoon) -->\r\n          <path d=\"M252 432 Q246 406 276 399 Q302 393 322 410 Q341 422 361 407 Q387 394 412 402 Q443 411 444 436 Q447 474 410 493 Q350 513 289 497 Q250 484 252 432 Z\" fill=\"url(#lagoonG)\" stroke=\"#9ec5c8\" stroke-width=\".8\" opacity=\".95\"\/>\r\n          <path d=\"M272 442 Q270 424 292 418 Q312 414 326 426\" fill=\"none\" stroke=\"rgba(158,197,200,.32)\" stroke-width=\".5\" stroke-dasharray=\"1 2\"\/>\r\n          <path d=\"M362 480 Q402 478 421 452\" fill=\"none\" stroke=\"rgba(158,197,200,.28)\" stroke-width=\".5\" stroke-dasharray=\"1 2\"\/>\r\n          <text x=\"372\" y=\"462\" font-size=\"8\" letter-spacing=\"3\" text-anchor=\"middle\" fill=\"rgba(158,197,200,.6)\" font-family=\"Cormorant Garamond, serif\">LAZARUS ISLAND<\/text>\r\n\r\n          <!-- Royal Albatross, anchored in the Lazarus lagoon -->\r\n          <ellipse cx=\"330\" cy=\"414\" rx=\"82\" ry=\"15\" fill=\"url(#albGlow)\"\/>\r\n          <circle cx=\"330\" cy=\"408\" r=\"30\" fill=\"none\" stroke=\"#e8945a\" stroke-width=\".7\" opacity=\".5\"><animate attributeName=\"r\" values=\"20;44;20\" dur=\"3.8s\" repeatCount=\"indefinite\"\/><animate attributeName=\"opacity\" values=\".6;0;.6\" dur=\"3.8s\" repeatCount=\"indefinite\"\/><\/circle>\r\n          <!-- MEDIA: tall-ship anchored on the chart. REPLACE both href values with the Media Library URL on WordPress. Adjust width\/height to resize. -->\r\n          <image href=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/05\/concert.png\" xlink:href=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/05\/concert.png\" x=\"255\" y=\"346\" width=\"150\" height=\"75\" preserveAspectRatio=\"xMidYMid meet\" filter=\"url(#shipShadow)\"\/>\r\n          <text x=\"330\" y=\"340\" font-size=\"12.5\" text-anchor=\"middle\" font-style=\"italic\" fill=\"#e8945a\" font-family=\"Cormorant Garamond, serif\">Royal Albatross<\/text>\r\n          <text x=\"330\" y=\"434\" font-size=\"6.5\" letter-spacing=\"3\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.65)\" font-family=\"Inter, sans-serif\">\u25c6 ANCHORAGE \u25c6<\/text>\r\n          <!-- Animated hop-on routes: Lazarus anchorage \u2192 islands -->\r\n          <g fill=\"none\" stroke=\"#9ec5c8\" stroke-width=\".7\" stroke-dasharray=\"3 5\" opacity=\".42\">\r\n            <path id=\"hop1\" d=\"M322 412 Q292 458 262 504\"\/>\r\n            <path id=\"hop2\" d=\"M340 405 Q450 414 534 444\"\/>\r\n            <path id=\"hop3\" d=\"M312 414 Q236 470 152 520\"\/>\r\n          <\/g>\r\n          <!-- Ship <-> Lazarus transfer route -->\r\n          <path id=\"transfer\" d=\"M330 404 Q340 430 350 451\" fill=\"none\" stroke=\"#9ec5c8\" stroke-width=\".7\" stroke-dasharray=\"2 3\" opacity=\".4\"\/>\r\n          <!-- Causeway: Lazarus \u2192 St John's -->\r\n          <path d=\"M295 496 L280 506\" stroke=\"rgba(158,197,200,.5)\" stroke-width=\"1.3\" stroke-dasharray=\"2 2\"\/>\r\n          <!-- St John's Island (south-west of Lazarus) -->\r\n          <g>\r\n            <path d=\"M217 516 Q210 498 236 491 Q264 485 290 495 Q312 504 305 524 Q294 545 260 547 Q224 546 217 516 Z\" fill=\"rgba(78,135,142,.5)\" stroke=\"rgba(158,197,200,.6)\" stroke-width=\".7\"\/>\r\n            <path d=\"M233 516 Q229 503 249 500 Q269 497 285 504 Q297 511 285 519 Q267 525 251 521 Q237 521 233 516 Z\" fill=\"rgba(78,135,142,.3)\" stroke=\"rgba(158,197,200,.3)\" stroke-width=\".4\" stroke-dasharray=\"1 2\"\/>\r\n            <circle cx=\"260\" cy=\"514\" r=\"2\" fill=\"#e6c389\"\/>\r\n            <circle cx=\"260\" cy=\"514\" r=\"5\" fill=\"none\" stroke=\"#e6c389\" stroke-width=\".4\" opacity=\".5\"\/>\r\n            <text x=\"260\" y=\"566\" font-size=\"9.5\" text-anchor=\"middle\" fill=\"rgba(158,197,200,.95)\" font-family=\"Cormorant Garamond, serif\">St John\u2019s Island<\/text>\r\n            <text x=\"260\" y=\"577\" font-size=\"6\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HOP-ON \u00b7 I<\/text>\r\n          <\/g>\r\n          <!-- Kusu Island (east) -->\r\n          <g>\r\n            <path d=\"M512 446 Q508 428 532 422 Q556 417 572 429 Q584 441 575 458 Q562 473 537 471 Q516 467 512 446 Z\" fill=\"rgba(78,135,142,.5)\" stroke=\"rgba(158,197,200,.6)\" stroke-width=\".7\"\/>\r\n            <path d=\"M526 446 Q523 434 542 431 Q560 428 570 437 Q576 445 564 451 Q548 456 536 452 Q528 451 526 446 Z\" fill=\"rgba(78,135,142,.3)\" stroke=\"rgba(158,197,200,.3)\" stroke-width=\".4\" stroke-dasharray=\"1 2\"\/>\r\n            <circle cx=\"544\" cy=\"446\" r=\"2\" fill=\"#e6c389\"\/>\r\n            <circle cx=\"544\" cy=\"446\" r=\"5\" fill=\"none\" stroke=\"#e6c389\" stroke-width=\".4\" opacity=\".5\"\/>\r\n            <text x=\"544\" y=\"492\" font-size=\"9.5\" text-anchor=\"middle\" fill=\"rgba(158,197,200,.95)\" font-family=\"Cormorant Garamond, serif\">Kusu Island<\/text>\r\n            <text x=\"544\" y=\"503\" font-size=\"6\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HOP-ON \u00b7 II<\/text>\r\n          <\/g>\r\n          <!-- Sisters' Islands (south-west, two isles) -->\r\n          <g>\r\n            <path d=\"M118 524 Q112 512 130 508 Q146 505 158 513 Q166 522 157 532 Q144 541 128 538 Q118 535 118 524 Z\" fill=\"rgba(78,135,142,.5)\" stroke=\"rgba(158,197,200,.6)\" stroke-width=\".7\"\/>\r\n            <path d=\"M166 540 Q162 531 176 528 Q190 526 200 533 Q206 540 195 547 Q182 552 170 548 Q166 546 166 540 Z\" fill=\"rgba(78,135,142,.5)\" stroke=\"rgba(158,197,200,.6)\" stroke-width=\".7\"\/>\r\n            <line x1=\"158\" y1=\"522\" x2=\"170\" y2=\"536\" stroke=\"rgba(158,197,200,.3)\" stroke-width=\".4\" stroke-dasharray=\"1 1.5\"\/>\r\n            <circle cx=\"138\" cy=\"522\" r=\"1.8\" fill=\"#e6c389\"\/>\r\n            <circle cx=\"184\" cy=\"538\" r=\"1.8\" fill=\"#e6c389\"\/>\r\n            <text x=\"150\" y=\"566\" font-size=\"9.5\" text-anchor=\"middle\" fill=\"rgba(158,197,200,.95)\" font-family=\"Cormorant Garamond, serif\">Sisters\u2019 Islands<\/text>\r\n            <text x=\"150\" y=\"577\" font-size=\"6\" letter-spacing=\"2.5\" text-anchor=\"middle\" fill=\"rgba(201,168,117,.55)\" font-family=\"Inter, sans-serif\">HOP-ON \u00b7 III<\/text>\r\n          <\/g>\r\n          <g transform=\"translate(585 540)\" opacity=\".75\">\r\n            <circle r=\"26\" fill=\"rgba(6,15,28,.55)\" stroke=\"#c9a875\" stroke-width=\".5\"\/>\r\n            <circle r=\"20\" fill=\"none\" stroke=\"#c9a875\" stroke-width=\".3\" opacity=\".7\"\/>\r\n            <g stroke=\"#c9a875\" stroke-width=\".5\" opacity=\".55\">\r\n              <line x1=\"0\" y1=\"-26\" x2=\"0\" y2=\"-22\"\/>\r\n              <line x1=\"13\" y1=\"-22.5\" x2=\"11\" y2=\"-19\"\/>\r\n              <line x1=\"22.5\" y1=\"-13\" x2=\"19\" y2=\"-11\"\/>\r\n              <line x1=\"26\" y1=\"0\" x2=\"22\" y2=\"0\"\/>\r\n              <line x1=\"22.5\" y1=\"13\" x2=\"19\" y2=\"11\"\/>\r\n              <line x1=\"13\" y1=\"22.5\" x2=\"11\" y2=\"19\"\/>\r\n              <line x1=\"0\" y1=\"26\" x2=\"0\" y2=\"22\"\/>\r\n              <line x1=\"-13\" y1=\"22.5\" x2=\"-11\" y2=\"19\"\/>\r\n              <line x1=\"-22.5\" y1=\"13\" x2=\"-19\" y2=\"11\"\/>\r\n              <line x1=\"-26\" y1=\"0\" x2=\"-22\" y2=\"0\"\/>\r\n              <line x1=\"-22.5\" y1=\"-13\" x2=\"-19\" y2=\"-11\"\/>\r\n              <line x1=\"-13\" y1=\"-22.5\" x2=\"-11\" y2=\"-19\"\/>\r\n            <\/g>\r\n            <polygon points=\"0,-20 4,2 0,5 -4,2\" fill=\"#e8945a\"\/>\r\n            <polygon points=\"0,20 4,-2 0,-5 -4,-2\" fill=\"#c9a875\" opacity=\".55\"\/>\r\n            <text y=\"-30\" font-size=\"8\" text-anchor=\"middle\" fill=\"#c9a875\" font-family=\"Cormorant Garamond, serif\">N<\/text>\r\n          <\/g>\r\n          <g transform=\"translate(40 555)\" opacity=\".55\">\r\n            <line x1=\"0\" y1=\"0\" x2=\"80\" y2=\"0\" stroke=\"#c9a875\" stroke-width=\".9\"\/>\r\n            <line x1=\"0\" y1=\"-4\" x2=\"0\" y2=\"4\" stroke=\"#c9a875\" stroke-width=\".9\"\/>\r\n            <line x1=\"40\" y1=\"-2\" x2=\"40\" y2=\"2\" stroke=\"#c9a875\" stroke-width=\".6\"\/>\r\n            <line x1=\"80\" y1=\"-4\" x2=\"80\" y2=\"4\" stroke=\"#c9a875\" stroke-width=\".9\"\/>\r\n            <text x=\"0\" y=\"14\" font-size=\"7\" fill=\"#c9a875\" letter-spacing=\"1\" font-family=\"Cormorant Garamond, serif\">0<\/text>\r\n            <text x=\"40\" y=\"14\" font-size=\"7\" fill=\"#c9a875\" letter-spacing=\"1\" text-anchor=\"middle\" font-family=\"Cormorant Garamond, serif\">0.5<\/text>\r\n            <text x=\"80\" y=\"14\" font-size=\"7\" fill=\"#c9a875\" letter-spacing=\"1\" text-anchor=\"end\" font-family=\"Cormorant Garamond, serif\">1 NM<\/text>\r\n          <\/g>\r\n        <\/svg>\r\n      <\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- WAVE DIVIDER: route \u2192 pillars -->\r\n<div class=\"wave-sep to-pillars\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- ============ PILLARS ============ -->\r\n<section class=\"pillars section-pad\" id=\"why\">\r\n  <div class=\"container\">\r\n    <div class=\"reveal\" style=\"text-align:center;max-width:720px;margin:0 auto\">\r\n      <span class=\"eyebrow\">Why this experience<\/span>\r\n      <h2 class=\"h-section\" style=\"margin-top:1.4rem\">A Singapore experience in a <em>class of its own<\/em>.<\/h2>\r\n      <p class=\"lede\" style=\"margin:1.4rem auto 0\">Cruises exist. Beach clubs exist. Island ferries exist. Nothing else combines all three into one premium, integrated day at sea.<\/p>\r\n    <\/div>\r\n    <div class=\"pillars-grid\">\r\n      <div class=\"pillar reveal\"><span class=\"num\">i.<\/span><h3>Asia\u2019s only luxury tall ship<\/h3><p>Four-masted, fully rigged, multi-award-winning. There is no other vessel like the Royal Albatross sailing in this region.<\/p><\/div>\r\n      <div class=\"pillar reveal\"><span class=\"num\">ii.<\/span><h3>Singapore\u2019s first hop-on hop-off<\/h3><p>Five premium speedboats. Four hubs. One unlimited day pass, included with every Albatross booking, no upsell.<\/p><\/div>\r\n      <div class=\"pillar reveal\"><span class=\"num\">iii.<\/span><h3>Anchored in the Lazarus lagoon<\/h3><p>The sheltered C-shaped lagoon offers a calm, photogenic anchorage, a natural luxury setting only minutes from Sentosa.<\/p><\/div>\r\n      <div class=\"pillar reveal\"><span class=\"num\">iv.<\/span><h3>Dining designed for the deck<\/h3><p>A modern Singaporean coastal lunch designed by Chef Inderpal Singh, served daily at anchor in the Lazarus lagoon.<\/p><\/div>\r\n      <div class=\"pillar reveal\"><span class=\"num\">v.<\/span><h3>Premium, curated arrivals<\/h3><p>Booking is paced to preserve flow on deck, never overbooked, never rushed. The opposite of a tourist queue.<\/p><\/div>\r\n      <div class=\"pillar reveal\"><span class=\"num\">vi.<\/span><h3>Designed to be cinematic<\/h3><p>Speedboat arrival, full-rigged tall ship, open horizon, white sand beaches. One of the most visually shareable experiences in Singapore.<\/p><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============ AWARDS ============ -->\r\n<section class=\"awards\">\r\n  <div class=\"container awards-inner\">\r\n    <div class=\"awards-label\">\r\n      <div>Awarded By<\/div>\r\n      <div class=\"awards-tag\">Winner of 35+ pinnacle industry awards in Singapore &amp; internationally<\/div>\r\n    <\/div>\r\n    <!-- MEDIA: real awards row (awards-row.png). Replace src with Media Library URL on WordPress. -->\r\n    <img decoding=\"async\" src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/05\/awards.png\" alt=\"Awards: Singapore Tourism Awards 2022, Asia's Finest Dinner Cruise 2025, Marketing Excellence Award 2023, World Luxury Travel Awards 2021\u20132024, TripAdvisor Certificate of Excellence, Best of the Best 2022, Travelers' Choice 2024 &#038; 2020\u20132023\" style=\"flex:1;min-width:280px;max-width:1040px;height:auto\" \/>\r\n  <\/div>\r\n<\/section>\r\n\r\n\r\n<!-- WAVE DIVIDER: awards \u2192 cta -->\r\n<div class=\"wave-sep to-cta\" aria-hidden=\"true\">\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-back\"><path d=\"M0,90 C200,40 400,120 720,80 C1040,40 1240,120 1440,70 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-mid\"><path d=\"M0,100 C220,60 460,130 720,95 C980,60 1220,130 1440,90 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\" class=\"w-front\"><path d=\"M0,115 C240,80 480,140 720,110 C960,80 1200,140 1440,110 L1440,140 L0,140 Z\"\/><\/svg>\r\n  <svg viewBox=\"0 0 1440 140\" preserveAspectRatio=\"none\"><path class=\"gold-line\" d=\"M0,82 C200,32 400,112 720,72 C1040,32 1240,112 1440,62\"\/><\/svg>\r\n<\/div>\r\n\r\n<!-- ============ CTA ============ -->\r\n<section class=\"cta\" id=\"cta\">\r\n  <div class=\"cta-poster\"><\/div>\r\n  <!-- MEDIA: CTA background video, currently free Coverr stock (sunset).\r\n       Replace the <source> URL(s) with your own clip or a Media Library URL.\r\n       You can delete the extra <source> lines and keep just one. -->\r\n  <video class=\"cta-video\" autoplay muted loop playsinline preload=\"metadata\" poster=\"https:\/\/images.unsplash.com\/photo-1437385545573-fcf5b4b7fb57?w=2400&#038;q=85&#038;auto=format&#038;fit=crop\">\r\n    <source src=\"https:\/\/cdn.coverr.co\/videos\/coverr-cloudy-sunset-near-the-coastline-7150\/1080p.mp4\" type=\"video\/mp4\"> <!-- REPLACE with your video URL -->\r\n    <source src=\"https:\/\/cdn.coverr.co\/videos\/coverr-cloudy-sunset-near-the-coastline-7150\/720p.mp4\" type=\"video\/mp4\">\r\n    <source src=\"https:\/\/cdn.coverr.co\/videos\/coverr-cloudy-sunset-near-the-coastline-7150\/360p.mp4\" type=\"video\/mp4\">\r\n  <\/video>\r\n  <div class=\"cta-overlay\"><\/div>\r\n  <div class=\"cta-content\">\r\n    <span class=\"eyebrow\">Reserve your sailing<\/span>\r\n    <h2 class=\"h-display\" style=\"margin-top:1.8rem\">Spend a day at sea<br\/><em>the way Singapore should be seen.<\/em><\/h2>\r\n    <p class=\"lede\">Choose your hub. Pick your sitting. Bring whoever you\u2019d like to spend a slow afternoon at anchor with.<\/p>\r\n    <div class=\"cta-actions\">\r\n      <a href=\"https:\/\/tallship.ticketupp.com\/products\/Albatross-Island-Restaurant#ticket-types\" class=\"btn solid\">Book a Sailing <span class=\"arrow\">\u2192<\/span><\/a>\r\n      <a href=\"https:\/\/www.tallship.com.sg\/contact-us\/\" class=\"btn\">Plan a Private Charter<\/a>\r\n    <\/div>\r\n    <p style=\"margin-top:2.5rem;font-size:.74rem;letter-spacing:.24em;text-transform:uppercase;color:rgba(251,247,238,.6)\">Operating six days\/week \u00b7 closed Mondays \u00b7 Sunset cruises depart nightly from Resorts World Sentosa<\/p>\r\n  <\/div>\r\n<\/section>\r\n\r\n<!-- ============ VIDEO LIGHTBOX (click any journey card to open) ============ -->\r\n<div class=\"vid-lightbox\" id=\"vidLightbox\" role=\"dialog\" aria-modal=\"true\" aria-hidden=\"true\" aria-label=\"Video player\">\r\n  <button class=\"vid-lightbox-close\" type=\"button\" aria-label=\"Close video\">&times;<\/button>\r\n  <video class=\"vid-lightbox-video\" controls playsinline preload=\"metadata\"><\/video>\r\n  <div class=\"vid-lightbox-caption\"><\/div>\r\n<\/div>\r\n\r\n<!-- ============ FOOTER ============ -->\r\n<!-- EDIT: FOOTER, contact email\/phone, location, links and copyright text below. -->\r\n<footer>\r\n  <div class=\"container\">\r\n    <div class=\"foot-grid\">\r\n      <div class=\"foot-col\">\r\n        <!-- MEDIA: footer logo (RA-logo.png). Replace src with Media Library URL on WordPress. -->\r\n        <a href=\"https:\/\/tallship.com.sg\" class=\"brand\" style=\"margin-bottom:1.2rem;display:inline-block\" aria-label=\"Royal Albatross, main site\">\r\n          <img decoding=\"async\" src=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png\" alt=\"Royal Albatross\" style=\"height:40px;width:auto;display:block\" \/>\r\n        <\/a>\r\n        <p style=\"font-size:.88rem;color:rgba(251,247,238,.65);line-height:1.6;max-width:42ch\">Asia\u2019s only luxury tall ship, now an anchored island restaurant off Lazarus, with unlimited Southern Islands hop-on hop-off for every guest.<\/p>\r\n      <\/div>\r\n      <!-- EDIT: FOOTER LINKS. These point to the main site (tallship.com.sg).\r\n           Refine each href to the exact page URL when you have them. -->\r\n      <div class=\"foot-col\"><h5>Experiences<\/h5><ul><li><a href=\"#menu\">Albatross Island Restaurant<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Sunset Cruise (Resorts World Sentosa)<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Hop-on Hop-off Pass<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\/contact-us\/\">Private Charter<\/a><\/li><\/ul><\/div>\r\n      <div class=\"foot-col\"><h5>The Fleet<\/h5><ul><li><a href=\"https:\/\/tallship.com.sg\">Royal Albatross<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Albatross Speedboats<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Awards &amp; press<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Sustainability<\/a><\/li><\/ul><\/div>\r\n      <div class=\"foot-col\"><h5>Contact<\/h5><ul><li><a href=\"mailto:reservations@tallship.com.sg\">reservations@tallship.com.sg<\/a><\/li><li><a href=\"tel:+6593507475\">+65 9350 7475<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">8 Sentosa Gateway, Singapore<\/a><\/li><li><a href=\"https:\/\/tallship.com.sg\">Press &amp; partnerships<\/a><\/li><\/ul><\/div>\r\n    <\/div>\r\n    <div class=\"foot-bottom\">\r\n      <div>\u00a9 2026 Royal Albatross \u00b7 Tall Ship Adventures Pte Ltd \u00b7 All rights reserved.<\/div>\r\n      <div class=\"foot-coords\"><span>1\u00b013\u2032N 103\u00b050\u2032E<\/span><span>Lazarus Island<\/span><span>Singapore<\/span><\/div>\r\n    <\/div>\r\n  <\/div>\r\n<\/footer>\r\n\r\n\r\n\r\n<a class=\"btn\" href=\"#cta\">View experiences<\/a>\r\n<\/div>\r\n\r\n<script src=\"data:application\/javascript;charset=utf-8;base64,Ci8vIFNwbGFzaAp3aW5kb3cuYWRkRXZlbnRMaXN0ZW5lcignbG9hZCcsICgpID0+IHsgc2V0VGltZW91dCgoKSA9PiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnc3BsYXNoJykuY2xhc3NMaXN0LmFkZCgnZ29uZScpLCA2MDApOyB9KTsKCi8vIFJlbGlhYmxlIGluLXBhZ2UgYW5jaG9yIHNjcm9sbGluZyAob2Zmc2V0IGZvciB0aGUgZml4ZWQgbmF2KQooZnVuY3Rpb24oKXsKICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCdhW2hyZWZePSIjIl0nKS5mb3JFYWNoKGZ1bmN0aW9uKGEpewogICAgYS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKGUpewogICAgICB2YXIgaHJlZiA9IHRoaXMuZ2V0QXR0cmlidXRlKCdocmVmJyk7CiAgICAgIGlmICghaHJlZiB8fCBocmVmID09PSAnIycpIHJldHVybjsKICAgICAgdmFyIHRhcmdldCA9IGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoaHJlZik7CiAgICAgIGlmICghdGFyZ2V0KSByZXR1cm47CiAgICAgIGUucHJldmVudERlZmF1bHQoKTsKICAgICAgdmFyIHRvcCA9IHRhcmdldC5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKS50b3AgKyB3aW5kb3cuc2Nyb2xsWSAtIDgwOwogICAgICB3aW5kb3cuc2Nyb2xsVG8oe3RvcDogdG9wLCBiZWhhdmlvcjogJ3Ntb290aCd9KTsKICAgICAgaWYgKGhpc3RvcnkucmVwbGFjZVN0YXRlKSBoaXN0b3J5LnJlcGxhY2VTdGF0ZShudWxsLCAnJywgaHJlZik7CiAgICB9KTsKICB9KTsKfSkoKTsKCgovLyBIZXJvIGtleS12aXN1YWw6IGZvcmNlIG11dGUgb24gbG9hZCAocmVxdWlyZWQgZm9yIHJlbGlhYmxlIGF1dG9wbGF5KSBhbmQga2ljayBvZmYgcGxheWJhY2sKKGZ1bmN0aW9uKCl7CiAgY29uc3QgaHYgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnaGVyb1ZpZGVvJyk7CiAgaWYgKCFodikgcmV0dXJuOwogIGh2Lm11dGVkID0gdHJ1ZTsKICBodi5kZWZhdWx0TXV0ZWQgPSB0cnVlOwogIGh2LnNldEF0dHJpYnV0ZSgnbXV0ZWQnLCcnKTsKICBjb25zdCB0cnlQbGF5ID0gKCkgPT4geyBjb25zdCBwID0gaHYucGxheSgpOyBpZiAocCAmJiBwLmNhdGNoKSBwLmNhdGNoKCgpPT57fSk7IH07CiAgaWYgKGh2LnJlYWR5U3RhdGUgPj0gMikgdHJ5UGxheSgpOyBlbHNlIGh2LmFkZEV2ZW50TGlzdGVuZXIoJ2xvYWRlZGRhdGEnLCB0cnlQbGF5LCB7b25jZTp0cnVlfSk7Cn0pKCk7CgovLyBOQVYgc2Nyb2xsIHN0YXRlCmNvbnN0IG5hdiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCduYXYnKTsKY29uc3Qgb25TY3JvbGwgPSAoKSA9PiB7IGlmICh3aW5kb3cuc2Nyb2xsWSA+IDQwKSBuYXYuY2xhc3NMaXN0LmFkZCgnc2Nyb2xsZWQnKTsgZWxzZSBuYXYuY2xhc3NMaXN0LnJlbW92ZSgnc2Nyb2xsZWQnKTsgfTsKd2luZG93LmFkZEV2ZW50TGlzdGVuZXIoJ3Njcm9sbCcsIG9uU2Nyb2xsLCB7cGFzc2l2ZTp0cnVlfSk7Cm9uU2Nyb2xsKCk7CgovLyBNb2JpbGUgaGFtYnVyZ2VyIG1lbnUKY29uc3QgbmF2QnVyZ2VyID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25hdkJ1cmdlcicpOwpjb25zdCBuYXZPdmVybGF5ID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ25hdk92ZXJsYXknKTsKY29uc3QgY2xvc2VOYXYgPSAoKSA9PiB7IG5hdi5jbGFzc0xpc3QucmVtb3ZlKCduYXYtb3BlbicpOyBpZihuYXZCdXJnZXIpIG5hdkJ1cmdlci5zZXRBdHRyaWJ1dGUoJ2FyaWEtZXhwYW5kZWQnLCdmYWxzZScpOyB9OwppZiAobmF2QnVyZ2VyKSB7CiAgbmF2QnVyZ2VyLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gewogICAgY29uc3Qgb3BlbiA9IG5hdi5jbGFzc0xpc3QudG9nZ2xlKCduYXYtb3BlbicpOwogICAgbmF2QnVyZ2VyLnNldEF0dHJpYnV0ZSgnYXJpYS1leHBhbmRlZCcsIG9wZW4gPyAndHJ1ZScgOiAnZmFsc2UnKTsKICB9KTsKICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcubmF2LWxpbmtzIGEnKS5mb3JFYWNoKGEgPT4gYS5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGNsb3NlTmF2KSk7CiAgaWYgKG5hdk92ZXJsYXkpIG5hdk92ZXJsYXkuYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCBjbG9zZU5hdik7Cn0KCi8vIFJldmVhbCBvbiBzY3JvbGwKY29uc3QgaW8gPSBuZXcgSW50ZXJzZWN0aW9uT2JzZXJ2ZXIoKGVudHJpZXMpPT57CiAgZW50cmllcy5mb3JFYWNoKGU9PnsgaWYoZS5pc0ludGVyc2VjdGluZyl7IGUudGFyZ2V0LmNsYXNzTGlzdC5hZGQoJ2luJyk7IGlvLnVub2JzZXJ2ZShlLnRhcmdldCk7IH0gfSk7Cn0se3RocmVzaG9sZDouMTIsIHJvb3RNYXJnaW46JzBweCAwcHggLTglIDBweCd9KTsKZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLnJldmVhbCcpLmZvckVhY2goZWw9PmlvLm9ic2VydmUoZWwpKTsKCi8vIE1lbnUgdGFicwpkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcubWVudS10YWInKS5mb3JFYWNoKHQ9PnsKICB0LmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywoKT0+ewogICAgZG9jdW1lbnQucXVlcnlTZWxlY3RvckFsbCgnLm1lbnUtdGFiJykuZm9yRWFjaCh4PT54LmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpKTsKICAgIGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5tZW51LXBhbmVsJykuZm9yRWFjaChwPT5wLmNsYXNzTGlzdC5yZW1vdmUoJ2FjdGl2ZScpKTsKICAgIHQuY2xhc3NMaXN0LmFkZCgnYWN0aXZlJyk7CiAgICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKGAubWVudS1wYW5lbFtkYXRhLXBhbmVsPSIke3QuZGF0YXNldC50YWJ9Il1gKS5jbGFzc0xpc3QuYWRkKCdhY3RpdmUnKTsKICB9KTsKfSk7CgovLyBBdWRpbyB0b2dnbGUKY29uc3QgYXVkaW9CdG4gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnYXVkaW9Ub2dnbGUnKTsKbGV0IGF1ZGlvT24gPSBmYWxzZTsKYXVkaW9CdG4uYWRkRXZlbnRMaXN0ZW5lcignY2xpY2snLCgpPT57IGF1ZGlvT24gPSAhYXVkaW9PbjsgYXVkaW9CdG4uY2xhc3NMaXN0LnRvZ2dsZSgnb24nLCBhdWRpb09uKTsgfSk7CgovKiA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PQogICBKT1VSTkVZLCBIb3Jpem9udGFsIHNjcm9sbCB3LyBsZXJwIGVhc2luZwogICArIGFjdGl2ZSBjYXJkIHRyYWNraW5nICsgY2hhcHRlciBzdHJpcCArIGNoYXB0ZXIgaGVhZGVyCiAgID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09ICovCihmdW5jdGlvbigpewogIGNvbnN0IHBpbiA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdqb3VybmV5LXBpbicpOwogIGNvbnN0IHRyYWNrID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2pvdXJuZXktdHJhY2snKTsKICBpZiAoIXBpbiB8fCAhdHJhY2spIHJldHVybjsKCiAgY29uc3QgY2FyZHMgPSBBcnJheS5mcm9tKHRyYWNrLnF1ZXJ5U2VsZWN0b3JBbGwoJy5zdGFnZS1jYXJkJykpOwogIGNvbnN0IG1hcmtlcnMgPSBBcnJheS5mcm9tKGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3JBbGwoJy5jaGFwdGVyLW1hcmtlcicpKTsKICBjb25zdCBwcm9ncmVzc0xpbmUgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgncHJvZ3Jlc3NMaW5lJyk7CiAgY29uc3QgY2hhcHRlclRpdGxlID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ2NoYXB0ZXJUaXRsZScpOwogIGNvbnN0IGNoYXB0ZXJOdW0gPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgnY2hhcHRlck51bScpOwogIGNvbnN0IGNoYXB0ZXJDb29yZCA9IGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKCdjaGFwdGVyQ29vcmQnKTsKICBjb25zdCByb21hbkxpc3QgPSBbJ0knLCdJSScsJ0lJSScsJ0lWJywnVicsJ1ZJJ107CgogIGxldCBjdXJyZW50WCA9IDA7CiAgbGV0IHRhcmdldFggPSAwOwogIGxldCBsYXN0QWN0aXZlSWR4ID0gLTE7CiAgY29uc3QgaXNNb2JpbGUgPSB3aW5kb3cubWF0Y2hNZWRpYSgnKG1heC13aWR0aDo4ODBweCknKS5tYXRjaGVzOwoKICAvLyBDaGFwdGVyIHN0cmlwIGNsaWNrLCBqdW1wIHRvIGNoYXB0ZXIKICBtYXJrZXJzLmZvckVhY2gobSA9PiB7CiAgICBtLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgKCkgPT4gewogICAgICBjb25zdCBpZHggPSBwYXJzZUludChtLmRhdGFzZXQuanVtcCwgMTApOwogICAgICBjb25zdCBwaW5SZWN0ID0gcGluLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogICAgICBjb25zdCBzY3JvbGxSYW5nZSA9IHBpbi5vZmZzZXRIZWlnaHQgLSB3aW5kb3cuaW5uZXJIZWlnaHQ7CiAgICAgIGNvbnN0IHRhcmdldFByb2dyZXNzID0gaWR4IC8gKGNhcmRzLmxlbmd0aCAtIDEpOwogICAgICBjb25zdCB0YXJnZXRTY3JvbGwgPSB3aW5kb3cuc2Nyb2xsWSArIHBpblJlY3QudG9wICsgdGFyZ2V0UHJvZ3Jlc3MgKiBzY3JvbGxSYW5nZTsKICAgICAgd2luZG93LnNjcm9sbFRvKHt0b3A6IHRhcmdldFNjcm9sbCwgYmVoYXZpb3I6ICdzbW9vdGgnfSk7CiAgICB9KTsKICB9KTsKCiAgZnVuY3Rpb24gdXBkYXRlQWN0aXZlKGlkeCkgewogICAgaWYgKGlkeCA9PT0gbGFzdEFjdGl2ZUlkeCkgcmV0dXJuOwogICAgbGFzdEFjdGl2ZUlkeCA9IGlkeDsKICAgIGNhcmRzLmZvckVhY2goKGMsIGkpID0+IGMuY2xhc3NMaXN0LnRvZ2dsZSgnaXMtYWN0aXZlJywgaSA9PT0gaWR4KSk7CiAgICBtYXJrZXJzLmZvckVhY2goKG0sIGkpID0+IHsKICAgICAgbS5jbGFzc0xpc3QudG9nZ2xlKCdhY3RpdmUnLCBpID09PSBpZHgpOwogICAgICBtLmNsYXNzTGlzdC50b2dnbGUoJ2RvbmUnLCBpIDwgaWR4KTsKICAgIH0pOwogICAgY29uc3QgY2FyZCA9IGNhcmRzW2lkeF07CiAgICBpZiAoY2FyZCkgewogICAgICBjaGFwdGVyVGl0bGUudGV4dENvbnRlbnQgPSBjYXJkLmRhdGFzZXQudGl0bGUgfHwgJyc7CiAgICAgIGNoYXB0ZXJOdW0udGV4dENvbnRlbnQgPSByb21hbkxpc3RbaWR4XTsKICAgICAgY2hhcHRlckNvb3JkLnRleHRDb250ZW50ID0gY2FyZC5kYXRhc2V0LmNvb3JkIHx8ICcnOwogICAgfQogIH0KCiAgZnVuY3Rpb24gcmVuZGVyKCkgewogICAgaWYgKGlzTW9iaWxlKSByZXR1cm47IC8vIHNraXAgb24gbW9iaWxlIChzdGFja2VkIHZlcnRpY2FsbHkpCgogICAgY29uc3QgcmVjdCA9IHBpbi5nZXRCb3VuZGluZ0NsaWVudFJlY3QoKTsKICAgIGlmIChyZWN0LnRvcCA8PSB3aW5kb3cuaW5uZXJIZWlnaHQgJiYgcmVjdC5ib3R0b20gPj0gMCkgewogICAgICBjb25zdCBzY3JvbGxSYW5nZSA9IHJlY3QuaGVpZ2h0IC0gd2luZG93LmlubmVySGVpZ2h0OwogICAgICBsZXQgcHJvZ3Jlc3MgPSAtcmVjdC50b3AgLyBzY3JvbGxSYW5nZTsKICAgICAgcHJvZ3Jlc3MgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigxLCBwcm9ncmVzcykpOwoKICAgICAgLy8gTWFwIHNjcm9sbCBwcm9ncmVzcyDihpIgaG9yaXpvbnRhbCB0cmFuc2xhdGUKICAgICAgY29uc3QgbWF4VHJhbnNsYXRlID0gdHJhY2suc2Nyb2xsV2lkdGggLSB3aW5kb3cuaW5uZXJXaWR0aDsKICAgICAgdGFyZ2V0WCA9IC0ocHJvZ3Jlc3MgKiBtYXhUcmFuc2xhdGUpOwoKICAgICAgLy8gTGVycCB0b3dhcmQgdGFyZ2V0ICh0aGUgInByZW1pdW0gbW9tZW50dW0iIGZlZWwpCiAgICAgIGN1cnJlbnRYICs9ICh0YXJnZXRYIC0gY3VycmVudFgpICogMC4wOTsKICAgICAgdHJhY2suc3R5bGUudHJhbnNmb3JtID0gYHRyYW5zbGF0ZTNkKCR7Y3VycmVudFh9cHgsIDAsIDApYDsKCiAgICAgIC8vIFVwZGF0ZSBhY3RpdmUgY2hhcHRlciBiYXNlZCBvbiB3aGljaCBjYXJkIGlzIGNsb3Nlc3QgdG8gdmlld3BvcnQgY2VudGVyCiAgICAgIGNvbnN0IHZpZXdwb3J0Q2VudGVyID0gd2luZG93LmlubmVyV2lkdGggLyAyOwogICAgICBsZXQgY2xvc2VzdCA9IDA7CiAgICAgIGxldCBjbG9zZXN0RGlzdCA9IEluZmluaXR5OwogICAgICBjYXJkcy5mb3JFYWNoKChjYXJkLCBpKSA9PiB7CiAgICAgICAgY29uc3QgY2FyZFJlY3QgPSBjYXJkLmdldEJvdW5kaW5nQ2xpZW50UmVjdCgpOwogICAgICAgIGNvbnN0IGNhcmRDZW50ZXIgPSBjYXJkUmVjdC5sZWZ0ICsgY2FyZFJlY3Qud2lkdGggLyAyOwogICAgICAgIGNvbnN0IGRpc3QgPSBNYXRoLmFicyhjYXJkQ2VudGVyIC0gdmlld3BvcnRDZW50ZXIpOwogICAgICAgIGlmIChkaXN0IDwgY2xvc2VzdERpc3QpIHsgY2xvc2VzdERpc3QgPSBkaXN0OyBjbG9zZXN0ID0gaTsgfQogICAgICB9KTsKICAgICAgdXBkYXRlQWN0aXZlKGNsb3Nlc3QpOwoKICAgICAgLy8gUHJvZ3Jlc3MgbGluZSBhdCBib3R0b20sIHNwYW5zIGZpcnN0IGRvdCAoMTIuNSUpIHRvIGxhc3QgZG90ICg4Ny41JSkgPSA3NSUgd2lkdGgKICAgICAgaWYgKHByb2dyZXNzTGluZSkgcHJvZ3Jlc3NMaW5lLnN0eWxlLndpZHRoID0gKHByb2dyZXNzICogNzUpICsgJyUnOwogICAgfQogICAgcmVxdWVzdEFuaW1hdGlvbkZyYW1lKHJlbmRlcik7CiAgfQogIHJlcXVlc3RBbmltYXRpb25GcmFtZShyZW5kZXIpOwoKICAvLyBJbml0IGFjdGl2ZSBzdGF0ZQogIHVwZGF0ZUFjdGl2ZSgwKTsKfSkoKTsKCi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgIENIQVJUIFNQRUVEQk9BVFMsIEpTLWRyaXZlbiByYW5kb20gdHJhZmZpYy4KICAgRWFjaCBjcmFmdCBwaWNrcyBhIFJBTkRPTSByb3V0ZSwgcnVucyBpdCBib3ctZmlyc3QgdG8gdGhlIGZhciBlbmQsIG1ha2VzIGEKICAgVS10dXJuLCB0aGVuIHJ1bnMgYmFjayB0byBpdHMgb3JpZ2luIChzdGlsbCBib3ctZmlyc3QpIGJlZm9yZSByZXNwYXduaW5nIG9uCiAgIGFub3RoZXIgcmFuZG9tIHJvdXRlLiBBbHdheXMgbW92ZXMgZm9yd2FyZCwgbmV2ZXIgcmV2ZXJzZXMuCiAgIFR3ZWFrIEJPQVRfQ09SUkVDVElPTiBpZiB0aGUgYm9hdCBhcnR3b3JrIHBvaW50cyB0aGUgd3Jvbmcgd2F5LgogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwooZnVuY3Rpb24oKXsKICB2YXIgU1ZHTlMgPSAnaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnLCBYTElOSyA9ICdodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rJzsKICB2YXIgc3ZnID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3JvdXRlQ2hhcnQnKTsKICBpZiAoIXN2ZykgcmV0dXJuOwoKICB2YXIgQk9BVF9JTUcgPSAnaHR0cHM6Ly93d3cudGFsbHNoaXAuY29tLnNnL3dwLWNvbnRlbnQvdXBsb2Fkcy8yMDI2LzA1L0FTQS10b3B2aWV3LnBuZyc7CiAgdmFyIEJPQVRfQ09SUkVDVElPTiA9IC00NTsgICAvLyByb3RhdGUgdGhlIGFydHdvcmsgc28gaXRzIGJvdyBsaW5lcyB1cCB3aXRoIHRyYXZlbCBkaXJlY3Rpb24KICB2YXIgQk9BVF9TSVpFID0gMjc7ICAgICAgICAgIC8vIHB4IGluIHRoZSA2NDB4NjAwIHZpZXdCb3gKICB2YXIgTlVNX0JPQVRTID0gNDsKICB2YXIgcm91dGVJZHMgPSBbJ3IxJywncjInLCdyMycsJ3I0JywnaG9wMScsJ2hvcDInLCdob3AzJywndHJhbnNmZXInXTsKICB2YXIgYWN0aXZlUm91dGVzID0gbmV3IFNldCgpOyAgIC8vIHJvdXRlcyBjdXJyZW50bHkgaW4gdXNlLCBzbyB3ZSBuZXZlciBwdXQgMiBib2F0cyBvbiB0aGUgc2FtZSBsYW5lCgogIC8vIFRyaXAgcGhhc2VzIChmcmFjdGlvbnMgb2YgdG90YWwgZHVyYXRpb24pOgogIHZhciBPVVRfRU5EID0gMC40NTsgICAvLyBvdXRib3VuZCBsZWc6IG9yaWdpbiAtPiBmYXIgZW5kCiAgdmFyIFRVUk5fRU5EID0gMC41MzsgIC8vIFUtdHVybiBhdCB0aGUgZmFyIGVuZCAocm90YXRlIDE4MCBpbiBwbGFjZSkKICAvLyByZXR1cm4gbGVnIGZpbGxzIFRVUk5fRU5EIC0+IDEuMAoKICB2YXIgcm91dGVzID0gcm91dGVJZHMubWFwKGZ1bmN0aW9uKGlkKXsgcmV0dXJuIGRvY3VtZW50LmdldEVsZW1lbnRCeUlkKGlkKTsgfSkKICAgICAgICAgICAgICAgICAgICAgICAuZmlsdGVyKGZ1bmN0aW9uKHApeyByZXR1cm4gcCAmJiBwLmdldFRvdGFsTGVuZ3RoOyB9KTsKICBpZiAoIXJvdXRlcy5sZW5ndGgpIHJldHVybjsKCiAgZnVuY3Rpb24gcmFuZChhLCBiKXsgcmV0dXJuIGEgKyBNYXRoLnJhbmRvbSgpKihiLWEpOyB9CiAgdmFyIERFRyA9IDE4MC9NYXRoLlBJOwoKICBmdW5jdGlvbiBtYWtlQm9hdCgpewogICAgdmFyIGltZyA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnROUyhTVkdOUywgJ2ltYWdlJyk7CiAgICBpbWcuc2V0QXR0cmlidXRlKCd3aWR0aCcsIEJPQVRfU0laRSk7CiAgICBpbWcuc2V0QXR0cmlidXRlKCdoZWlnaHQnLCBCT0FUX1NJWkUpOwogICAgaW1nLnNldEF0dHJpYnV0ZSgneCcsIC1CT0FUX1NJWkUvMik7CiAgICBpbWcuc2V0QXR0cmlidXRlKCd5JywgLUJPQVRfU0laRS8yKTsKICAgIGltZy5zZXRBdHRyaWJ1dGVOUyhYTElOSywgJ2hyZWYnLCBCT0FUX0lNRyk7CiAgICBpbWcuc2V0QXR0cmlidXRlKCdocmVmJywgQk9BVF9JTUcpOwogICAgaW1nLnN0eWxlLm9wYWNpdHkgPSAnMCc7CiAgICBzdmcuYXBwZW5kQ2hpbGQoaW1nKTsKICAgIHJldHVybiBpbWc7CiAgfQoKICAvLyBTdGFibGUgZm9yd2FyZCB0YW5nZW50IChkZWdyZWVzKSBhdCBkaXN0YW5jZSBkIGFsb25nIHRoZSByb3V0ZS4KICBmdW5jdGlvbiBmd2RBbmdsZShyb3V0ZSwgbGVuLCBkKXsKICAgIHZhciBhID0gcm91dGUuZ2V0UG9pbnRBdExlbmd0aChNYXRoLm1heCgwLCBkIC0gMS40KSk7CiAgICB2YXIgYiA9IHJvdXRlLmdldFBvaW50QXRMZW5ndGgoTWF0aC5taW4obGVuLCBkICsgMS40KSk7CiAgICByZXR1cm4gTWF0aC5hdGFuMihiLnkgLSBhLnksIGIueCAtIGEueCkgKiBERUc7CiAgfQoKICBmdW5jdGlvbiBwaWNrRnJlZVJvdXRlKCl7CiAgICB2YXIgYXZhaWwgPSByb3V0ZXMuZmlsdGVyKGZ1bmN0aW9uKHIpeyByZXR1cm4gIWFjdGl2ZVJvdXRlcy5oYXMocik7IH0pOwogICAgaWYgKCFhdmFpbC5sZW5ndGgpIHJldHVybiBudWxsOwogICAgcmV0dXJuIGF2YWlsW01hdGguZmxvb3IoTWF0aC5yYW5kb20oKSphdmFpbC5sZW5ndGgpXTsKICB9CgogIGZ1bmN0aW9uIG5ld1RyaXAoYiwgbm93KXsKICAgIGlmIChiLnJvdXRlKSBhY3RpdmVSb3V0ZXMuZGVsZXRlKGIucm91dGUpOwogICAgdmFyIHIgPSBwaWNrRnJlZVJvdXRlKCk7CiAgICBpZiAoIXIpeyBiLnJvdXRlID0gbnVsbDsgYi5zdGFydCA9IG5vdyArIDE1MDA7IHJldHVybjsgfQogICAgYi5yb3V0ZSA9IHI7CiAgICBhY3RpdmVSb3V0ZXMuYWRkKHIpOwogICAgYi5sZW4gICA9IHIuZ2V0VG90YWxMZW5ndGgoKTsKICAgIGIuZHVyICAgPSByYW5kKDExMDAwLCAxNzAwMCk7ICAgICAgICAgICAgLy8gZnVsbCBvdXQtYW5kLWJhY2sKICAgIC8vIFN0b3Agc2hvcnQgb2YgdGhlIHZlcnkgZW5kIGJ5IGEgcmFuZG9taXNlZCBhbW91bnQgc28gY29udmVyZ2luZyByb3V0ZXMKICAgIC8vIGRvIG5vdCBwaWxlIHVwIGF0IHRoZSBzaGlwJ3MgZXhhY3QgZG9jayBwb2ludCAocHJldmVudHMgdmlzaWJsZSAiY3Jhc2hlcyIpLgogICAgYi5lbmRGYWN0b3IgPSByYW5kKDAuODYsIDAuOTYpOwogICAgYi5zdGFydCA9IG5vdyArIHJhbmQoODAwLCA1MDAwKTsgICAgICAgICAgLy8gcGF1c2UgYmVmb3JlIHRoaXMgY3JhZnQgc2V0cyBvZmYgYWdhaW4KICB9CgogIHZhciBib2F0cyA9IFtdOwogIGZvciAodmFyIGk9MDtpPE5VTV9CT0FUUztpKyspewogICAgdmFyIGIgPSB7IGVsOiBtYWtlQm9hdCgpIH07CiAgICBib2F0cy5wdXNoKGIpOwogICAgbmV3VHJpcChiLCBwZXJmb3JtYW5jZS5ub3coKSk7CiAgICBiLnN0YXJ0ID0gcGVyZm9ybWFuY2Uubm93KCkgKyByYW5kKDAsIDEyMDAwKTsgLy8gd2lkZXIgaW5pdGlhbCBzdGFnZ2VyCiAgfQoKICBmdW5jdGlvbiBmcmFtZShub3cpewogICAgZm9yICh2YXIgaT0wO2k8Ym9hdHMubGVuZ3RoO2krKyl7CiAgICAgIHZhciBiID0gYm9hdHNbaV07CiAgICAgIGlmICghYi5yb3V0ZSl7CiAgICAgICAgYi5lbC5zdHlsZS5vcGFjaXR5ID0gJzAnOwogICAgICAgIGlmIChub3cgPj0gYi5zdGFydCkgbmV3VHJpcChiLCBub3cpOwogICAgICAgIGNvbnRpbnVlOwogICAgICB9CiAgICAgIHZhciByb3V0ZSA9IGIucm91dGUsIGxlbiA9IGIubGVuLCBlZmZMZW4gPSBsZW4gKiBiLmVuZEZhY3RvcjsKICAgICAgdmFyIHByb2cgPSAobm93IC0gYi5zdGFydCkgLyBiLmR1cjsKICAgICAgaWYgKHByb2cgPCAwKXsgYi5lbC5zdHlsZS5vcGFjaXR5ID0gJzAnOyBjb250aW51ZTsgfQogICAgICBpZiAocHJvZyA+PSAxKXsgbmV3VHJpcChiLCBub3cpOyBiLmVsLnN0eWxlLm9wYWNpdHkgPSAnMCc7IGNvbnRpbnVlOyB9CgogICAgICB2YXIgZCwgYW5nOwogICAgICBpZiAocHJvZyA8IE9VVF9FTkQpeyAgICAgICAgICAgICAgICAgICAgICAgLy8gb3V0Ym91bmQ6IG9yaWdpbiAtPiBzaG9ydCBvZiBmYXIgZW5kCiAgICAgICAgZCA9IChwcm9nIC8gT1VUX0VORCkgKiBlZmZMZW47CiAgICAgICAgYW5nID0gZndkQW5nbGUocm91dGUsIGxlbiwgZCkgKyBCT0FUX0NPUlJFQ1RJT047CiAgICAgIH0gZWxzZSBpZiAocHJvZyA8IFRVUk5fRU5EKXsgICAgICAgICAgICAgICAvLyBVLXR1cm4gYXQgdGhlIGRvY2sgcG9pbnQKICAgICAgICB2YXIgdHQgPSAocHJvZyAtIE9VVF9FTkQpIC8gKFRVUk5fRU5EIC0gT1VUX0VORCk7CiAgICAgICAgZCA9IGVmZkxlbjsKICAgICAgICBhbmcgPSBmd2RBbmdsZShyb3V0ZSwgbGVuLCBlZmZMZW4pICsgMTgwICogdHQgKyBCT0FUX0NPUlJFQ1RJT047CiAgICAgIH0gZWxzZSB7ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAvLyByZXR1cm46IGRvY2sgLT4gb3JpZ2luCiAgICAgICAgdmFyIHRyID0gKHByb2cgLSBUVVJOX0VORCkgLyAoMSAtIFRVUk5fRU5EKTsKICAgICAgICBkID0gKDEgLSB0cikgKiBlZmZMZW47CiAgICAgICAgYW5nID0gZndkQW5nbGUocm91dGUsIGxlbiwgZCkgKyAxODAgKyBCT0FUX0NPUlJFQ1RJT047ICAgLy8gZmFjaW5nIGJhY2sgdG93YXJkIG9yaWdpbgogICAgICB9CgogICAgICB2YXIgcCA9IHJvdXRlLmdldFBvaW50QXRMZW5ndGgoZCk7CiAgICAgIGIuZWwuc2V0QXR0cmlidXRlKCd0cmFuc2Zvcm0nLCAndHJhbnNsYXRlKCcgKyBwLngudG9GaXhlZCgyKSArICcgJyArIHAueS50b0ZpeGVkKDIpICsgJykgcm90YXRlKCcgKyBhbmcudG9GaXhlZCgxKSArICcpJyk7CgogICAgICB2YXIgb3AgPSAxOwogICAgICBpZiAocHJvZyA8IDAuMDYpIG9wID0gcHJvZy8wLjA2OwogICAgICBlbHNlIGlmIChwcm9nID4gMC45NSkgb3AgPSAoMSAtIHByb2cpLzAuMDU7CiAgICAgIGIuZWwuc3R5bGUub3BhY2l0eSA9IG9wLnRvRml4ZWQoMik7CiAgICB9CiAgICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnJhbWUpOwogIH0KICByZXF1ZXN0QW5pbWF0aW9uRnJhbWUoZnJhbWUpOwp9KSgpOwoKCi8qID09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09CiAgIFZJREVPIExJR0hUQk9YLCBjbGljayBhbnkgam91cm5leSBjYXJkIHRvIG9wZW4gdGhlIGZ1bGwgdmlkZW8gd2l0aCBzb3VuZCArIGNvbnRyb2xzLgogICA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PSAqLwooZnVuY3Rpb24oKXsKICB2YXIgbGIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgndmlkTGlnaHRib3gnKTsKICBpZiAoIWxiKSByZXR1cm47CiAgdmFyIHZpZGVvID0gbGIucXVlcnlTZWxlY3RvcignLnZpZC1saWdodGJveC12aWRlbycpOwogIHZhciBjYXB0aW9uID0gbGIucXVlcnlTZWxlY3RvcignLnZpZC1saWdodGJveC1jYXB0aW9uJyk7CiAgdmFyIGNsb3NlQnRuID0gbGIucXVlcnlTZWxlY3RvcignLnZpZC1saWdodGJveC1jbG9zZScpOwoKICBmdW5jdGlvbiBvcGVuKHNyYywgdGl0bGUpewogICAgaWYgKCFzcmMpIHJldHVybjsKICAgIHZpZGVvLnNyYyA9IHNyYzsKICAgIHZpZGVvLm11dGVkID0gZmFsc2U7CiAgICB2aWRlby5jdXJyZW50VGltZSA9IDA7CiAgICBjYXB0aW9uLnRleHRDb250ZW50ID0gdGl0bGUgfHwgJyc7CiAgICBsYi5jbGFzc0xpc3QuYWRkKCdvcGVuJyk7CiAgICBsYi5zZXRBdHRyaWJ1dGUoJ2FyaWEtaGlkZGVuJywnZmFsc2UnKTsKICAgIGRvY3VtZW50LmJvZHkuc3R5bGUub3ZlcmZsb3cgPSAnaGlkZGVuJzsKICAgIHZhciBwID0gdmlkZW8ucGxheSgpOwogICAgaWYgKHAgJiYgcC5jYXRjaCkgcC5jYXRjaChmdW5jdGlvbigpeyB2aWRlby5tdXRlZCA9IHRydWU7IHZpZGVvLnBsYXkoKS5jYXRjaChmdW5jdGlvbigpe30pOyB9KTsKICB9CiAgZnVuY3Rpb24gY2xvc2UoKXsKICAgIGxiLmNsYXNzTGlzdC5yZW1vdmUoJ29wZW4nKTsKICAgIGxiLnNldEF0dHJpYnV0ZSgnYXJpYS1oaWRkZW4nLCd0cnVlJyk7CiAgICBkb2N1bWVudC5ib2R5LnN0eWxlLm92ZXJmbG93ID0gJyc7CiAgICB0cnkgeyB2aWRlby5wYXVzZSgpOyB9IGNhdGNoKGUpe30KICAgIHZpZGVvLnJlbW92ZUF0dHJpYnV0ZSgnc3JjJyk7CiAgICB2aWRlby5sb2FkKCk7CiAgfQoKICBkb2N1bWVudC5xdWVyeVNlbGVjdG9yQWxsKCcucGhvdG8tY2FyZC5oYXMtdmlkZW8nKS5mb3JFYWNoKGZ1bmN0aW9uKGNhcmQpewogICAgY2FyZC5hZGRFdmVudExpc3RlbmVyKCdjbGljaycsIGZ1bmN0aW9uKCl7CiAgICAgIHZhciBzcmMgPSBjYXJkLnF1ZXJ5U2VsZWN0b3IoJ3ZpZGVvLmNhcmQtdmlkIHNvdXJjZScpOwogICAgICB2YXIgdGl0bGVFbCA9IGNhcmQucXVlcnlTZWxlY3RvcignLnYtdGl0bGUnKTsKICAgICAgb3BlbihzcmMgPyBzcmMuZ2V0QXR0cmlidXRlKCdzcmMnKSA6ICcnLCB0aXRsZUVsID8gdGl0bGVFbC50ZXh0Q29udGVudCA6ICcnKTsKICAgIH0pOwogIH0pOwogIGNsb3NlQnRuLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgY2xvc2UpOwogIGxiLmFkZEV2ZW50TGlzdGVuZXIoJ2NsaWNrJywgZnVuY3Rpb24oZSl7IGlmIChlLnRhcmdldCA9PT0gbGIpIGNsb3NlKCk7IH0pOwogIGRvY3VtZW50LmFkZEV2ZW50TGlzdGVuZXIoJ2tleWRvd24nLCBmdW5jdGlvbihlKXsKICAgIGlmIChlLmtleSA9PT0gJ0VzY2FwZScgJiYgbGIuY2xhc3NMaXN0LmNvbnRhaW5zKCdvcGVuJykpIGNsb3NlKCk7CiAgfSk7Cn0pKCk7CgovKiBTdGlja3kgYm9vayBiYXI6IGFwcGVhcnMgYWZ0ZXIgdGhlIHVzZXIgaGFzIHNjcm9sbGVkIHBhc3QgdGhlIGhlcm8gKi8KKGZ1bmN0aW9uKCl7CiAgdmFyIHNiID0gZG9jdW1lbnQuZ2V0RWxlbWVudEJ5SWQoJ3N0aWNreUJvb2snKTsKICBpZiAoIXNiKSByZXR1cm47CiAgZnVuY3Rpb24gb25TY3JvbGwoKXsKICAgIHZhciBoZXJvSCA9IHdpbmRvdy5pbm5lckhlaWdodCAqIDAuODU7CiAgICBpZiAod2luZG93LnNjcm9sbFkgPiBoZXJvSCkgc2IuY2xhc3NMaXN0LmFkZCgnc2hvdycpOwogICAgZWxzZSBzYi5jbGFzc0xpc3QucmVtb3ZlKCdzaG93Jyk7CiAgfQogIHdpbmRvdy5hZGRFdmVudExpc3RlbmVyKCdzY3JvbGwnLCBvblNjcm9sbCwge3Bhc3NpdmU6dHJ1ZX0pOwogIG9uU2Nyb2xsKCk7Cn0pKCk7CgoKOwo=\"><\/script>\r\n<script type=\"application\/ld+json\">{\"@context\":\"https:\/\/schema.org\",\"@type\":\"Restaurant\",\"name\":\"Albatross Island Restaurant\",\"alternateName\":\"AIR \u00b7 Royal Albatross\",\"image\":\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2026\/06\/ChatGPT-Image-Jun-16-2026-01_09_18-PM.png\",\"description\":\"Singaporean coastal cuisine inspired by the spice routes, served aboard Asia's only luxury tall ship anchored in the Lazarus lagoon.\",\"url\":\"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/\",\"telephone\":\"+65 9350 7475\",\"email\":\"reservations@tallship.com.sg\",\"servesCuisine\":[\"Asian Fusion\",\"Singaporean Coastal\",\"Modern Indian\"],\"priceRange\":\"$$\",\"acceptsReservations\":\"True\",\"openingHoursSpecification\":[{\"@type\":\"OpeningHoursSpecification\",\"dayOfWeek\":[\"Tuesday\",\"Wednesday\",\"Thursday\",\"Friday\",\"Saturday\",\"Sunday\"],\"opens\":\"10:30\",\"closes\":\"15:00\"}],\"address\":{\"@type\":\"PostalAddress\",\"streetAddress\":\"Anchored off Lazarus Island, Southern Islands\",\"addressLocality\":\"Singapore\",\"addressRegion\":\"Singapore\",\"postalCode\":\"098269\",\"addressCountry\":\"SG\"},\"geo\":{\"@type\":\"GeoCoordinates\",\"latitude\":1.2204,\"longitude\":103.8485},\"hasMenu\":\"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#menu\",\"parentOrganization\":{\"@type\":\"Organization\",\"name\":\"Royal Albatross\",\"url\":\"https:\/\/www.tallship.com.sg\",\"logo\":\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png\"},\"employee\":{\"@type\":\"Person\",\"name\":\"Chef Inderpal Singh\",\"jobTitle\":\"Head Chef\",\"award\":\"MasterChef Singapore Season 4 Champion (2023)\"}}<\/script>\r\n","protected":false},"excerpt":{"rendered":"<p>Singaporean coastal cuisine, inspired by the spice routes. Designed by Chef Inderpal Singh, MasterChef Singapore S4, served aboard Asia&#8217;s only luxury tall ship anchored in the Lazarus lagoon. Tuesdays to Sunday, 10:30am to 3pm.<\/p>","protected":false},"author":59,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_canvas","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-778726","page","type-page","status-publish","hentry"],"acf":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Albatross Island Restaurant<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.tallship.com.sg\/zh\/albatross-island-restaurant\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Albatross Island Restaurant\" \/>\n<meta property=\"og:description\" content=\"Singaporean coastal cuisine, inspired by the spice routes. Designed by Chef Inderpal Singh, MasterChef Singapore S4, served aboard Asia&#039;s only luxury tall ship anchored in the Lazarus lagoon. Tuesdays to Sunday, 10:30am to 3pm.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.tallship.com.sg\/zh\/albatross-island-restaurant\/\" \/>\n<meta property=\"og:site_name\" content=\"Tallship\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/royalalbatross.sg\/\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-25T03:32:39+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:site\" content=\"@royalalbatross_\" \/>\n<meta name=\"twitter:label1\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data1\" content=\"7 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/\",\"url\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/\",\"name\":\"Albatross Island Restaurant\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/www.tallship.com.sg\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/RA-logo.png\",\"datePublished\":\"2026-05-22T04:45:24+00:00\",\"dateModified\":\"2026-06-25T03:32:39+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/#primaryimage\",\"url\":\"https:\\\/\\\/www.tallship.com.sg\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/RA-logo.png\",\"contentUrl\":\"https:\\\/\\\/www.tallship.com.sg\\\/wp-content\\\/uploads\\\/2022\\\/06\\\/RA-logo.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/albatross-island-restaurant\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.tallship.com.sg\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Albatross Island Restaurant\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.tallship.com.sg\\\/#website\",\"url\":\"https:\\\/\\\/www.tallship.com.sg\\\/\",\"name\":\"Tallship\",\"description\":\"Tallship\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.tallship.com.sg\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Albatross Island Restaurant","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.tallship.com.sg\/zh\/albatross-island-restaurant\/","og_locale":"zh_CN","og_type":"article","og_title":"Albatross Island Restaurant","og_description":"Singaporean coastal cuisine, inspired by the spice routes. Designed by Chef Inderpal Singh, MasterChef Singapore S4, served aboard Asia's only luxury tall ship anchored in the Lazarus lagoon. Tuesdays to Sunday, 10:30am to 3pm.","og_url":"https:\/\/www.tallship.com.sg\/zh\/albatross-island-restaurant\/","og_site_name":"Tallship","article_publisher":"https:\/\/www.facebook.com\/royalalbatross.sg\/","article_modified_time":"2026-06-25T03:32:39+00:00","og_image":[{"url":"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png","type":"","width":"","height":""}],"twitter_card":"summary_large_image","twitter_site":"@royalalbatross_","twitter_misc":{"Est. reading time":"7 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/","url":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/","name":"Albatross Island Restaurant","isPartOf":{"@id":"https:\/\/www.tallship.com.sg\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#primaryimage"},"image":{"@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#primaryimage"},"thumbnailUrl":"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png","datePublished":"2026-05-22T04:45:24+00:00","dateModified":"2026-06-25T03:32:39+00:00","breadcrumb":{"@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#primaryimage","url":"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png","contentUrl":"https:\/\/www.tallship.com.sg\/wp-content\/uploads\/2022\/06\/RA-logo.png"},{"@type":"BreadcrumbList","@id":"https:\/\/www.tallship.com.sg\/albatross-island-restaurant\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.tallship.com.sg\/"},{"@type":"ListItem","position":2,"name":"Albatross Island Restaurant"}]},{"@type":"WebSite","@id":"https:\/\/www.tallship.com.sg\/#website","url":"https:\/\/www.tallship.com.sg\/","name":"Tallship","description":"Tallship","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.tallship.com.sg\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"}]}},"_links":{"self":[{"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/pages\/778726","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/users\/59"}],"replies":[{"embeddable":true,"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/comments?post=778726"}],"version-history":[{"count":3,"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/pages\/778726\/revisions"}],"predecessor-version":[{"id":779447,"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/pages\/778726\/revisions\/779447"}],"wp:attachment":[{"href":"https:\/\/www.tallship.com.sg\/zh\/wp-json\/wp\/v2\/media?parent=778726"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}