body.single-magazine:has(.magazine-story){background:#fff}
body.single-magazine #primary.site-main:has(.magazine-story){max-width:1640px;padding-left:4vw;padding-right:4vw}
.magazine-story{--article-ink:#091513;--article-blue:#79bde8;--article-line:rgba(9,21,19,.22);color:var(--article-ink);font-family:'DM Sans',sans-serif;max-width:1500px;margin:auto}
.magazine-story-heading{max-width:920px;margin:0 auto 3rem;text-align:center}
.magazine-story-heading h1{font:300 clamp(2.5rem,5.2vw,5.4rem)/.96 'Manrope',sans-serif;letter-spacing:-.06em;margin:0}
.magazine-story-category,.magazine-story-date{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.magazine-story-category{color:var(--article-blue);margin-bottom:1.5rem}.magazine-story-date{margin-top:1.4rem;color:#68716e}
.magazine-story-hero{margin:0 0 4rem}.magazine-story-hero img{width:100%;height:auto;max-height:790px;object-fit:cover}
.magazine-story figcaption{padding:.7rem .1rem 0;color:#7a8380;font-size:.75rem;line-height:1.4}
.magazine-story-intro{max-width:850px;margin:0 auto 4rem}
.magazine-story-intro h2{font:300 clamp(2.5rem,4.3vw,4.5rem)/.98 'Manrope',sans-serif;letter-spacing:-.05em;margin:0 0 1.5rem}
.magazine-story-intro h3{color:var(--article-blue);font:400 clamp(1.15rem,1.8vw,1.65rem)/1.35 'Manrope',sans-serif;margin:0 0 3rem}
.magazine-story .article-content-section{margin:0 0 3rem}
.magazine-story .article-section-gallery{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:1rem;margin-bottom:3.5rem}
.article-section-gallery figure{margin:0;min-width:0}
.magazine-story .article-section-gallery img{height:clamp(260px,38vw,580px);object-fit:cover}
.magazine-story .article-section-content{max-width:1280px;margin:0 auto}
.magazine-story .article-section-content>p,.magazine-story .article-section-content>h2,.magazine-story .article-section-content>h3,.magazine-story .story-copy,.magazine-story .comparison-copy,.magazine-story .advice-item{max-width:850px;margin-left:auto;margin-right:auto}
.magazine-story .article-section-content h2{font:300 clamp(2.2rem,3.6vw,3.8rem)/1 'Manrope',sans-serif;letter-spacing:-.045em;margin-top:0;margin-bottom:.9rem}
.magazine-story .article-section-content h3{color:var(--article-blue);font:400 clamp(1.08rem,1.6vw,1.45rem)/1.35 'Manrope',sans-serif;margin:0 0 1.8rem}
.magazine-story .article-section-content h3.article-offer-heading{margin:3rem auto 1rem;color:#727b78;font:700 .82rem/1.35 'DM Sans',sans-serif;letter-spacing:.13em;text-transform:uppercase}
.magazine-story .entry-content p{color:#46514e;line-height:1.85}
.magazine-story .story-region,.magazine-story .resort-best-for,.magazine-story .advice-item h2{color:#727b78!important;font:700 .82rem/1.35 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase}
.magazine-story .advice-item{margin-bottom:2.25rem}.magazine-story .article-signoff{font-style:italic}
.magazine-story .story-buttons{display:flex;flex-wrap:wrap;gap:.75rem;margin:2rem 0}
.magazine-story .story-buttons a,.magazine-story .comparison-button{display:inline-flex;padding:.9rem 1.25rem;border:1px solid var(--article-blue);background:var(--article-blue);color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.magazine-story .comparison-button{margin:1rem 0 2.5rem}.magazine-story .inline-link{text-decoration:underline;text-underline-offset:.22em}
.single-magazine .entry-content .article-table-scroll,.single-magazine .entry-content .comparison-table-wrap{max-width:100%;overflow-x:auto;border:1px solid rgba(9,21,19,.22);margin:0 auto 2.5rem}
.single-magazine .entry-content table{width:100%;min-width:900px;border-collapse:collapse;table-layout:fixed;margin:0}
.single-magazine .entry-content th,.single-magazine .entry-content td{padding:1rem 1.05rem;border:1px solid rgba(9,21,19,.22);text-align:left;vertical-align:top;font:400 .76rem/1.55 'DM Sans',sans-serif;color:#4e5855}
.single-magazine .entry-content th{background:#f2f4f3;color:#505956;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.article-table-scroll:focus-visible{outline:2px solid #79bde8;outline-offset:3px}
@media(max-width:700px){.magazine-story-heading{margin-bottom:2.5rem}.magazine-story-intro{margin-bottom:3rem}.magazine-story .article-section-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem}.magazine-story .article-section-gallery figure:only-child{grid-column:1/-1}.magazine-story .article-section-gallery img{height:58vw;min-height:200px}.magazine-story .article-content-section{margin-bottom:2.5rem}.single-magazine .entry-content th,.single-magazine .entry-content td{font-size:.72rem}}

/* Match the reference article proportions while retaining the shared site header. */
body.single-magazine #primary.site-main:has(.magazine-story){max-width:none;padding:172px 0 0}
.magazine-story{max-width:none;font-size:16px;line-height:1.5}
.magazine-story-heading{max-width:1320px;padding:0 7vw;margin:0 auto 3rem}
.magazine-story-heading h1{max-width:920px;margin:auto}
.magazine-story-category{margin:0 0 1.5rem;line-height:1.5}
.magazine-story-date{margin:1.4rem 0 0;line-height:1.5}
.magazine-story-hero{max-width:1640px;margin:0 auto;padding:0 4vw}
.magazine-story-hero img{display:block;height:min(68vw,790px);object-position:center 52%}
.magazine-story-intro{max-width:1120px;margin:auto;padding:4rem 7vw}
body.single-magazine .magazine-story .entry-content p{margin-top:1rem;margin-bottom:1rem}
.magazine-story-intro>p{max-width:820px}
.magazine-story .article-content-section{max-width:1500px;margin:0 auto;padding:0 0 3rem}
.magazine-story .article-section-gallery{padding:0 5vw;margin:1rem auto 3.5rem}
.magazine-story .article-section-gallery img{height:clamp(320px,38vw,580px)}
.magazine-story .article-section-content>p,.magazine-story .article-section-content>h2,.magazine-story .article-section-content>h3{width:calc(100% - 10vw)}
.magazine-comparison .magazine-story-intro{padding-bottom:5rem}
.magazine-comparison .article-content-section{padding-bottom:7rem}
.magazine-comparison .article-section-content h2{font-size:clamp(2.3rem,3.8vw,4rem)}
body.single-magazine .magazine-story .entry-content .resort-best-for{margin:0 auto 1.7rem;font-size:.78rem;letter-spacing:.08em}
.magazine-story .comparison-button{margin:1rem 0 0;line-height:1.5}
.magazine-story .comparison-button:hover{background:#fff;color:var(--article-blue)}
body.single-magazine .magazine-story .entry-content p:has(>.comparison-button){margin-top:0;margin-bottom:2.5rem;line-height:0}
.single-magazine .entry-content .article-table-scroll,.single-magazine .entry-content .comparison-table-wrap{width:calc(100% - 10vw);max-width:1280px;margin:0 auto}
.single-magazine .entry-content th,.single-magazine .entry-content td{border:0;border-right:1px solid rgba(9,21,19,.22)}
.single-magazine .entry-content th:last-child,.single-magazine .entry-content td:last-child{border-right:0}
.magazine-comparison .article-content-section:last-child h2{font-size:clamp(2.4rem,4vw,4.2rem);margin-bottom:1.5rem}
@media(max-width:700px){
body.single-magazine #primary.site-main:has(.magazine-story){padding-top:140px}
.magazine-story-heading{padding:0 6vw;margin-bottom:2.5rem}
.magazine-story-heading h1{font-size:clamp(2.5rem,10vw,3.8rem)}
.magazine-story-hero{padding:0}.magazine-story-hero img{height:68svh;min-height:500px}
.magazine-story-hero figcaption{padding-left:1rem;padding-right:1rem}
.magazine-story-intro{padding:3rem 6vw}.magazine-comparison .magazine-story-intro{padding-bottom:3.5rem}
.magazine-story .article-section-gallery{padding:0 4vw}.magazine-story .article-section-gallery img{height:58vw;min-height:240px}
.magazine-comparison .article-content-section{padding-bottom:5rem}
.magazine-story .article-section-content>p,.magazine-story .article-section-content>h2,.magazine-story .article-section-content>h3{width:88%}
.single-magazine .entry-content .article-table-scroll,.single-magazine .entry-content .comparison-table-wrap{width:92%}
body.single-magazine .magazine-story .entry-content p:has(>.comparison-button){margin-bottom:2rem}
}

.magazine-contact-banner{padding:4.5rem 4vw;background:var(--cream)}.magazine-contact-panel{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:clamp(2rem,4vw,5rem);max-width:1600px;margin:0 auto;padding:2.7rem clamp(2rem,4vw,4.5rem);background:#fff;border-left:7px solid var(--scout-blue)}.magazine-contact-logo{width:112px;height:112px;object-fit:contain}.magazine-contact-copy{max-width:760px}.magazine-contact-copy h2{margin:0;font:400 clamp(1.7rem,2.5vw,2.7rem)/1.08 var(--display);letter-spacing:-.045em}.magazine-contact-copy p{max-width:680px;margin:1rem 0 0;color:#4a5552;font-size:.92rem;line-height:1.65}.magazine-contact-button{white-space:nowrap}
.magazine-related-stories{padding:6rem 5vw 8rem;background:#fff}.magazine-related-stories>h2{margin:0 auto 3rem;text-align:center;font:300 clamp(2.5rem,4vw,4rem)/.98 var(--display);letter-spacing:-.045em}.magazine-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;max-width:1400px;margin:auto}.magazine-related-grid a{display:block}.magazine-related-grid img{width:100%;aspect-ratio:1.22/1;object-fit:cover;filter:brightness(.9);transition:.3s}.magazine-related-grid a:hover img{filter:brightness(1)}.magazine-related-grid span{display:block;margin:1rem 0 .5rem;color:var(--scout-blue);font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.magazine-related-grid h3{margin:0;font:400 clamp(1.35rem,1.8vw,1.8rem)/1.15 var(--display)}
@media(max-width:900px){.magazine-contact-panel{grid-template-columns:auto 1fr}.magazine-contact-button{grid-column:2;justify-self:start}.magazine-related-grid{grid-template-columns:1fr 1fr}}
.magazine-contact-banner,.magazine-related-stories{--cream:#edf6fb;--scout-blue:#79bde8;--display:'Manrope',sans-serif;font:16px/1.5 'DM Sans',sans-serif;color:#091513}
.magazine-contact-banner{padding:2.5rem 4vw}
.magazine-contact-button{display:inline-flex;gap:2.8rem;padding:1rem 1.25rem;background:#79bde8;color:#091513;font-size:.8rem;font-weight:600;letter-spacing:.04em}
.magazine-related-stories{padding-top:3rem}
.magazine-related-stories>h2{margin-bottom:2.5rem}
.magazine-related-kicker{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.5rem;text-transform:uppercase;font-size:.7rem;font-weight:600;letter-spacing:.2em;color:#5c6663}
.magazine-related-kicker:before,.magazine-related-kicker:after{content:'';width:54px;height:1px;background:currentColor;opacity:.55}
body.single-magazine:has(.magazine-story) .site-footer{background:#07110f;color:#fff;padding:5rem 5vw 2rem;display:grid;grid-template-columns:1.25fr repeat(4,1fr) .9fr;align-items:start;gap:3rem;font-family:'DM Sans',sans-serif}
body.single-magazine .site-footer .footer-logo-full{display:block;width:190px;height:auto}
body.single-magazine .site-footer .footer-column{display:flex;flex-direction:column;gap:.62rem}
body.single-magazine .site-footer h2{margin:0 0 1rem;font:600 .72rem/1 'DM Sans',sans-serif;letter-spacing:.16em;text-transform:uppercase;color:#79bde8}
body.single-magazine .site-footer .footer-column a{align-self:flex-start;font-size:.78rem;color:rgba(255,255,255,.72)}
body.single-magazine .site-footer .copyright{grid-column:1/-1;padding-top:3rem;margin-top:2rem;border-top:1px solid rgba(255,255,255,.18);font-size:.7rem;color:rgba(255,255,255,.42)}
@media(max-width:1100px){body.single-magazine:has(.magazine-story) .site-footer{grid-template-columns:repeat(3,1fr)}body.single-magazine .site-footer .footer-brand{grid-column:1/-1}}
@media(max-width:700px){
.magazine-contact-banner{padding:2rem 4vw}.magazine-contact-panel{display:flex;flex-direction:column;align-items:flex-start;gap:1.5rem;padding:2rem}.magazine-contact-logo{width:84px;height:84px}
.magazine-related-stories{padding:2.5rem 6vw 5rem}.magazine-related-grid{grid-template-columns:1fr;gap:3rem}
body.single-magazine:has(.magazine-story) .site-footer{grid-template-columns:1fr 1fr;gap:3rem 2rem}
}
.magazine-story-intro .article-body-copy{max-width:820px}
.magazine-related-grid a{color:#091513;text-decoration:none}
.magazine-related-grid img{display:block}
.magazine-contact-banner,.magazine-related-stories{max-width:none;margin:0}
.magazine-contact-button{text-decoration:none}

/* Advice articles use the reference's narrower, continuous text column. */
.magazine-story:has(.advice-item) .magazine-story-heading,
.magazine-story:has(.advice-item) .magazine-story-intro{width:calc(100% - 10vw);max-width:850px;padding-left:0;padding-right:0}
.magazine-story:has(.advice-item) .article-content-section:has(.advice-item){padding-bottom:1.5rem}
.magazine-story:has(.advice-item) .advice-item{width:calc(100% - 10vw);max-width:850px;margin:0 auto;padding:0 0 2.25rem}
.magazine-story:has(.advice-item) .advice-item h2{margin:0 0 .85rem;letter-spacing:.13em}
body.single-magazine .magazine-story .entry-content .advice-item p{margin:0 0 1.2rem}
.magazine-story:has(.advice-item) .article-section-gallery{margin-bottom:4rem}
.magazine-story:has(.advice-item) .article-content-section:last-child{padding-bottom:8rem}
body.single-magazine .magazine-story:has(.advice-item) .entry-content .article-signoff{color:#091513;font:italic 1.4rem 'Manrope',sans-serif;margin-top:1em;margin-bottom:1em}
@media(max-width:700px){
.magazine-story:has(.advice-item) .magazine-story-heading,
.magazine-story:has(.advice-item) .magazine-story-intro,
.magazine-story:has(.advice-item) .advice-item{width:88%}
.magazine-story:has(.advice-item) .advice-item{padding-bottom:1.8rem}
.magazine-story:has(.advice-item) .advice-item h2{font-size:.78rem}
.magazine-story:has(.advice-item) .article-section-gallery{margin-bottom:3rem}
}

/* Itinerary gallery proportions: the gallery itself is outside the CMS text editor. */
.magazine-story:has(.story-copy) .article-section-gallery{margin-top:0;margin-bottom:4rem}
.magazine-story:has(.story-copy) .entry-content .article-content-section .article-gallery--square_square img{height:clamp(330px,40vw,610px)}
.magazine-story:has(.story-copy) .article-gallery--landscape{width:min(100%,1050px);padding:0}
.magazine-story:has(.story-copy) .entry-content .article-content-section .article-gallery--landscape img{height:clamp(390px,48vw,650px)}
@media(max-width:700px){
.magazine-story:has(.story-copy) .entry-content .article-content-section .article-section-gallery img{height:62vw;min-height:260px}
.magazine-story:has(.story-copy) .article-section-gallery{margin-bottom:3rem}
.magazine-story:has(.story-copy) .story-copy{width:92%}
}
