/* Hotels & Travel: editorial opening, venue spread and a readable hotel directory. */
.travel-page{overflow:clip}
.travel-hero{display:grid;grid-template-columns:1.12fr 1fr;gap:70px;align-items:center;padding-block:76px 94px}
.travel-hero-copy{position:relative;z-index:2}
.travel-hero-copy>.eyebrow{font-size:14px;letter-spacing:.15em;margin-bottom:35px}
.travel-hero-copy>.eyebrow span{padding-inline:9px}
.travel-hero h1{font-size:clamp(76px,8.7vw,126px);line-height:.87;letter-spacing:-.047em;max-width:660px}
.travel-hero h1 em{display:inline-block;color:var(--olive);margin:6px 0 0 13%}
.travel-hero-intro{font-size:16px;line-height:1.85;margin:37px 0 19px}
.travel-hero-links{display:flex;flex-direction:column;align-items:flex-start;gap:5px}
.travel-hero-links .text-link{font-size:14px;gap:26px}
.travel-hero-art{position:relative;padding:0 24px 32px 0;margin-top:30px}
.travel-hero-photo{position:relative;transform:rotate(3deg);width:100%;max-width:470px;margin-left:auto;background:var(--paper);padding:11px 11px 0;box-shadow:0 8px 35px #302d2814;transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.travel-hero-photo>img{width:100%;aspect-ratio:.77;object-fit:cover;object-position:50% 73%}
.travel-hero-photo>figcaption{font:italic 26px/1.2 var(--serif);text-align:right;padding:18px 12px 20px}

.travel-date-stamp{position:absolute;left:-31px;bottom:15px;width:132px;height:132px;border-radius:50%;background:var(--olive);color:var(--ivory);border:1px solid var(--gold);outline:6px solid var(--ivory);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:8px;transform:rotate(-12deg)}
.travel-date-stamp>span{font-size:14px;letter-spacing:.04em;font-weight:600}
.travel-date-stamp>strong{font:400 37px/.85 var(--serif);letter-spacing:-.03em}
.travel-venue{background:var(--olive);color:var(--ivory);position:relative}
.travel-venue-inner{display:grid;grid-template-columns:1.2fr 1fr;gap:100px;padding-block:84px 88px;align-items:center}
.travel-venue h2{font-size:clamp(66px,6.4vw,92px);line-height:.94;max-width:590px}
.travel-venue-heading>p:not(.eyebrow){font-size:16px;line-height:1.85;margin:30px 0 0}
.travel-venue-signature{font:italic 30px/1.1 var(--serif);padding-top:27px;color:var(--ivory);opacity:.8}
.travel-address-card{position:relative;background:var(--ivory);color:var(--charcoal);padding:48px;box-shadow:12px 12px 0 #f5f0e620}
.travel-address-card:before{content:'';position:absolute;inset:15px;border:1px solid var(--line);pointer-events:none}
.travel-address-card>.eyebrow{font-size:14px;margin-bottom:23px}
.travel-address-card>h3{font-size:45px;line-height:1;max-width:300px;margin-bottom:25px}
.travel-address-card>address{font-size:16px;line-height:1.8;margin-bottom:12px}
.travel-phone{display:inline-flex;align-items:center;min-height:44px;font-size:16px;font-variant-numeric:tabular-nums;text-decoration-thickness:1px}
.travel-address-card>.text-link{display:flex;margin-top:13px;gap:45px}
.travel-address-card>.travel-directions-note{font-size:14px;line-height:1.8;max-width:235px;margin:24px 0 0}
.travel-directory{padding-block:100px 50px}
.travel-directory-heading{display:grid;grid-template-columns:1.65fr 1fr;gap:80px;align-items:end;margin-bottom:65px}
.travel-directory-heading h2{font-size:clamp(58px,5.6vw,81px);line-height:.96;max-width:760px}
.travel-directory-heading h2 em{font-size:.82em;white-space:nowrap}
.travel-directory-heading>.travel-hotel-note{font-size:16px;line-height:1.85;max-width:300px;margin:0 0 5px auto;padding-left:23px;border-left:1px solid var(--gold)}
.travel-hotel{display:grid;grid-template-columns:56px 1.1fr 1fr .92fr;gap:35px;border-top:1px solid var(--line);padding:42px 0 46px;position:relative;transition:background .25s}
.travel-hotel:last-child{border-bottom:1px solid var(--line)}
.travel-hotel:before{content:'';position:absolute;inset:0 -22px;background:var(--paper);opacity:0;z-index:-1;transition:opacity .25s}
.travel-hotel-number{font:italic 52px/.95 var(--serif);color:var(--olive);padding-top:1px}
.travel-hotel-name>.eyebrow,.travel-hotel-amenities>.eyebrow{font-size:14px;letter-spacing:.13em;margin-bottom:16px}
.travel-hotel-name h3{font-size:35px;line-height:1.04;max-width:285px}
.travel-hotel-contact{padding-top:29px}
.travel-hotel-contact address{font-size:16px;line-height:1.8;margin-bottom:7px}
.travel-hotel-contact .travel-phone{font-size:16px;margin-bottom:7px}
.travel-hotel-links{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.travel-hotel-links .text-link{font-size:14px;gap:20px;min-height:44px;padding-block:10px}
.travel-hotel-amenities{padding-top:2px}
.travel-hotel-amenities ul{margin:0;font-size:16px;line-height:1.8}
.travel-hotel-amenities li{padding-block:7px;border-top:1px solid #41453620}
.travel-hotel-amenities li:first-child{padding-top:0;border-top:0}
.travel-planning{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-block:70px 110px}
.travel-planning-photo{position:relative;margin-right:12px;transform:rotate(-3deg);background:var(--paper);padding:10px 10px 0;transition:transform .5s}
.travel-planning-photo img{aspect-ratio:1.35;width:100%;object-fit:cover;object-position:50% 55%}
.travel-planning-photo figcaption{padding:16px 10px 18px;text-align:right;font:italic 22px/1.2 var(--serif)}
.travel-planning-copy h2{font-size:clamp(54px,5vw,72px);line-height:.98;margin-bottom:23px}
.travel-planning-copy>p:not(.eyebrow){font-size:16px;max-width:370px}
.travel-planning-links{display:flex;flex-direction:column;align-items:flex-start;gap:7px}
.travel-planning-links .text-link{font-size:14px}
@media(hover:hover){.travel-hero-photo:hover{transform:rotate(0deg) translateY(-5px)}.travel-planning-photo:hover{transform:rotate(0deg)}.travel-hotel:hover:before{opacity:1}.travel-hotel:hover .travel-hotel-number{font-style:normal}}
@media(max-width:1150px){.travel-hero{gap:50px}.travel-hero h1{font-size:101px}.travel-hero-copy>.eyebrow{max-width:250px;line-height:1.8}.travel-hero-art{padding-right:10px}.travel-date-stamp{width:124px;height:124px;left:-25px}.travel-date-stamp>strong{font-size:32px}.travel-date-stamp>span{font-size:14px}.travel-venue-inner{gap:65px}.travel-address-card{padding:42px 35px}.travel-venue h2{font-size:79px}.travel-directory-heading{gap:45px}.travel-directory-heading h2{font-size:69px}.travel-hotel{grid-template-columns:46px 1.08fr 1fr .84fr;gap:25px}.travel-hotel-name h3{font-size:31px}.travel-hotel-number{font-size:44px}.travel-planning{gap:65px}}
@media(max-width:980px){.travel-hero{gap:35px;grid-template-columns:1fr .92fr;padding-block:60px 80px}.travel-hero h1{font-size:82px}.travel-hero-copy>.eyebrow{font-size:14px;margin-bottom:28px}.travel-hero-intro{font-size:16px;line-height:1.8;margin-top:29px}.travel-hero-photo{padding:8px 8px 0}.travel-hero-photo>figcaption{font-size:21px;padding:14px 5px}.travel-date-stamp{width:120px;height:120px;left:-18px;bottom:0;gap:6px}.travel-date-stamp>strong{font-size:27px}.travel-date-stamp>span{font-size:14px}.travel-hero-links .text-link{font-size:14px;gap:16px}.travel-venue-inner{gap:42px;padding-block:70px;grid-template-columns:1fr 1fr}.travel-venue h2{font-size:62px}.travel-address-card{padding:35px 28px}.travel-address-card>h3{font-size:36px}.travel-address-card>address{font-size:16px}.travel-address-card>.travel-phone{font-size:16px}.travel-address-card>.text-link{font-size:14px;gap:30px}.travel-address-card:before{inset:11px}.travel-directory-heading{grid-template-columns:1fr;gap:27px;margin-bottom:42px}.travel-directory-heading>.travel-hotel-note{max-width:450px;margin:0;padding-left:18px}.travel-directory-heading h2{font-size:73px}.travel-hotel{grid-template-columns:44px 1.3fr 1fr;gap:27px;align-items:start}.travel-hotel-name{grid-column:2;grid-row:1}.travel-hotel-name h3{font-size:34px;max-width:360px}.travel-hotel-contact{grid-column:2;grid-row:2;padding-top:0}.travel-hotel-amenities{grid-column:3;grid-row:1/span 2;padding-top:2px}.travel-hotel-number{grid-row:1/span 2}.travel-hotel-amenities>.eyebrow{margin-bottom:25px}.travel-hotel-links{flex-direction:row;flex-wrap:wrap;gap:7px 22px}.travel-planning{gap:45px;padding-block:55px 85px}.travel-planning-copy h2{font-size:57px}.travel-planning-copy>p:not(.eyebrow){font-size:16px}.travel-planning-photo figcaption{font-size:19px}.travel-planning-photo img{aspect-ratio:1.05}}
@media(max-width:640px){.travel-hero{grid-template-columns:1fr;gap:48px;padding-block:47px 60px}.travel-hero-copy>.eyebrow{max-width:none;font-size:14px;letter-spacing:.13em;margin-bottom:28px}.travel-hero-copy>.eyebrow span{padding-inline:5px}.travel-hero h1{font-size:clamp(68px,15.9vw,99px);line-height:.9;max-width:480px}.travel-hero h1 em{margin-left:17%}.travel-hero-intro{font-size:16px;line-height:1.8;margin:27px 0 17px}.travel-hero-links{flex-direction:row;flex-wrap:wrap;gap:0 22px}.travel-hero-links .text-link{font-size:14px;gap:13px}.travel-hero-art{max-width:380px;width:calc(100% - 24px);margin:8px auto 0;padding:0 0 20px}.travel-hero-photo{width:100%;transform:rotate(3deg);max-width:none}.travel-hero-photo>img{aspect-ratio:.96;object-position:50% 72%}.travel-hero-photo>figcaption{font-size:23px;padding:15px 9px 17px}.travel-date-stamp{width:120px;height:120px;left:-18px;bottom:4px}.travel-date-stamp>strong{font-size:30px}.travel-date-stamp>span{font-size:14px}.travel-venue-inner{grid-template-columns:1fr;gap:36px;padding-block:57px 64px}.travel-venue h2{font-size:68px;line-height:.95}.travel-venue-heading>.eyebrow{font-size:14px;margin-bottom:24px}.travel-venue-heading>p:not(.eyebrow){font-size:16px;margin-top:24px}.travel-venue-signature{position:static;width:max-content;max-width:100%;margin:24px 3px 0 auto;transform:rotate(-6deg);font-size:26px;padding:0 0 5px;white-space:nowrap}.travel-address-card{padding:37px 30px;box-shadow:8px 8px 0 #f5f0e620}.travel-address-card>h3{font-size:41px;max-width:260px;margin-bottom:23px}.travel-address-card>address{font-size:16px}.travel-address-card>.travel-phone{font-size:16px}.travel-address-card>.text-link{margin-top:8px;font-size:14px}.travel-address-card>.travel-directions-note{margin-top:18px}.travel-directory{padding-block:66px 28px}.travel-directory-heading{gap:24px;margin-bottom:30px}.travel-directory-heading h2{font-size:60px;line-height:.95}.travel-directory-heading h2 em{font-size:.91em;white-space:normal;display:inline-block;margin-top:3px;max-width:390px}.travel-directory-heading>.travel-hotel-note{font-size:16px;line-height:1.8;padding-left:16px}.travel-hotel{grid-template-columns:36px 1fr;gap:22px 16px;padding:31px 0 35px}.travel-hotel-number{font-size:36px;padding-top:0;grid-row:1}.travel-hotel-name{grid-column:2;grid-row:1}.travel-hotel-name>.eyebrow{font-size:14px;margin-bottom:12px}.travel-hotel-name h3{font-size:35px;line-height:1.03;max-width:370px}.travel-hotel-contact{grid-column:2;grid-row:2}.travel-hotel-contact address{font-size:16px}.travel-hotel-contact .travel-phone{font-size:16px;margin-bottom:2px}.travel-hotel-links{gap:4px 18px}.travel-hotel-links .text-link{font-size:14px;gap:12px}.travel-hotel-amenities{grid-column:2;grid-row:3;padding-top:1px}.travel-hotel-amenities>.eyebrow{font-size:14px;margin-bottom:13px}.travel-hotel-amenities ul{display:grid;grid-template-columns:1fr 1fr;gap:7px 18px;font-size:16px;line-height:1.6}.travel-hotel-amenities li,.travel-hotel-amenities li:first-child{padding:0 0 0 10px;border:0;position:relative}.travel-hotel-amenities li:before{content:'·';position:absolute;left:0;top:0;color:var(--olive);font-weight:700}.travel-planning{grid-template-columns:1fr;gap:38px;padding-block:43px 70px}.travel-planning-photo{width:calc(100% - 12px);margin:0 auto}.travel-planning-photo img{aspect-ratio:1.4}.travel-planning-photo figcaption{font-size:21px}.travel-planning-copy h2{font-size:59px;margin-bottom:22px}.travel-planning-copy>p:not(.eyebrow){font-size:16px;max-width:350px}.travel-planning-links{gap:7px}.travel-planning-links .text-link{font-size:14px}}
@media(max-width:370px){.travel-hero-copy>.eyebrow{font-size:14px}.travel-hero h1{font-size:64px}.travel-hero-links{gap:0 14px}.travel-hero-links .text-link{font-size:14px;gap:10px}.travel-venue h2{font-size:59px}.travel-venue-signature{font-size:24px}.travel-address-card{padding-inline:25px}.travel-address-card>h3{font-size:38px}.travel-directory-heading h2{font-size:54px}.travel-hotel{gap:20px 14px;grid-template-columns:28px 1fr}.travel-hotel-number{font-size:31px}.travel-hotel-name h3{font-size:32px}.travel-hotel-links{gap:3px 14px}.travel-hotel-links .text-link{font-size:14px;gap:9px}.travel-hotel-amenities ul{gap:7px 10px}.travel-planning-copy h2{font-size:55px}}
@media(prefers-reduced-motion:reduce){.travel-hero-photo,.travel-planning-photo,.travel-hotel,.travel-hotel:before{transition:none}.travel-hero-photo:hover{transform:rotate(3deg)}.travel-planning-photo:hover{transform:rotate(-3deg)}}
.motion-reduced .travel-hero-photo:hover{transform:rotate(3deg)}
.motion-reduced .travel-planning-photo:hover{transform:rotate(-3deg)}
