@layer reset,tokens,base,layout,components,pages,print;@layer reset{@media print{.travel-calendar .calendar-grid .calendar-card[hidden]{display:flex!important}.travel-calendar[data-shortlist-view=true] .calendar-grid .calendar-card[data-shortlisted=false],.travel-calendar .calendar-filter,.travel-calendar .calendar-empty,.travel-calendar .calendar-more{display:none!important}}}@layer pages{.travel-calendar{color:var(--vip-navy);font-family:var(--sans);font-stretch:100%;line-height:1.75}.travel-calendar :is(h1,h2,h3),.journal-hub .calendar-teaser h2{font-family:var(--vip-display);font-weight:400;font-stretch:100%;letter-spacing:-.025em;text-wrap:pretty;overflow-wrap:break-word}.travel-calendar :is(h1,h2,h3,p,figure),.calendar-teaser :is(h2,p,figure){margin:0}.travel-calendar p,.calendar-tips dt,.calendar-tips>summary>span:first-child{overflow-wrap:anywhere}.calendar-eyebrow{color:var(--vip-muted);font-family:var(--sans);font-size:.68rem;font-weight:550;line-height:1.8;letter-spacing:.1em;text-transform:uppercase;overflow-wrap:anywhere}.calendar-link{display:inline-flex;align-items:center;gap:.75rem;min-block-size:2.75rem;max-inline-size:100%;color:var(--vip-navy);font:500 .83rem/1.7 var(--sans);text-decoration-thickness:1px;text-underline-offset:.3em;overflow-wrap:anywhere}.calendar-link>span{flex:none}.calendar-link:hover{color:var(--vip-navy);background:transparent;text-decoration-color:var(--vip-card-gold)}.calendar-button{display:inline-flex;align-items:center;justify-content:space-between;gap:1.25rem;min-block-size:3rem;max-inline-size:100%;padding:.9rem 1.2rem;border:1px solid var(--vip-navy);border-radius:var(--vip-radius-sm);background:var(--vip-navy);color:var(--vip-white);font:550 .83rem/1.6 var(--sans);text-decoration:none;text-transform:none;letter-spacing:normal;overflow-wrap:anywhere}.calendar-button>span{flex:none;font-size:1.1rem}.calendar-button:hover{color:var(--vip-white);background:var(--vip-navy-deep)}.travel-calendar :focus-visible,.calendar-teaser :focus-visible{outline:3px solid var(--vip-navy);outline-offset:4px;box-shadow:0 0 0 7px var(--vip-cream)}.calendar-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,5rem);padding-block:clamp(2rem,5vw,5rem) clamp(3rem,5vw,5rem)}.calendar-back{margin-block-end:1.8rem}[dir=rtl] .calendar-back>span{transform:scaleX(-1)}.calendar-hero__copy>.calendar-eyebrow{margin-block-end:1.2rem}.calendar-hero h1{font-size:clamp(2.75rem,4.8vw,4.8rem);line-height:1.1}.travel-calendar .calendar-hero__lead{color:var(--vip-muted);font-size:1rem;line-height:1.9;max-inline-size:52ch;margin-block:1.6rem 2rem}.calendar-hero__image{position:relative;min-inline-size:0;border-radius:var(--vip-radius-lg);overflow:hidden;background:var(--vip-white);box-shadow:var(--vip-shadow)}.calendar-hero__image img{display:block;inline-size:100%;block-size:auto;aspect-ratio:1/1.12;object-fit:cover}.calendar-hero__image figcaption{color:var(--vip-muted);font-size:.65rem;line-height:1.7;padding:.8rem 1.1rem;overflow-wrap:anywhere}.travel-calendar .calendar-hero__fact{position:absolute;inset-inline:1.1rem;inset-block-start:1.1rem;inline-size:fit-content;max-inline-size:calc(100% - 2.2rem);padding:.5rem .8rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius-sm);background:var(--vip-cream);color:var(--vip-navy);font-size:.7rem;line-height:1.7}.calendar-note{display:grid;grid-template-columns:minmax(0,.75fr) minmax(0,1.5fr);gap:2rem;padding-block:2.25rem;border-block:1px solid var(--vip-line)}.calendar-note h2{font-size:clamp(1.5rem,2.4vw,2rem);line-height:1.3;margin-block-end:.8rem}.calendar-note>div>p{color:var(--vip-muted);font-size:.85rem;line-height:1.9;max-inline-size:80ch}.calendar-collection{padding-block:clamp(3rem,6vw,5.5rem)}.calendar-collection__head{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);align-items:end;gap:2rem;margin-block-end:2.25rem}.calendar-collection__head h2{font-size:clamp(2rem,3.3vw,3.1rem);line-height:1.2;margin-block-start:.8rem}.calendar-collection__head>p{color:var(--vip-muted);max-inline-size:42ch;font-size:.9rem;line-height:1.85}.calendar-collection__notes{display:grid;gap:.5rem;color:var(--vip-muted);font-size:.75rem;line-height:1.9;max-inline-size:90ch;margin-block:-.5rem 1.75rem}.calendar-shortlist{min-inline-size:0;padding:1.5rem;margin-block-end:1.5rem;border:1px solid var(--vip-line);border-inline-start:3px solid var(--vip-card-gold);border-radius:var(--vip-radius);background:var(--vip-white)}.calendar-shortlist__head{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:.5rem 2rem}.calendar-shortlist h3{font-size:clamp(1.5rem,2.2vw,1.9rem);line-height:1.35}.calendar-shortlist__head>p{color:var(--vip-muted);font-size:.75rem}.travel-calendar .calendar-shortlist__hint{max-inline-size:85ch;margin-block:.65rem 1.2rem;color:var(--vip-muted);font-size:.8rem;line-height:1.85}.calendar-shortlist__actions,.calendar-card__actions{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem}.calendar-shortlist button,.calendar-card__actions :is(button,a){display:inline-flex;align-items:center;justify-content:center;gap:.6rem;min-inline-size:0;max-inline-size:100%;min-block-size:2.75rem;padding:.65rem .9rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius-sm);background:var(--vip-white);color:var(--vip-navy);font:500 .78rem/1.65 var(--sans);text-transform:none;letter-spacing:normal;text-align:start;overflow-wrap:anywhere;cursor:pointer}.calendar-shortlist button:hover:not(:disabled),.calendar-card__actions :is(button,a):hover{border-color:var(--vip-navy);background:var(--vip-cream);color:var(--vip-navy)}.calendar-shortlist [data-shortlist-only],.calendar-card__actions button[aria-pressed=true]{color:var(--vip-white);background:var(--vip-navy);border-color:var(--vip-navy)}.calendar-shortlist button[data-shortlist-only]:hover{color:var(--vip-white);background:var(--vip-navy-deep)}.calendar-shortlist button:disabled{color:var(--vip-muted);opacity:.7;cursor:default}.calendar-shortlist .calendar-shortlist__clear{border-color:transparent;background:transparent;text-decoration:underline;text-underline-offset:.25em}.calendar-shortlist__actions>button>span,.calendar-card__actions>a>span{flex:none}.calendar-shortlist__status{color:var(--vip-muted);font-size:.8rem}.calendar-shortlist__status:not(:empty){margin-block-start:1rem}.calendar-shortlist__link{display:grid;gap:.5rem;min-inline-size:0;margin-block-start:.75rem}.calendar-shortlist__link label{font-size:.8rem;font-weight:550;overflow-wrap:anywhere}.calendar-shortlist__link input{inline-size:100%;min-inline-size:0;max-inline-size:100%;padding:.8rem;min-block-size:3rem;border:1px solid var(--vip-muted);border-radius:var(--vip-radius-sm);color:var(--vip-navy);background:var(--vip-cream);font:.8rem/1.5 var(--sans)}.calendar-card__actions{padding-block:.2rem 1.25rem}.calendar-card__actions a{border-color:transparent;padding-inline:.2rem;text-decoration:underline;text-underline-offset:.3em}.calendar-filter{display:grid;grid-template-columns:minmax(0,1.4fr) repeat(2,minmax(0,1fr));align-items:start;gap:1.2rem 1.5rem;margin:0;padding:1.5rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius);background:var(--vip-white)}.calendar-filter__search,.calendar-filter__field{display:grid;gap:.6rem;min-inline-size:0}.calendar-filter label{display:block;font-size:.88rem;font-weight:550;line-height:1.65}.calendar-filter p{color:var(--vip-muted);font-size:.75rem;line-height:1.8;max-inline-size:70ch}.calendar-filter__footer{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:1rem 2rem;border-block-start:1px solid var(--vip-line);padding-block-start:1rem}.calendar-filter :is(input,select){inline-size:100%;min-inline-size:0;max-inline-size:100%;min-block-size:3rem;padding:.8rem .9rem;border:1px solid var(--vip-muted);border-radius:var(--vip-radius-sm);color:var(--vip-navy);background:var(--vip-white);font:500 .85rem/1.5 var(--sans);text-transform:none;letter-spacing:normal}.calendar-filter input{appearance:none}.calendar-filter button,.calendar-empty button{min-block-size:2.75rem;max-inline-size:100%;padding:.65rem .85rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius-sm);color:var(--vip-navy);background:var(--vip-cream);font:500 .8rem/1.65 var(--sans);text-transform:none;letter-spacing:normal;cursor:pointer;overflow-wrap:anywhere}.calendar-filter button:hover:not(:disabled),.calendar-empty button:hover{border-color:var(--vip-navy);color:var(--vip-navy);background:var(--vip-gold-light)}.calendar-filter button:disabled{color:var(--vip-muted);cursor:default}.travel-calendar .calendar-count{font-size:.75rem;color:var(--vip-muted);margin-block:1.2rem 1.6rem}.calendar-empty{padding:1.5rem;margin-block-end:1.5rem;border-inline-start:2px solid var(--vip-card-gold);border-radius:var(--vip-radius-sm);background:var(--vip-white)}.calendar-empty p{font-size:.9rem;margin-block-end:.8rem}.calendar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.5rem}.calendar-card{display:flex;flex-direction:column;min-inline-size:0;overflow:hidden;scroll-margin-block-start:1.5rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius);background:var(--vip-white);box-shadow:var(--vip-shadow-soft)}.calendar-card__image{position:relative;background:var(--vip-cream)}.calendar-card__image img{display:block;inline-size:100%;block-size:auto;aspect-ratio:16/10;object-fit:cover}.calendar-card__image figcaption{padding:.6rem 1.4rem;color:var(--vip-muted);font-size:.6rem;line-height:1.7;border-block-end:1px solid var(--vip-line)}.calendar-card__month{position:absolute;inset-block-start:1rem;inset-inline-start:1rem;display:flex;align-items:center;gap:.7rem;max-inline-size:calc(100% - 2rem);padding:.55rem .8rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius-sm);background:var(--vip-cream);color:var(--vip-navy);font-size:.78rem;line-height:1.7;box-shadow:var(--vip-shadow-soft)}.calendar-card__copy{display:flex;flex-direction:column;flex:1;min-inline-size:0;padding:1.5rem 1.4rem;overflow-wrap:anywhere}.calendar-card__kind{color:var(--vip-muted);font-size:.65rem;line-height:1.8;letter-spacing:.06em;text-transform:uppercase}.calendar-card h3{font-size:1.85rem;line-height:1.2;margin-block:.65rem .8rem}.calendar-card__place{font-size:.82rem;font-weight:550;color:var(--vip-navy)}.travel-calendar .calendar-card__timing{color:var(--vip-muted);font-size:.75rem;line-height:1.8;margin-block:.4rem 1.1rem}.calendar-card__description{color:var(--vip-muted);font-size:.86rem;line-height:1.9}.calendar-card__planning{margin-block:1.3rem;padding:1rem;border-inline-start:2px solid var(--vip-gold);background:var(--vip-cream);border-radius:0 var(--vip-radius-sm) var(--vip-radius-sm) 0}[dir=rtl] .calendar-card__planning{border-radius:var(--vip-radius-sm) 0 0 var(--vip-radius-sm)}.travel-calendar .calendar-card__label{color:var(--vip-navy);font-size:.68rem;font-weight:550;line-height:1.8;margin-block-end:.45rem}.calendar-card__planning>p:last-child{color:var(--vip-muted);font-size:.79rem;line-height:1.9}.calendar-tips{margin:0 0 1.3rem;min-inline-size:0;border:1px solid var(--vip-line);border-radius:var(--vip-radius-sm);background:var(--vip-white)}.calendar-tips>summary{display:flex;align-items:center;justify-content:space-between;gap:1rem;min-block-size:3rem;padding:.9rem 1rem;color:var(--vip-navy);font:550 .8rem/1.7 var(--sans);list-style:none;cursor:pointer;overflow-wrap:anywhere}.calendar-tips>summary::-webkit-details-marker{display:none}.calendar-tips>summary:hover{background:var(--vip-cream)}.calendar-tips__toggle{flex:none;inline-size:1rem;text-align:center}.calendar-tips__toggle:before{content:"+";font-size:1.2rem;font-weight:400}.calendar-tips[open] .calendar-tips__toggle:before{content:"−"}.calendar-tips__body{padding:0 1rem 1rem;min-inline-size:0}.calendar-tips dl{display:grid;gap:1.1rem;margin:0;padding-block-start:1rem;border-block-start:1px solid var(--vip-line)}.calendar-tips dl>div{min-inline-size:0}.calendar-tips dt{margin:0 0 .4rem;color:var(--vip-navy);font-size:.76rem;font-weight:550;line-height:1.7}.calendar-tips dd{margin:0;color:var(--vip-muted);font-size:.79rem;line-height:1.9;overflow-wrap:anywhere}.calendar-card__sources{padding-block:1rem 1.25rem;border-block-start:1px solid var(--vip-line)}.calendar-card__sources ul{list-style:none;padding:0;margin:0}.calendar-card__sources li{margin:0}.calendar-card__sources a{display:inline-flex;align-items:baseline;gap:.5rem;min-block-size:2.75rem;max-inline-size:100%;color:var(--vip-navy);font-size:.75rem;line-height:1.8;text-underline-offset:.25em}.calendar-card__sources a>span{flex:none}.calendar-card__sources a:hover{background:transparent;color:var(--vip-navy);text-decoration-color:var(--vip-card-gold)}.travel-calendar .calendar-card__verified{color:var(--vip-muted);font-size:.65rem;line-height:1.8;margin-block-start:.5rem}.calendar-card__related{margin-block-start:auto;padding-block-start:1.2rem;border-block-start:1px solid var(--vip-line)}.calendar-card__related .calendar-link{align-items:baseline;font-size:.8rem}.calendar-filter[hidden],.calendar-card[hidden],.calendar-empty[hidden],[data-calendar-more][hidden]{display:none}.calendar-more{display:flex;justify-content:center;margin-block-start:2rem}.calendar-more .calendar-button{cursor:pointer}.calendar-next{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);align-items:center;gap:3rem;border-block-start:1px solid var(--vip-line);padding-block:clamp(2.5rem,5vw,4rem) clamp(3rem,6vw,5rem)}.calendar-next h2{font-size:clamp(1.8rem,3vw,2.7rem);line-height:1.2;margin-block:.75rem 1rem}.calendar-next>div>p:last-child{color:var(--vip-muted);font-size:.86rem;line-height:1.85;max-inline-size:65ch}.calendar-next__links{display:flex;flex-direction:column;align-items:start;gap:.8rem}.calendar-teaser{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);align-items:center;gap:clamp(1.5rem,4vw,3rem);padding:clamp(1.25rem,3vw,2rem);margin-block:0 4rem;border:1px solid var(--vip-line);border-radius:var(--vip-radius-lg);background:var(--vip-white)}.calendar-teaser__image{min-inline-size:0;overflow:hidden;border-radius:var(--vip-radius);background:var(--vip-cream)}.calendar-teaser__image img{display:block;inline-size:100%;block-size:auto;aspect-ratio:16/10;object-fit:cover}.calendar-teaser__image figcaption{padding:.6rem .8rem;color:var(--vip-muted);font-size:.6rem;line-height:1.7}.journal-hub .calendar-teaser h2{font-size:clamp(1.9rem,3vw,2.7rem);line-height:1.2;margin-block:.85rem 1rem}.calendar-teaser__copy>p:not(.calendar-eyebrow){color:var(--vip-muted);font-size:.88rem;line-height:1.9;margin-block-end:1.5rem;max-inline-size:52ch}:is(:lang(ar),:lang(hi),:lang(ja),:lang(zh)) :is(.calendar-eyebrow,.calendar-card__kind){letter-spacing:normal;text-transform:none}:is(:lang(ar),:lang(hi)) .travel-calendar :is(h1,h2,h3),:is(:lang(ar),:lang(hi)) .journal-hub .calendar-teaser h2{line-height:1.5;letter-spacing:normal}@media(max-width:63.9375em){.calendar-grid,.calendar-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.calendar-filter__search{grid-column:1/-1}.calendar-hero{gap:2rem}.calendar-hero h1{font-size:clamp(2.4rem,4.8vw,3.5rem)}.calendar-hero__image img{aspect-ratio:4/5}}@media(max-width:47.5em){.calendar-hero,.calendar-note,.calendar-collection__head,.calendar-next,.calendar-teaser{grid-template-columns:minmax(0,1fr);gap:1.5rem}.calendar-hero{padding-block-start:1.5rem;gap:2.25rem}.calendar-hero h1{font-size:clamp(2.5rem,8vw,3.5rem)}.calendar-hero__image img{aspect-ratio:16/11}.calendar-back{margin-block-end:1.25rem}.calendar-note{padding-block:1.75rem;gap:1rem}.calendar-collection__head{gap:1rem}.calendar-grid{grid-template-columns:minmax(0,1fr);gap:1.5rem}.calendar-filter{grid-template-columns:minmax(0,1fr);padding:1.2rem;gap:1.2rem}.calendar-filter__footer{align-items:start;flex-direction:column;gap:1rem}.calendar-shortlist{padding:1.2rem}.calendar-shortlist__actions>button{flex:1 1 12rem}.calendar-card__actions{align-items:stretch;flex-direction:column}.calendar-card__actions>a{align-self:start}.calendar-teaser{margin-block-end:2.5rem}.calendar-teaser__image img{aspect-ratio:16/9}}}@layer print{@media print{.calendar-hero{display:block;padding-block:0 1rem}.calendar-hero h1{font-size:2.5rem}.calendar-hero__image,.calendar-back,.calendar-hero .calendar-button,.calendar-count,.calendar-next__links,.calendar-teaser,.calendar-shortlist,.calendar-card__actions{display:none}[data-shortlist-view=true] .calendar-shortlist{display:block;padding:1rem}.calendar-shortlist__hint,.calendar-shortlist__actions,.calendar-shortlist__status,.calendar-shortlist__link{display:none}.calendar-note{display:block;padding-block:1rem}.calendar-note>.calendar-eyebrow{margin-block-end:.75rem}.calendar-collection{padding-block:1.5rem}.calendar-collection__head{display:block;margin-block-end:1.5rem}.calendar-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem}.calendar-card{break-inside:avoid;box-shadow:none}.calendar-card__image img{display:none}.calendar-card__month{position:static;box-shadow:none;margin:1rem 1rem .5rem}.calendar-card__image figcaption{display:none}.calendar-card h3{font-size:1.6rem}.calendar-tips::details-content{display:block;content-visibility:visible}.calendar-tips>.calendar-tips__body{display:block!important}.calendar-tips__toggle{display:none}.calendar-tips>summary{padding-block-end:0}.calendar-next{display:block;padding-block:1.5rem}}}
