:root{--navy:#142c3c;--muted:#66757d;--red:#e34b46;--cream:#f6f5f1;--line:#dce2e4}*{box-sizing:border-box}body{margin:0;color:var(--navy);background:#fff;font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,select:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--red);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.15}h1{font-size:clamp(42px,5.3vw,74px);letter-spacing:-2px}h2{font-size:clamp(28px,3vw,40px);letter-spacing:-1px}h3{font-size:23px}.red{color:var(--red)}.wrap{max-width:1190px;width:calc(100% - 96px);margin:auto}.site-header{height:106px;max-width:1300px;margin:auto;padding:0 48px;display:flex;align-items:center;justify-content:space-between}.brand{position:relative;line-height:1.15;font-size:17px;font-weight:700;letter-spacing:4px}.brand span{display:block;font-size:14px;letter-spacing:6.8px;margin-top:4px}.brand i{position:absolute;width:6px;height:6px;border-radius:50%;background:var(--red);right:-14px;bottom:4px}nav{display:flex;gap:36px}nav a{font-size:14px;padding:11px 0;position:relative}nav a[aria-current]{font-weight:bold}nav a[aria-current]:after{content:'';height:2px;background:var(--red);position:absolute;bottom:0;left:0;right:0}.eyebrow{font-size:10px;font-weight:bold;letter-spacing:2.3px}.hero{height:490px;position:relative;overflow:hidden;background:var(--cream)}.photo{background-repeat:no-repeat;background-color:#d8e0e0;background-size:400% 200%;aspect-ratio:3/2}.hero-photo{position:absolute;right:0;top:0;width:68%;height:100%;aspect-ratio:auto}.hero-wash{position:absolute;inset:0;background:linear-gradient(90deg,#f6f5f1 22%,rgba(246,245,241,.9) 36%,rgba(246,245,241,.05) 75%)}.hero-copy{position:relative;max-width:1190px;width:calc(100% - 96px);margin:auto;padding-top:64px}.hero-copy h1{font-size:82px;line-height:1.03;margin:19px 0}.hero-copy>p:last-child{color:#536671;font-size:17px}.counter{position:absolute;right:max(48px,calc((100vw - 1190px)/2));bottom:32px;background:#fffefcf2;padding:18px 35px 20px;text-align:center;min-width:260px;box-shadow:0 5px 35px #102b3b17;border-top:3px solid var(--red)}.counter strong{font:52px/1.1 Georgia,serif;display:block;font-variant-numeric:tabular-nums}.counter>span{display:block;font-size:9px;letter-spacing:2px;margin:8px 0}.counter small{color:var(--muted);font-size:11px}.map-section{padding-top:67px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:28px}.section-heading h2{margin-top:12px}.section-heading>p{font-size:13px;color:var(--muted)}.map-shell{position:relative;border:1px solid var(--line);border-radius:4px;background:#f5f8f8;overflow:hidden}.map-top{padding:22px 25px;display:flex;justify-content:space-between;gap:15px;font-size:12px;position:relative;z-index:1}.map-top>span{display:flex;gap:9px;align-items:center}.live-dot{background:var(--red);width:7px;height:7px;border-radius:50%;box-shadow:0 0 0 4px #e34b4615}.map-legend{color:var(--muted)}.map-legend b,.map-legend i{color:var(--red);font-style:normal}#world-map{display:block;width:100%;height:auto;touch-action:none}.country{fill:#19394c;stroke:#f4f7f7;stroke-width:.22}.route{fill:none;stroke:var(--red);stroke-width:1;stroke-opacity:.55;vector-effect:non-scaling-stroke;pointer-events:none}.route.planned{stroke-dasharray:5 5;stroke-opacity:.65}.pin{fill:var(--red);stroke:#fff;stroke-width:1;vector-effect:non-scaling-stroke;cursor:pointer}.pin.planned{fill:#fff;stroke:var(--red);stroke-width:1.8}.pin:hover{fill:#ffb7a9}.current-ring{fill:none;stroke:var(--red);stroke-width:2;animation:pulse 2.5s infinite;pointer-events:none}.current-label{fill:#fff;font:11px Arial;paint-order:stroke;stroke:var(--navy);stroke-width:4px;stroke-linejoin:round;pointer-events:none}@keyframes pulse{50%{opacity:.2;stroke-width:7}}.map-controls{position:absolute;left:20px;bottom:20px;display:flex;gap:5px}.map-controls button{background:#fff;border:1px solid #dbe0e3;border-radius:3px;padding:5px 12px;font-size:12px;color:var(--navy)}.map-controls button:first-child,.map-controls button:nth-child(2){font-size:20px;padding:0 12px}.place-card{position:absolute;right:24px;top:78px;width:285px;background:white;box-shadow:0 12px 45px #0d263844;border-radius:4px;overflow:hidden;z-index:3}.place-card[hidden]{display:none}.close{position:absolute;right:9px;top:8px;background:white;border:0;border-radius:50%;width:28px;height:28px;font-size:20px;line-height:1;z-index:1;color:var(--navy)}.place-text{padding:19px 22px 24px}.place-text h3{font-size:24px;margin:4px 0 13px}.place-text p{font-size:15px;font-weight:bold}.place-text small{font-size:11px;color:var(--muted)}#place-status{color:var(--red);font-size:9px}#repeat-stays{display:flex;gap:6px;margin-top:9px}#repeat-stays:empty{display:none}#repeat-stays button{background:var(--cream);border:1px solid var(--line);font-size:11px;padding:2px 8px}.map-bottom{display:flex;gap:15px;align-items:center;margin-top:18px;font-size:12px}.map-bottom label{font-weight:bold;white-space:nowrap}.map-bottom select{max-width:330px;min-width:180px;border:1px solid var(--line);padding:9px;background:white;color:var(--navy);font-size:12px}.map-bottom small{margin-left:auto;text-align:right;color:var(--muted);font-size:10px}.image-note{color:#7e8b91;font-size:10px;margin-top:14px}.moments{padding-top:74px;padding-bottom:70px}.text-link{font-size:12px;border-bottom:1px solid var(--red);padding-bottom:4px}.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.moment .photo{transition:filter .3s}.moment:hover .photo{filter:brightness(1.08)}.moment>span{display:block;font-size:9px;letter-spacing:2px;color:var(--muted);margin:18px 0 8px}.moment h3{font-size:24px}.closing{padding:55px 24px;text-align:center;background:var(--navy);color:#fff}.closing h2{margin:14px 0 26px}.button{display:inline-block;padding:12px 23px;background:var(--red);color:#fff;border:0;font-size:12px;letter-spacing:.2px;border-radius:2px}.button:hover{background:#c93935}.button.light{background:white;color:var(--navy)}footer{padding:35px 48px;max-width:1300px;margin:auto;display:flex;align-items:center;gap:24px;font-size:11px;color:var(--muted)}.footer-brand{font-size:10px;font-weight:bold;letter-spacing:2px;color:var(--navy)}footer small{margin-left:auto;font-size:10px}.page-intro{text-align:center;padding:65px 0 55px}.page-intro h1{margin:18px 0 22px;font-size:57px}.page-intro>p:last-child:not(.eyebrow){color:var(--muted)}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding-bottom:70px}.about-grid figure{margin:0}.about-grid img{display:block;width:100%;max-height:500px;object-fit:cover;border-radius:3px}.about-grid figcaption{font-size:11px;color:var(--muted);margin-top:12px}.about-copy p{margin-top:24px;font-size:16px;color:#4e606c;line-height:1.9}.signature{font:italic 29px Georgia,serif;margin-top:30px}.about-band{position:relative;height:240px;overflow:hidden;background:var(--navy);display:flex;align-items:center;padding:0 max(48px,calc((100vw - 1190px)/2))}.about-band .photo{position:absolute;right:0;top:-80px;width:60%;opacity:.65}.about-band:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--navy) 30%,transparent)}.about-band h2{position:relative;z-index:1;color:white;font-size:54px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:95px;padding-bottom:75px}.contact-note h2{margin:12px 0 20px}.contact-note>p:not(.eyebrow){color:var(--muted);font-size:14px;max-width:400px}.email{font-size:14px;display:block;margin:22px 0 30px;text-decoration:underline;text-decoration-color:var(--red);text-underline-offset:7px;overflow-wrap:anywhere}.contact-photo{max-height:245px}form label{display:block;font-size:12px;margin-bottom:22px;font-weight:bold}input,textarea{display:block;width:100%;padding:12px 14px;border:1px solid #d4dce0;border-radius:2px;background:#fcfcfb;margin-top:8px;color:var(--navy);font-size:14px}textarea{resize:vertical}.form-note,#form-status{font-size:11px;color:var(--muted);margin-top:13px}.products{display:grid;grid-template-columns:1fr 1fr;gap:55px;max-width:1020px}.cover{padding:28px;background:var(--cream)}.cover img{width:100%;display:block;aspect-ratio:1;object-fit:contain;box-shadow:0 7px 18px #112c3d20}.product-detail{padding:22px 0}.product h2{font-size:26px;line-height:1.3;margin:10px 0}.product-detail>p:not(.eyebrow){font-size:13px;color:var(--muted)}.purchase{border-top:1px solid var(--line);margin-top:22px;padding-top:20px;display:flex;align-items:center;justify-content:space-between}.purchase strong{font-size:19px}.purchase small{font-size:10px;font-weight:normal;color:var(--muted)}.shop-note{text-align:center;padding:35px 0 60px;color:var(--muted);font-size:13px}dialog{border:0;border-radius:4px;padding:45px;max-width:440px;color:var(--navy);box-shadow:0 15px 60px #0003}dialog p{margin:15px 0}dialog::backdrop{background:#132b3cb3}.skip{position:absolute;top:-70px;background:white;padding:10px;z-index:10}.skip:focus{top:0}@media(max-width:760px){.wrap{width:calc(100% - 36px)}.site-header{padding:20px 18px;height:auto;gap:20px}.brand{font-size:12px;letter-spacing:2px}.brand span{font-size:10px;letter-spacing:3.5px}nav{gap:17px}nav a{font-size:12px}.hero{height:560px}.hero-photo{width:100%;top:190px;height:370px}.hero-wash{background:linear-gradient(180deg,#f6f5f1 30%,#f6f5f155 70%,transparent)}.hero-copy{width:calc(100% - 36px);padding-top:32px}.hero-copy h1{font-size:65px}.hero-copy .eyebrow{font-size:8px;letter-spacing:1.5px}.counter{bottom:18px;right:18px;min-width:210px;padding:13px 22px}.counter strong{font-size:44px}.map-section{padding-top:40px}.section-heading{display:block}.section-heading>p{margin-top:15px}.map-top{padding:14px;font-size:10px}.map-legend{display:none!important}#world-map{min-height:310px}.map-controls{left:10px;bottom:10px}.place-card{width:240px;right:10px;top:50px}.place-card .photo{aspect-ratio:2}.place-text{padding:13px 16px 18px}.place-text h3{font-size:21px}.map-bottom{flex-wrap:wrap;gap:10px}.map-bottom select{flex:1;max-width:none}.map-bottom small{width:100%;text-align:left;margin:0}.moments{padding-top:42px;padding-bottom:40px}.moment-grid{grid-template-columns:1fr;gap:28px}.moment h3{font-size:27px}.section-heading .text-link{display:inline-block;margin-top:16px}.page-intro{padding:40px 0 30px}.page-intro h1{font-size:42px}.page-intro>p:last-child{font-size:14px}.about-grid,.contact-grid,.products{grid-template-columns:1fr;gap:32px}.about-grid{padding-bottom:40px}.about-copy p{font-size:15px;margin-top:18px}.about-band{height:180px;padding:24px}.about-band h2{font-size:42px}.about-band .photo{width:90%;top:0}.contact-grid{padding-bottom:35px}.contact-photo{display:none}.products{max-width:470px}.cover{padding:22px}.product h2{font-size:25px}footer{padding:28px 18px;flex-wrap:wrap;gap:10px 20px}footer small{margin-left:0;width:100%}}@media(prefers-reduced-motion:reduce){*{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

/* Personal photographs keep their complete framing and natural proportions. */
.photo.full-photo{display:flex;align-items:center;justify-content:center;background:#142c3c;overflow:hidden;aspect-ratio:3/2}
.photo.full-photo img{display:block;width:100%;height:100%;object-fit:contain;max-width:100%;max-height:100%}
.photo.personal-photo img{filter:contrast(1.04) saturate(1.075)}
.hero-photo.full-photo{aspect-ratio:auto;background:#142c3c}
.hero-photo.full-photo img{object-fit:contain}
.place-card{width:340px;max-height:calc(100% - 100px);overflow-y:auto}
.place-card .photo.full-photo{height:280px;aspect-ratio:auto}
.place-card .photo.flag-photo{height:auto;aspect-ratio:3/2}
.place-card .photo.coming-soon{height:auto;aspect-ratio:3/2}
.place-card .photo.full-photo img{height:100%;width:100%;object-fit:contain}
.place-card .photo.flag-photo img,.place-card .photo.coming-soon img{aspect-ratio:3/2;height:auto}
#place-status{font-size:11px;letter-spacing:1.2px}
.place-card:has(.coming-soon){border-top:3px solid #e34b46}
.moment .photo.full-photo{height:320px;aspect-ratio:auto}
.about-band .photo.full-photo{height:100%;top:0;aspect-ratio:auto}
.contact-photo.full-photo{height:280px;max-height:none;aspect-ratio:auto}
@media(max-width:760px){.place-card{width:270px;max-height:calc(100% - 64px)}.place-card .photo.full-photo{height:200px}.place-card .photo.flag-photo,.place-card .photo.coming-soon{height:auto}.moment .photo.full-photo{height:360px}.contact-photo.full-photo{display:none}}
/* Center the headline inside the solid light panel, clear of the photo blend. */
.hero-wash{background:linear-gradient(90deg,#f6f5f1 32%,rgba(246,245,241,.9) 40%,rgba(246,245,241,.05) 75%)}
.hero-copy{width:32%;max-width:none;height:100%;margin:0;padding:32px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.hero-copy h1{font-size:clamp(40px,5.2vw,76px);line-height:1.06;margin:20px 0 0;white-space:nowrap}
.hero-copy .eyebrow{font-size:clamp(8px,.75vw,10px);letter-spacing:1.6px;white-space:nowrap}
@media(max-width:760px){.hero-copy{width:100%;height:260px;padding:24px 18px}.hero-copy h1{font-size:60px;margin-top:16px}.hero-copy .eyebrow{font-size:9px;letter-spacing:1.6px}.hero-photo{top:260px;height:300px}.hero-wash{background:linear-gradient(180deg,#f6f5f1 43%,#f6f5f155 70%,transparent)}}

/* Dedicated landscape artwork fills the hero banner. */
.hero-photo.full-photo img{object-fit:cover;object-position:center}

.map-top{justify-content:flex-end}
