.gm-site {--orange: #ed5412; --wood: #1f1c14; --red: #d62112; --mint: #eff5e6; --navy: #2d3151; --forest: #128d50; --sun: #f8981c; --background: #fff; --foreground: var(--wood); --card: #fff; --line: #e5e4de;}
.gm-site .dark {--background: #1f1c14; --foreground: #fff; --card: #29271f; --line: #4d4a40;}
.gm-site * {box-sizing: border-box;}
.gm-site {scroll-behavior: smooth; scroll-padding-top: 90px;}
.gm-site {margin: 0; color: var(--wood); background: #fff; font-family: 'DM Sans',sans-serif; font-size: 16px; line-height: 1.6;}
.gm-site button,.gm-site input,.gm-site select,.gm-site textarea {font: inherit;}
.gm-site button,.gm-site a {-webkit-tap-highlight-color: transparent;}
.gm-site button {cursor: pointer; color: inherit;}
.gm-site a {color: inherit; text-decoration: none;}
.gm-site img {display: block; max-width: 100%;}
.gm-site h1,.gm-site h2,.gm-site h3,.gm-site h4,.gm-site p {margin: 0;}
.gm-site h1,.gm-site h2,.gm-site h3,.gm-site h4 {font-family: Fraunces,Georgia,serif; font-weight: 800; line-height: 1.13; letter-spacing: -.025em;}
.gm-site :focus-visible {outline: 3px solid var(--orange); outline-offset: 4px;}
.gm-site .wrap {width: min(1240px,calc(100% - 64px)); margin: auto;}
.gm-site .skip {position: fixed; top: -60px; z-index: 100; background: var(--wood); color: white; padding: 12px;}
.gm-site .skip:focus {top: 0;}
.gm-site .eyebrow {font-family: Jost,sans-serif; font-size: 14px; font-weight: 600; text-transform: uppercase; letter-spacing: .14em;}
.gm-site .orange {color: var(--orange);}
.gm-site .btn {display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 48px; padding: 11px 22px; background: var(--orange); color: #fff; border: 1px solid var(--orange); border-radius: 5px; font-family: Jost,sans-serif; font-weight: 600; transition: background .2s;}
.gm-site .btn:hover {background: #ce430a;}
.gm-site .btn.secondary {background: transparent; border-color: var(--line); color: var(--wood);}
.gm-site .btn.secondary:hover {background: var(--mint);}
.gm-site .text-link {font-family: Jost,sans-serif; font-weight: 600; font-size: 16px; text-decoration: underline; text-underline-offset: 5px;}
.gm-site .text-link:hover {color: var(--orange);}
.gm-site .topbar {background: var(--wood); color: #fff; font-family: Jost,sans-serif; font-size: 13px; padding: 7px 0;}
.gm-site .topbar .wrap {display: flex; align-items: center; justify-content: space-between; gap: 15px;}
.gm-site .topbar span,.gm-site .topbar a {display: flex; align-items: center; gap: 8px;}
.gm-site .masthead {display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 27px 0;}
.gm-site .brand-logo {width: 218px; height: auto;}
.gm-site .brand-tagline {font-family: Fraunces,Georgia,serif; font-size: 22px; font-weight: 600;}
.gm-site .brand-tagline small {display: block; font-family: Jost,sans-serif; font-size: 12px; letter-spacing: .17em; font-weight: 500; text-transform: uppercase; margin-top: 5px;}
.gm-site .masthead .btn {min-height: 44px; padding: 9px 19px;}
.gm-site .nav-row {border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); background: white; position: sticky; top: 0; z-index: 30;}
.gm-site .nav-inner {display: flex; align-items: center; justify-content: space-between; min-height: 56px; gap: 20px;}
.gm-site .gm-main-nav {display: flex; align-items: center; gap: 31px; font-family: Jost,sans-serif; font-size: 16px; font-weight: 500;}
.gm-site .gm-main-nav a {padding: 17px 0; position: relative;}
.gm-site .gm-main-nav a:hover,.gm-site .gm-main-nav a.active {color: var(--orange);}
.gm-site .gm-main-nav a.active:after {position: absolute; content: ''; height: 3px; bottom: 0; left: 0; right: 0; background: var(--orange);}
.gm-site .nav-tools {display: flex; align-items: center; gap: 15px;}
.gm-site .icon-btn {background: none; border: 0; display: inline-flex; justify-content: center; align-items: center; min-width: 42px; min-height: 42px; border-radius: 4px;}
.gm-site .icon-btn:hover {background: var(--mint);}
.gm-site .mobile-menu {display: none;}
.gm-site .mobile-nav {display: grid; gap: 12px;}
.gm-site .mobile-nav a {padding: 10px 0; border-bottom: 1px solid var(--line); font-family: Jost,sans-serif;}
.gm-site .ticker {display: flex; gap: 14px; align-items: center; margin: 23px auto; font-family: Jost,sans-serif; font-size: 14px;}
.gm-site .ticker-label {background: var(--mint); padding: 4px 10px; color: #236a40; font-weight: 600; border-radius: 3px; white-space: nowrap;}
.gm-site .ticker a {overflow: hidden; text-overflow: ellipsis; white-space: nowrap;}
.gm-site .ticker svg {flex-shrink: 0;}
.gm-site .hero-grid {height: 526px; display: grid; grid-template-columns: 1.53fr 1fr; grid-template-rows: 1fr 1fr; gap: 14px;}
.gm-site .feature-card {position: relative; overflow: hidden; border-radius: 7px; background: var(--wood); color: white; display: flex; align-items: flex-end; min-height: 0;}
.gm-site .feature-card:after {content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,transparent 26%,rgba(14,20,9,.8) 100%); pointer-events: none;}
.gm-site .feature-card img {width: 100%; height: 100%; object-fit: cover; position: absolute; inset: 0; transition: transform .6s;}
.gm-site .feature-card:hover img {transform: scale(1.035);}
.gm-site .feature-card.main {grid-row: span 2;}
.gm-site .feature-content {position: relative; z-index: 2; padding: 27px 29px; width: 100%;}
.gm-site .feature-content h1 {font-size: clamp(35px,3.4vw,49px); max-width: 580px; margin: 14px 0 11px; text-wrap: balance;}
.gm-site .feature-content h2 {font-size: 29px; margin: 10px 0 8px; max-width: 390px; text-wrap: balance;}
.gm-site .feature-content p {font-size: 16px; line-height: 1.5; max-width: 430px; opacity: .94;}
.gm-site .card-tag {font-family: Jost,sans-serif; font-size: 12px; font-weight: 600; text-transform: uppercase; letter-spacing: .1em; display: inline-flex; padding: 4px 10px; background: var(--orange); border-radius: 3px; color: white;}
.gm-site .card-tag.green {background: #168653;}
.gm-site .card-tag.sun {background: var(--sun); color: var(--wood);}
.gm-site .meta {display: flex; align-items: center; gap: 11px; font-family: Jost,sans-serif; font-size: 13px; font-weight: 400; margin-top: 17px;}
.gm-site .meta span {display: inline-flex; align-items: center; gap: 5px;}
.gm-site .promise-strip {display: flex; justify-content: space-between; padding: 20px 0; border-bottom: 1px solid var(--line); font-family: Jost,sans-serif; font-size: 15px; color: #545447;}
.gm-site .promise-strip span {display: flex; align-items: center; gap: 8px;}
.gm-site .promise-strip svg {color: #21784a;}
.gm-site .section {padding: 55px 0;}
.gm-site .section-head {display: flex; align-items: flex-end; justify-content: space-between; gap: 22px; margin-bottom: 27px;}
.gm-site .section-head h2 {font-size: 35px;}
.gm-site .section-head .eyebrow {margin-bottom: 9px;}
.gm-site .section-head p {color: #6b695f; max-width: 560px; margin-top: 12px;}
.gm-site .story-grid {display: grid; grid-template-columns: repeat(3,1fr); gap: 28px;}
.gm-site .story-thumb {position: relative; border-radius: 6px; overflow: hidden; aspect-ratio: 1.55; background: var(--mint);}
.gm-site .story-thumb img {width: 100%; height: 100%; object-fit: cover; transition: transform .5s;}
.gm-site .story-card:hover img {transform: scale(1.04);}
.gm-site .story-thumb .card-tag {position: absolute; left: 13px; bottom: 13px;}
.gm-site .story-card h3 {font-size: 24px; margin: 17px 0 10px;}
.gm-site .story-card p {font-size: 16px; color: #6b695f; line-height: 1.6;}
.gm-site .story-card .meta {color: #6b695f; margin: 12px 0 0;}
.gm-site .adventure-note {background: var(--mint); border-radius: 6px; padding: 26px; display: flex; flex-direction: column; justify-content: center; gap: 13px; border: 1px solid #d8e5c9;}
.gm-site .adventure-note h3 {font-size: 27px;}
.gm-site .adventure-note p {color: #56614c; font-size: 16px;}
.gm-site .adventure-note svg {color: #216f40;}
.gm-site .map-section {background: var(--mint); padding: 56px 0;}
.gm-site .map-section .section-head {margin-bottom: 22px;}
.gm-site .map-section h2 {font-size: 38px;}
.gm-site .map-section .section-head p {color: #59654d;}
.gm-site .map-tabs {display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px;}
.gm-site .map-filter {display: flex; gap: 7px; align-items: center; background: #fff; border: 1px solid #d9e2ce; border-radius: 30px; padding: 8px 15px; font-family: Jost,sans-serif; font-size: 14px; min-height: 42px;}
.gm-site .map-filter:hover {border-color: #7f9e6c;}
.gm-site .map-filter[aria-pressed=true] {background: var(--wood); color: white; border-color: var(--wood);}
.gm-site .map-layout {display: grid; grid-template-columns: minmax(0,1fr) 310px; background: white; border: 1px solid #d6dfcb; border-radius: 9px; overflow: hidden; min-height: 555px;}
.gm-site .map-canvas {position: relative; overflow: hidden; background: #e7eddd; min-height: 550px; touch-action: pan-y;}
.gm-site .map-art {position: relative; width: 100%; height: 100%; min-height: 550px; transform-origin: center; transition: transform .2s; user-select: none;}
.gm-site .map-art>img {width: 100%; height: 100%; object-fit: fill; position: absolute; inset: 0; pointer-events: none;}
.gm-site .map-pin {position: absolute; transform: translate(-50%,-100%); width: 34px; height: 41px; border: 0; background: var(--wood); color: white; border-radius: 50% 50% 50% 0; rotate: -45deg; box-shadow: 0 2px 7px #0002; display: flex; align-items: center; justify-content: center; z-index: 3;}
.gm-site .map-pin svg {rotate: 45deg; width: 17px; height: 17px;}
.gm-site .map-pin:hover,.gm-site .map-pin.selected {background: var(--orange); z-index: 6; scale: 1.13;}
.gm-site .pin-name {position: absolute; left: 36px; top: -7px; rotate: 45deg; white-space: nowrap; background: #fff; border: 1px solid #ddd; color: var(--wood); padding: 4px 8px; border-radius: 4px; font-family: Jost,sans-serif; font-size: 12px; pointer-events: none; opacity: 0; box-shadow: 0 1px 4px #0001;}
.gm-site .map-pin:hover .pin-name,.gm-site .map-pin:focus-visible .pin-name {opacity: 1;}
.gm-site .map-controls {position: absolute; top: 14px; left: 14px; z-index: 8; display: flex; flex-direction: column; border: 1px solid #d3d9ca; box-shadow: 0 2px 4px #0001; border-radius: 4px; overflow: hidden; background: #fff;}
.gm-site .map-controls button {background: #fff; border: 0; min-width: 38px; min-height: 38px; display: flex; align-items: center; justify-content: center;}
.gm-site .map-controls button:hover {background: var(--mint);}
.gm-site .map-controls button:disabled {opacity: .4; cursor: default;}
.gm-site .map-controls button+button {border-top: 1px solid #e5e5de;}
.gm-site .map-count {position: absolute; bottom: 12px; left: 14px; z-index: 8; font-size: 12px; font-family: Jost,sans-serif; background: white; border-radius: 3px; padding: 4px 8px;}
.gm-site .map-sidebar {background: #fff; padding: 21px; display: flex; flex-direction: column;}
.gm-site .map-sidebar .photo {height: 155px; object-fit: cover; border-radius: 5px; width: 100%; margin-bottom: 19px;}
.gm-site .map-sidebar h3 {font-size: 26px; margin: 9px 0 12px;}
.gm-site .map-sidebar p {font-size: 15px; color: #66695b; line-height: 1.65;}
.gm-site .place-type {display: flex; align-items: center; gap: 7px; font-family: Jost,sans-serif; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--orange); font-weight: 600;}
.gm-site .map-detail-meta {font-size: 14px; display: flex; gap: 8px; align-items: center; background: var(--mint); border-radius: 4px; padding: 9px 10px; margin: 16px 0;}
.gm-site .map-detail-meta svg {flex-shrink: 0;}
.gm-site .map-sidebar .btn {font-size: 15px; width: 100%; margin: 5px 0;}
.gm-site .map-sidebar .text-link {font-size: 14px; margin: 8px 0; text-align: center;}
.gm-site .map-place-list {padding-top: 17px; margin-top: 15px; border-top: 1px solid var(--line);}
.gm-site .map-place-list label {font-family: Jost,sans-serif; font-size: 14px; display: block; margin-bottom: 7px;}
.gm-site .map-select {width: 100%; height: 42px; border: 1px solid var(--line); border-radius: 4px; padding: 6px 9px; background: #fff;}
.gm-site .map-foot {display: flex; justify-content: space-between; gap: 20px; margin-top: 12px; font-size: 13px; color: #667257;}
.gm-site .map-foot a {text-decoration: underline; text-underline-offset: 3px;}
.gm-site .stays-layout {display: grid; grid-template-columns: 1fr 1fr; gap: 32px;}
.gm-site .stay-feature {border-radius: 7px; overflow: hidden; position: relative; min-height: 350px; background: var(--wood); color: white; display: flex; align-items: flex-end;}
.gm-site .stay-feature>img {position: absolute; width: 100%; height: 100%; object-fit: cover;}
.gm-site .stay-feature:after {content: ''; position: absolute; inset: 0; background: linear-gradient(180deg,transparent,#10170ada);}
.gm-site .stay-feature>div {position: relative; z-index: 1; padding: 28px;}
.gm-site .stay-feature h3 {font-size: 30px; margin: 12px 0;}
.gm-site .stay-feature p {font-size: 16px; max-width: 370px;}
.gm-site .stay-regions {display: grid; grid-template-columns: 1fr 1fr; gap: 15px;}
.gm-site .stay-region {border: 1px solid var(--line); border-radius: 6px; padding: 23px 21px; background: #fff; display: flex; flex-direction: column; align-items: flex-start; gap: 10px;}
.gm-site .stay-region svg {color: var(--orange);}
.gm-site .stay-region h3 {font-size: 21px;}
.gm-site .stay-region p {color: #6b695f; font-size: 14px;}
.gm-site .stay-region a {margin-top: auto; font-family: Jost,sans-serif; font-size: 14px; text-decoration: underline; text-underline-offset: 4px;}
.gm-site .affiliate-note {font-size: 13px; color: #77746c; margin-top: 18px;}
.gm-site .season-band {background: var(--wood); color: white; padding: 45px 0;}
.gm-site .season-band .wrap {display: grid; grid-template-columns: .95fr 1.8fr; gap: 45px; align-items: center;}
.gm-site .season-band h2 {font-size: 35px; margin: 9px 0 12px;}
.gm-site .season-band p {color: #cdc9bc; font-size: 16px;}
.gm-site .season-grid {display: grid; grid-template-columns: repeat(4,1fr); gap: 10px;}
.gm-site .season-tile {border: 1px solid #5b584f; background: #29271f; border-radius: 5px; text-align: left; padding: 18px 15px; min-height: 145px; transition: background .2s;}
.gm-site .season-tile:hover {background: #39362c;}
.gm-site .season-tile svg {margin-bottom: 12px; color: var(--sun);}
.gm-site .season-tile strong {display: block; font-family: Fraunces,Georgia,serif; font-size: 19px; margin-bottom: 6px;}
.gm-site .season-tile span {font-family: Jost,sans-serif; font-size: 13px; color: #c4c1b6; line-height: 1.45; display: block;}
.gm-site .footer {padding: 38px 0 20px; background: #fff;}
.gm-site .footer-top {display: flex; justify-content: space-between; gap: 30px; align-items: center; padding-bottom: 29px; border-bottom: 1px solid var(--line);}
.gm-site .footer-logo {width: 168px;}
.gm-site .footer-links {display: flex; gap: 25px; font-family: Jost,sans-serif; font-size: 14px;}
.gm-site .footer-bottom {display: flex; justify-content: space-between; gap: 15px; margin-top: 18px; font-size: 12px; color: #77736b;}
.gm-site .search-dialog {max-width: 720px !important; border: 0 !important; border-radius: 9px !important; padding: 29px !important;}
.gm-site .search-dialog h2 {font-size: 28px;}
.gm-site .search-input {width: 100%; padding: 12px 15px; border: 1px solid var(--line); border-radius: 5px; margin: 12px 0; min-height: 48px;}
.gm-site .search-results {display: grid; gap: 8px; max-height: 55vh; overflow: auto;}
.gm-site .search-result {display: flex; gap: 16px; padding: 11px; border: 1px solid var(--line); border-radius: 4px;}
.gm-site .search-result:hover {background: var(--mint);}
.gm-site .search-result img {width: 88px; height: 72px; object-fit: cover; border-radius: 3px;}
.gm-site .search-result strong {display: block; font-family: Fraunces,Georgia,serif; font-size: 19px; line-height: 1.3;}
.gm-site .search-result span {font-family: Jost,sans-serif; font-size: 13px; color: #6e6c62;}
.gm-site .article-intro {padding: 44px 0 30px; text-align: center; max-width: 880px; margin: auto;}
.gm-site .breadcrumb {font-family: Jost,sans-serif; font-size: 14px; color: #6c695f; display: flex; justify-content: center; gap: 10px; margin-bottom: 26px;}
.gm-site .article-intro h1 {font-size: clamp(34px,4vw,54px); line-height: 1.13; text-wrap: balance; margin: 17px 0;}
.gm-site .article-deck {font-size: 20px; color: #656257; max-width: 760px; margin: auto; line-height: 1.6;}
.gm-site .article-intro .meta {justify-content: center; color: #777268; margin-top: 22px;}
.gm-site .article-cover {height: 460px; width: 100%; object-fit: cover; border-radius: 7px;}
.gm-site .article-caption {font-size: 12px; color: #767369; margin: 8px 0 30px;}
.gm-site .article-layout {display: grid; grid-template-columns: minmax(0,1fr) 290px; gap: 62px; max-width: 1050px; margin: 0 auto;}
.gm-site .article-body {font-size: 18px; line-height: 1.85;}
.gm-site .article-body .intro-copy {font-size: 21px; color: #48483d; line-height: 1.75;}
.gm-site .article-body h2 {font-size: 29px; margin: 35px 0 17px;}
.gm-site .article-body p {margin-bottom: 20px;}
.gm-site .article-aside {align-self: start; position: sticky; top: 86px; background: var(--mint); border: 1px solid #dce6ce; border-radius: 7px; padding: 23px;}
.gm-site .article-aside h3 {font-size: 25px; margin: 12px 0;}
.gm-site .article-aside p {font-size: 15px; color: #626a57;}
.gm-site .article-aside .btn {width: 100%; margin-top: 18px;}
.gm-site .article-places {display: flex; flex-wrap: wrap; gap: 8px; margin: 25px 0;}
.gm-site .place-chip {display: inline-flex; gap: 6px; align-items: center; background: var(--mint); padding: 8px 13px; border-radius: 4px; font-size: 14px; line-height: 1.4;}
.gm-site .place-chip:hover {background: #deebce;}
.gm-site .sources {border-top: 1px solid var(--line); padding-top: 19px; margin: 35px 0;}
.gm-site .sources h3 {font-size: 21px; margin-bottom: 10px;}
.gm-site .sources a {font-size: 14px; display: block; color: #546248; text-decoration: underline; line-height: 1.8;}
.gm-site .sources p {font-size: 13px; color: #77736b; line-height: 1.6; margin-top: 13px;}
.gm-site .editor-header {padding: 42px 0 25px;}
.gm-site .editor-header h1 {font-size: 38px; margin: 10px 0 14px;}
.gm-site .editor-header p {color: #69675b; max-width: 720px;}
.gm-site .editor-panel {display: grid; grid-template-columns: minmax(0,1fr) 340px; border: 1px solid var(--line); border-radius: 8px; overflow: hidden;}
.gm-site .editor-panel .map-canvas {min-height: 630px; cursor: crosshair;}
.gm-site .editor-panel .map-art {min-height: 630px;}
.gm-site .editor-panel .map-pin {cursor: grab;}
.gm-site .editor-form {padding: 25px; background: #fff;}
.gm-site .editor-form h2 {font-size: 24px; margin-bottom: 18px;}
.gm-site .field {display: grid; gap: 6px; margin-bottom: 16px; font-size: 14px; font-family: Jost,sans-serif;}
.gm-site .field input,.gm-site .field textarea,.gm-site .field select {width: 100%; border: 1px solid var(--line); border-radius: 4px; padding: 10px; font-family: 'DM Sans',sans-serif; background: #fff; font-size: 14px;}
.gm-site .field textarea {resize: vertical; min-height: 80px;}
.gm-site .coords {display: grid; grid-template-columns: 1fr 1fr; gap: 14px;}
.gm-site .editor-actions {display: flex; flex-wrap: wrap; gap: 10px; padding: 20px 0;}
.gm-site .editor-actions .btn {font-size: 14px;}
.gm-site .editor-message {font-size: 14px; background: var(--mint); border-radius: 4px; padding: 11px 15px; margin-bottom: 16px; min-height: 44px;}
.gm-site .editor-tip {font-size: 13px; color: #767165; margin-top: 14px;}
.gm-site .draft-list {display: grid; grid-template-columns: repeat(3,1fr); gap: 12px; margin: 24px 0;}
.gm-site .draft-list a {border: 1px solid var(--line); padding: 16px; border-radius: 5px; font-family: Jost,sans-serif; font-size: 15px;}
.gm-site .draft-list a:hover {background: var(--mint);}
.gm-site .stays-page {padding: 45px 0 55px;}
.gm-site .stays-page h1 {font-size: 45px; margin: 12px 0 16px; max-width: 700px;}
.gm-site .stays-page>.deck {font-size: 19px; color: #646459; max-width: 700px;}
.gm-site .stay-tabs {margin: 30px 0;}
.gm-site .stay-tabs [data-slot=tabs-list] {flex-wrap: wrap; width: 100%; justify-content: flex-start; height: auto; padding: 7px; gap: 5px; background: var(--mint);}
.gm-site .stay-tabs [data-slot=tabs-trigger] {padding: 10px 16px; flex: 0 1 auto; min-height: 44px; font-size: 15px; font-family: Jost,sans-serif;}
.gm-site .stay-tabs [data-state=active] {background: white;}
.gm-site .stay-search-panel {display: grid; grid-template-columns: 1.15fr 1fr; gap: 30px; margin-top: 22px; border: 1px solid var(--line); border-radius: 8px; overflow: hidden;}
.gm-site .stay-search-panel>img {height: 100%; min-height: 420px; width: 100%; object-fit: cover;}
.gm-site .stay-search-content {padding: 30px;}
.gm-site .stay-search-content h2 {font-size: 30px; margin: 10px 0 14px;}
.gm-site .stay-search-content p {font-size: 16px; color: #64665b;}
.gm-site .stay-search-content ul {padding-left: 19px; font-size: 15px; color: #5b6352; line-height: 1.7; margin: 20px 0;}
.gm-site .stay-search-content .btn {width: 100%;}
.gm-site .stay-search-content .affiliate-note {font-size: 13px;}
.gm-site .error-page {padding: 80px 0;}
.gm-site .error-page h1 {font-size: 45px; margin-bottom: 22px;}
.gm-site .error-page p {margin: 16px 0 28px;}
@media (min-width:1450px) {.gm-site .hero-grid {height: 580px;}.gm-site .feature-content h1 {font-size: 53px;}}
@media (max-width:1050px) {.gm-site .wrap {width: calc(100% - 40px);}.gm-site .gm-main-nav {gap: 20px;}.gm-site .brand-tagline {font-size: 20px;}.gm-site .hero-grid {height: 480px; grid-template-columns: 1.3fr 1fr;}.gm-site .feature-content {padding: 23px;}.gm-site .feature-content h1 {font-size: 38px;}.gm-site .feature-content h2 {font-size: 25px;}.gm-site .map-layout {grid-template-columns: 1fr 285px;}.gm-site .map-canvas,.gm-site .map-art {min-height: 525px;}.gm-site .season-band .wrap {grid-template-columns: 1fr; gap: 26px;}.gm-site .stays-layout {gap: 20px;}.gm-site .stay-region {padding: 17px;}.gm-site .article-layout {gap: 32px;}.gm-site .editor-panel {grid-template-columns: 1fr 300px;}}
@media (max-width:760px) {.gm-site .wrap {width: calc(100% - 32px);}.gm-site .topbar .wrap>span:nth-child(2) {display: none;}.gm-site .masthead {padding: 20px 0;}.gm-site .brand-logo {width: 165px;}.gm-site .brand-tagline {display: none;}.gm-site .masthead .btn {font-size: 14px; padding: 8px 12px;}.gm-site .nav-inner {min-height: 51px;}.gm-site .gm-main-nav {gap: 20px;}.gm-site .gm-main-nav a {padding: 14px 0; font-size: 14px;}.gm-site .gm-main-nav a:nth-child(n+4) {display: none;}.gm-site .mobile-menu {display: inline-flex;}.gm-site .ticker {margin: 17px auto; font-size: 13px;}.gm-site .hero-grid {height: auto; grid-template-columns: 1fr 1fr; grid-template-rows: 390px 245px; gap: 10px;}.gm-site .feature-card.main {grid-row: 1; grid-column: span 2;}.gm-site .feature-content {padding: 20px;}.gm-site .feature-content h1 {font-size: 38px; max-width: 480px;}.gm-site .feature-content h2 {font-size: 22px;}.gm-site .feature-content p {font-size: 15px;}.gm-site .feature-card:not(.main) .meta {font-size: 12px; gap: 7px;}.gm-site .promise-strip {font-size: 13px; gap: 12px; flex-wrap: wrap; justify-content: center;}.gm-site .promise-strip span:last-child {display: none;}.gm-site .section {padding: 38px 0;}.gm-site .section-head {align-items: flex-start; gap: 16px;}.gm-site .section-head h2,.gm-site .map-section h2 {font-size: 30px;}.gm-site .section-head .text-link {font-size: 14px; white-space: nowrap; margin-top: 29px;}.gm-site .story-grid {grid-template-columns: repeat(2,1fr); gap: 24px 18px;}.gm-site .story-card h3 {font-size: 22px;}.gm-site .story-card p {font-size: 15px;}.gm-site .story-card .meta {font-size: 12px;}.gm-site .adventure-note {padding: 20px;}.gm-site .map-section {padding: 37px 0;}.gm-site .map-layout {grid-template-columns: 1fr;}.gm-site .map-canvas {min-height: 430px;}.gm-site .map-art {height: 430px; min-height: 430px; min-width: 615px; position: absolute; left: 50%; translate: -50% 0;}.gm-site .map-sidebar {display: grid; grid-template-columns: 130px 1fr; gap: 0 19px; padding: 19px; min-height: 200px;}.gm-site .map-sidebar .photo {grid-column: 1; grid-row: 1/5; height: 150px; margin: 0;}.gm-site .map-sidebar .place-type,.gm-site .map-sidebar h3,.gm-site .map-sidebar>p {grid-column: 2;}.gm-site .map-sidebar h3 {font-size: 22px; margin: 7px 0;}.gm-site .map-sidebar>p {font-size: 14px;}.gm-site .map-detail-meta,.gm-site .map-sidebar>.btn,.gm-site .map-sidebar>.text-link,.gm-site .map-place-list {grid-column: span 2;}.gm-site .map-detail-meta {margin: 13px 0 7px;}.gm-site .map-place-list {margin-top: 7px; padding-top: 13px;}.gm-site .map-foot {flex-direction: column; gap: 6px; font-size: 12px;}.gm-site .stays-layout {grid-template-columns: 1fr;}.gm-site .stay-feature {min-height: 320px;}.gm-site .stay-regions {gap: 12px;}.gm-site .stay-region {min-height: 180px; padding: 20px;}.gm-site .season-grid {grid-template-columns: repeat(2,1fr);}.gm-site .season-tile {min-height: 130px;}.gm-site .season-band {padding: 34px 0;}.gm-site .season-band h2 {font-size: 30px;}.gm-site .footer-top {flex-direction: column; align-items: flex-start; gap: 23px;}.gm-site .footer-links {flex-wrap: wrap; gap: 15px 24px;}.gm-site .footer-bottom {flex-direction: column; font-size: 12px; gap: 9px;}.gm-site .article-intro {padding-top: 30px;}.gm-site .article-deck {font-size: 18px;}.gm-site .article-cover {height: 320px;}.gm-site .article-layout {grid-template-columns: 1fr; gap: 30px;}.gm-site .article-body {font-size: 17px;}.gm-site .article-body .intro-copy {font-size: 19px;}.gm-site .article-aside {position: static;}.gm-site .editor-panel {grid-template-columns: 1fr;}.gm-site .editor-panel .map-canvas,.gm-site .editor-panel .map-art {min-height: 430px;}.gm-site .editor-header h1 {font-size: 31px;}.gm-site .draft-list {grid-template-columns: 1fr 1fr;}.gm-site .stay-search-panel {grid-template-columns: 1fr;}.gm-site .stay-search-panel>img {height: 260px; min-height: 0;}.gm-site .stays-page h1 {font-size: 36px;}}
@media (max-width:460px) {.gm-site .hero-grid {grid-template-rows: 380px 235px;}.gm-site .feature-content h1 {font-size: 34px;}.gm-site .feature-content h2 {font-size: 20px;}.gm-site .feature-card:not(.main) .feature-content {padding: 15px;}.gm-site .feature-card:not(.main) .meta {display: none;}.gm-site .card-tag {font-size: 11px; padding: 3px 7px;}.gm-site .story-grid {grid-template-columns: 1fr;}.gm-site .story-thumb {aspect-ratio: 1.6;}.gm-site .story-card h3 {font-size: 25px;}.gm-site .adventure-note {display: none;}.gm-site .section-head .text-link {font-size: 13px;}.gm-site .map-tabs {gap: 6px;}.gm-site .map-filter {padding: 7px 11px; font-size: 13px;}.gm-site .map-sidebar {grid-template-columns: 95px 1fr; gap: 0 13px;}.gm-site .map-sidebar .photo {height: 135px;}.gm-site .stay-region h3 {font-size: 20px;}.gm-site .stay-region p {font-size: 13px;}.gm-site .masthead .btn svg {display: none;}.gm-site .draft-list {grid-template-columns: 1fr;}.gm-site .stay-search-content {padding: 23px;}.gm-site .ticker-label {max-width: 40%; white-space: normal; font-size: 11px; line-height: 1.35;}.gm-site .topbar {font-size: 11px;}}
@media (prefers-reduced-motion:reduce) {.gm-site {scroll-behavior: auto;}.gm-site *,.gm-site *:before,.gm-site *:after {transition: none !important; animation: none !important;}}
@media (min-width:761px) and (max-width:900px) {.gm-site .gm-main-nav a:nth-child(n+5) {display: none;}.gm-site .mobile-menu {display: inline-flex;}}
.gm-site .map-viewbar {display: flex; align-items: center; gap: 8px; flex-wrap: wrap; margin-bottom: 14px; font-family: Jost,sans-serif; font-size: 14px;}
.gm-site .map-viewbar button {min-height: 42px; padding: 8px 16px; border: 1px solid #cbd8bf; border-radius: 5px; background: white;}
.gm-site .map-viewbar button[aria-pressed=true] {background: #315d38; color: white; border-color: #315d38;}
.gm-site .map-viewbar span {color: #59654d; margin-left: 7px;}
.gm-site .regional-map-canvas>.map-art {position: absolute; left: 50%; top: 50%; translate: -50% -50%; width: 200%; height: 200%; min-width: 0; min-height: 0;}
.gm-site .regional-map-canvas .map-pin {transform-origin: center;}
.gm-site .regional-map-canvas {cursor: grab;}
.gm-site .regional-map-canvas:active {cursor: grabbing;}
.gm-site .editor-panel .map-art {position: absolute; left: 0; top: 0; translate: none; width: 100%; height: 100%; min-width: 0; min-height: 0;}
@media (max-width:760px) {.gm-site .regional-map-canvas>.map-art {height: 200%; min-height: 0;}.gm-site .editor-panel .map-art {height: 100%; min-height: 0;}.gm-site .map-viewbar span {width: 100%; margin-left: 0;}.gm-site .map-count {max-width: calc(100% - 28px); font-size: 12px;}}
