/* GENACOM v3.6 — Internal Pages: typography and brand-consistent layout only. */
.gc-content{min-height:44vh}
.gc-breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:10px;color:#667487;font-size:12px;margin-bottom:17px}
.gc-breadcrumbs a{color:#425265}.gc-breadcrumbs a:hover{color:var(--gc-pink)}.gc-breadcrumbs span[aria-current]{color:#7d8390}
.gc-inner-hero{background:linear-gradient(112deg,#f9eef1 0%,#fff9f9 52%,#f4f7fa 100%);border-bottom:1px solid #e8ebef;position:relative;overflow:hidden}
.gc-inner-hero:before{content:"";position:absolute;width:350px;height:350px;border-radius:50%;background:radial-gradient(circle,#ffe8ef,transparent 65%);left:-130px;bottom:-180px;pointer-events:none}
.gc-inner-hero__grid{min-height:300px;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(250px,.75fr);gap:48px;align-items:center;padding-block:49px;position:relative}
.gc-inner-hero__text{position:relative;z-index:1}
.gc-inner-hero h1{font-size:clamp(31px,3.8vw,51px);line-height:1.38;color:#182638;max-width:740px;margin:2px 0 18px;letter-spacing:-.035em}
.gc-inner-hero__lead{font-size:clamp(14px,1.4vw,17px);color:#4d5b69;line-height:2;max-width:620px;margin-bottom:26px}
.gc-inner-hero__media{overflow:hidden;border-radius:20px;box-shadow:0 20px 42px rgba(35,50,68,.12);aspect-ratio:5/3;background:#f1f2f4}
.gc-inner-hero__media img{display:block;width:100%;height:100%;object-fit:cover}
.gc-inner-hero--simple{padding-block:62px 70px}
.gc-inner-hero--simple h1{max-width:880px;margin-bottom:8px}
.gc-inner-hero--simple .gc-inner-hero__lead{margin-bottom:0}
.gc-inner-content{padding-block:64px 76px;min-height:250px}
.gc-inner-content--legacy{padding-block:0}
.gc-rich-text{color:#3d4956;font-size:16px;line-height:2.1;overflow-wrap:anywhere;max-width:950px}
.gc-rich-text--below{margin-top:48px}
.gc-rich-text--below:empty{display:none}
.gc-rich-text--elementor{max-width:none}
.gc-rich-text :is(h1,h2,h3,h4){color:#192b3b;letter-spacing:-.015em;line-height:1.45;scroll-margin-top:110px}
.gc-rich-text h1{font-size:clamp(29px,3vw,38px)}
.gc-rich-text h2{font-size:clamp(24px,2.25vw,31px);margin:38px 0 14px}
.gc-rich-text h3{font-size:21px;margin:28px 0 12px}
.gc-rich-text p{margin-block:14px 22px;line-height:2.05}
.gc-rich-text :is(ul,ol){padding-inline-start:26px;margin:12px 0 24px}
.gc-rich-text li{margin-block:8px}
.gc-rich-text blockquote{padding:18px 24px;background:#fff5f8;border-right:4px solid var(--gc-pink);border-radius:0 10px 10px 0}
.gc-rich-text a{color:var(--gc-pink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.gc-rich-text :is(img,video){max-width:100%;height:auto;border-radius:12px}
.gc-rich-text :is(table){width:100%;max-width:100%;border-collapse:collapse}
.gc-rich-text :is(th,td){border:1px solid #e3e6eb;padding:11px 14px}
.gc-rich-text :is(th){background:#fff7fa}
.gc-rich-text--elementor [class*=elementor] a{text-decoration:none}
.gc-highlights{margin-top:40px;padding:30px;background:#fff9fb;border-radius:16px;border:1px solid #ffe3ec;max-width:950px}
.gc-highlights h2{font-size:25px;margin-bottom:18px}
.gc-highlights ul{list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 30px}
.gc-highlights li{position:relative;padding-inline-start:26px;font-size:14px;line-height:1.8}
.gc-highlights li:before{content:'✓';position:absolute;inset-inline-start:0;color:var(--gc-pink);font-weight:800}
.gc-related{padding-bottom:70px}
.gc-related__head{margin-bottom:25px}
.gc-related__head h2{margin:0}
.gc-destinations__cards--light{margin-top:0;max-width:1000px}
.gc-destinations__cards--light a{height:194px;border:1px solid #e7ecf0;box-shadow:0 10px 25px rgba(23,41,58,.07)}
.gc-destinations__cards--light a img{object-fit:cover}
.gc-inner-cta{background:#f9f3f5;border-top:1px solid #f3e6ea}
.gc-inner-cta .gc-container{padding-block:37px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.gc-inner-cta h2{font-size:25px;margin:0 0 5px}
.gc-inner-cta p{font-size:13px;color:#576674;margin:0}
.gc-inner-cta .gc-btn{flex:0 0 auto}
.gc-contact-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gc-contact-card{display:flex;flex-direction:column;align-items:flex-start;padding:25px;border-radius:17px;background:#fff;border:1px solid #e8edf1;box-shadow:0 12px 30px rgba(19,35,48,.06);transition:transform .2s}
.gc-contact-card:hover{transform:translateY(-3px);border-color:#f9b3c8}
.gc-contact-card>span{display:grid;place-items:center;background:#fff0f5;width:56px;height:56px;border-radius:15px;color:var(--gc-pink);font-size:30px;font-weight:bold;margin-bottom:14px}
.gc-contact-card strong{font-size:21px;color:#1b2839}
.gc-contact-card small{font-size:13px;color:#697785;min-height:35px;overflow-wrap:anywhere}
.gc-contact-card b{margin-top:20px;font-size:13px;color:var(--gc-pink)}
.gc-inner-content--about{display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,340px);gap:40px;align-items:start}
.gc-about-side{background:#fff7fa;border:1px solid #f6dbe5;border-radius:16px;padding:28px;position:sticky;top:35px}
.gc-about-side h2{font-size:23px}
.gc-about-side p{font-size:14px;color:#596a79}
.gc-article{padding-block:52px 86px;display:grid;grid-template-columns:minmax(0,1fr) 284px;gap:62px;align-items:start}
.gc-article__cover{aspect-ratio:16/8;overflow:hidden;border-radius:18px;margin-bottom:31px;background:#f1f3f5}
.gc-article__cover img{height:100%;width:100%;object-fit:cover}
.gc-article__side{padding:25px;border:1px solid #f6dbe5;border-radius:16px;position:sticky;top:105px;background:#fff9fb}
.gc-article__side h2{font-size:24px}
.gc-article__side p{font-size:13px;color:#617080;margin-bottom:20px}
.gc-article__back{display:block;margin-top:25px;font-size:13px;color:var(--gc-pink)}
.gc-article-meta{display:flex;gap:15px;color:#6e7a86;font-size:12px}
.gc-article__tags{display:flex;gap:8px;flex-wrap:wrap;margin-top:32px}
.gc-article__tags a{border:1px solid #e4e8ed;color:#485969;background:#fafbfc;padding:5px 12px;border-radius:30px;font-size:12px}
.gc-article__navigation{display:flex;justify-content:space-between;gap:14px;border-top:1px solid #e6e9ee;margin-top:24px;padding-top:20px;font-size:13px;color:var(--gc-pink)}
.gc-archive{padding-block:60px}
.gc-archive .post-grid-v2{margin-bottom:32px}
.gc-archive .post-thumb img{object-fit:cover;width:100%;height:100%}
.pagination-wrap .page-numbers{border:1px solid #e0e5eb;border-radius:8px;display:inline-block;padding:7px 13px;margin:0 4px 5px 0}
.pagination-wrap .page-numbers.current{background:var(--gc-pink);border-color:var(--gc-pink);color:white}
.gc-empty-state{text-align:center;max-width:550px;margin:auto;padding:55px 0}
.gc-empty-state>span{font-size:98px;color:var(--gc-pink);font-weight:700;line-height:1.1}
.gc-empty-state h1{font-size:30px}
.gc-empty-state p{color:#607080}
.gc-empty-state>div{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:20px}
.gc-menu-items{list-style:none;display:flex;gap:22px;align-items:center;margin:0;padding:0}
.gc-menu-items li{margin:0;padding:0}
.gc-menu-items .current-menu-item>a,.gc-menu-items .current_page_item>a{color:var(--gc-pink)}
.gc-menu-items .menu-item-has-children{position:relative}
.gc-menu-items .sub-menu{position:absolute;top:100%;right:0;list-style:none;margin:0;padding:10px;background:#fff;border:1px solid #edf0f3;border-radius:12px;box-shadow:var(--gc-shadow);min-width:180px;display:none;z-index:5}
.gc-menu-items .sub-menu a{padding:8px 11px;display:block}
.gc-menu-items li:hover>.sub-menu,.gc-menu-items li:focus-within>.sub-menu{display:block}
@media(max-width:1050px){.gc-menu-items{flex-wrap:wrap;gap:11px}.gc-menu-items .sub-menu{position:static;box-shadow:none}.gc-inner-hero__grid{gap:25px}}
@media(max-width:900px){.gc-article{grid-template-columns:1fr;gap:22px}.gc-article__side{position:static}.gc-inner-content--about{grid-template-columns:1fr}.gc-about-side{position:static}.gc-menu-items{flex-direction:column;align-items:stretch;flex-wrap:nowrap;gap:0}.gc-menu-items a{display:block}.gc-menu-items .sub-menu{display:block;border:0;padding-inline:14px}}
@media(max-width:700px){.gc-inner-hero__grid{grid-template-columns:1fr;gap:18px;padding-block:38px}.gc-inner-hero__media{max-height:240px}.gc-inner-hero--simple{padding-block:35px 42px}.gc-inner-hero h1{font-size:clamp(29px,7vw,38px)}.gc-inner-hero__lead{font-size:14px}.gc-inner-content{padding-block:40px 55px}.gc-inner-content--legacy{padding-block:0}.gc-rich-text{font-size:15px}.gc-highlights ul{grid-template-columns:1fr}.gc-contact-grid{grid-template-columns:1fr}.gc-related{padding-bottom:42px}.gc-inner-cta .gc-container{display:block;text-align:center}.gc-inner-cta .gc-btn{margin-top:16px}.gc-destinations__cards--light{grid-template-columns:1fr;gap:12px}.gc-destinations__cards--light a{height:160px}.gc-article{padding-block:35px 65px}}

/* GENACOM v3.7 — Destination Guide (non-destructive legacy HTML styling) */
.gc-destination-hero .gc-inner-hero__grid{min-height:290px}
.gc-destination-hero__actions{display:flex;align-items:center;gap:11px;flex-wrap:wrap}
.gc-destination-hero__heading{font-size:clamp(30px,3.7vw,49px);font-weight:700;line-height:1.35;margin:3px 0 19px;color:#182638}
.gc-destination-layout{display:grid;grid-template-columns:minmax(0,1fr) 288px;gap:46px;align-items:start;padding-block:48px 72px}
.gc-destination-article{min-width:0}
.gc-destination-article__eyebrow{display:flex;align-items:center;gap:12px;font-size:12px;color:var(--gc-pink);font-weight:700;margin-bottom:18px}
.gc-destination-article__line{display:block;width:80px;height:1px;background:#ffc1d3}
.gc-destination-rich{min-width:0;max-width:none;font-size:15px;line-height:2}
.gc-destination-rich :is(h2,h3){scroll-margin-top:110px}
.gc-destination-rich h2{font-size:clamp(22px,2.1vw,29px);line-height:1.55;margin:36px 0 13px;padding:0 0 11px;border-bottom:1px solid #ebedf0;position:relative}
.gc-destination-rich h2::after{content:"";height:2px;width:45px;position:absolute;right:0;bottom:-1px;background:var(--gc-pink)}
.gc-destination-rich h3{font-size:20px}
.gc-destination-rich p{color:#445363;line-height:2}
.gc-destination-rich :is(ul,ol){padding-inline-start:24px;margin-block:15px 26px}
.gc-destination-rich li{line-height:1.9;padding-inline-start:2px}
.gc-destination-rich :is(ul,ol) li::marker{color:var(--gc-pink);font-weight:700}
.gc-destination-rich a:not(.gc-btn):hover{color:var(--gc-pink-dark)}
.gc-destination-rich > :first-child{margin-top:0}
.gc-destination-rich:not(.gc-rich-text--elementor) > :is(div,section,figure){max-width:100%!important}
.gc-destination-rich:not(.gc-rich-text--elementor) iframe{max-width:100%}
.gc-destination-aside{min-width:0;display:grid;gap:20px;position:sticky;top:22px}
.gc-destination-assist,.gc-destination-toc,.gc-destination-features{background:white;border:1px solid #eaedf1;border-radius:17px;padding:24px;box-shadow:0 12px 32px rgba(21,34,53,.04)}
.gc-destination-assist{background:linear-gradient(145deg,#fff5f8,#fff 86%);border-color:#f8dae3}
.gc-destination-assist h2{font-size:22px;line-height:1.45;margin-bottom:11px}
.gc-destination-assist p{font-size:13px;color:#607081;line-height:1.9;margin-bottom:16px}
.gc-destination-assist .gc-btn{width:100%;min-height:44px;gap:8px}
.gc-destination-assist__foot{border-top:1px solid #f4dfe5;color:#7b8592;font-size:11px;line-height:1.7;padding-top:11px;margin-top:16px}
.gc-destination-toc h2,.gc-destination-features h2{font-size:17px;margin:0 0 13px}
.gc-destination-toc ol{margin:0;padding-inline-start:20px;list-style:decimal}
.gc-destination-toc li{margin:7px 0;font-size:12px;color:#526374;line-height:1.8}
.gc-destination-toc li::marker{color:var(--gc-pink)}
.gc-destination-toc a:hover{color:var(--gc-pink);text-decoration:underline}
.gc-destination-features ul{list-style:none;margin:0;padding:0}
.gc-destination-features li{position:relative;padding-inline-start:23px;font-size:12px;color:#526374;margin:9px 0}
.gc-destination-features li:before{content:'✓';color:var(--gc-pink);position:absolute;inset-inline-start:0;font-weight:700}
.gc-related--destinations{padding-block:10px 65px}
.gc-related--destinations .gc-related__head p{font-size:13px;color:#68798b;margin:5px 0 0}
.gc-related--destinations .gc-destinations__cards{grid-template-columns:repeat(3,minmax(0,1fr));max-width:100%;gap:17px}
@media(max-width:970px){.gc-destination-layout{grid-template-columns:minmax(0,1fr) 250px;gap:22px}.gc-destination-aside{position:static}}
@media(max-width:760px){.gc-destination-layout{grid-template-columns:1fr;gap:26px;padding-block:30px 50px}.gc-destination-aside{grid-template-columns:1fr 1fr;align-items:start}.gc-destination-aside .gc-destination-assist{grid-column:1/-1}.gc-destination-hero__actions .gc-btn{padding-inline:15px}.gc-related--destinations .gc-destinations__cards{grid-template-columns:repeat(2,minmax(0,1fr))}.gc-destination-rich{font-size:14px}}
@media(max-width:470px){.gc-destination-aside{grid-template-columns:1fr}.gc-destination-rich :is(ul,ol){padding-inline-start:22px}.gc-related--destinations .gc-destinations__cards{grid-template-columns:1fr}.gc-related--destinations .gc-destinations__cards a{height:175px}}


/* GENACOM v3.7.1 — Balanced article images
   Applies to post body and standard/destination page content only.
   Never changes homepage, service cards, destination thumbnails, or branding. */
.gc-article__cover{
  width:min(100%,700px);
  aspect-ratio:16 / 9;
  margin-inline:auto;
  margin-bottom:28px;
  border-radius:14px;
}
.gc-article__cover img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
}
/* Constrain overly large legacy HTML / Gutenberg images without stretching or cropping. */
.gc-article__main .gc-rich-text img:not(.emoji),
.gc-destination-rich:not(.gc-rich-text--elementor) img:not(.emoji),
.gc-inner-content .gc-rich-text:not(.gc-rich-text--elementor) img:not(.emoji){
  display:block;
  max-width:min(100%,680px) !important;
  max-height:400px;
  width:auto;
  height:auto !important;
  object-fit:contain;
  margin:18px auto;
  border-radius:11px;
}
/* Gutenberg and older WordPress caption blocks can carry a fixed width attribute. */
.gc-article__main .gc-rich-text :is(figure.wp-block-image,.wp-caption),
.gc-destination-rich:not(.gc-rich-text--elementor) :is(figure.wp-block-image,.wp-caption),
.gc-inner-content .gc-rich-text:not(.gc-rich-text--elementor) :is(figure.wp-block-image,.wp-caption){
  max-width:min(100%,700px) !important;
  height:auto;
  margin:22px auto;
}
.gc-article__main .gc-rich-text :is(figcaption,.wp-caption-text),
.gc-destination-rich :is(figcaption,.wp-caption-text),
.gc-inner-content .gc-rich-text :is(figcaption,.wp-caption-text){
  text-align:center;
  font-size:12px;
  line-height:1.7;
  color:#718093;
  margin-top:8px;
}
/* Galleries intentionally keep their grid sizing. */
.gc-article__main .gc-rich-text :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img,
.gc-destination-rich:not(.gc-rich-text--elementor) :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img,
.gc-inner-content .gc-rich-text:not(.gc-rich-text--elementor) :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img{
  max-width:100% !important;
  max-height:none;
  margin:0;
  width:100%;
}
@media(max-width:700px){
  .gc-article__cover{
    width:100%;
    margin-bottom:22px;
    border-radius:12px;
  }
  .gc-article__main .gc-rich-text img:not(.emoji),
  .gc-destination-rich:not(.gc-rich-text--elementor) img:not(.emoji),
  .gc-inner-content .gc-rich-text:not(.gc-rich-text--elementor) img:not(.emoji){
    max-width:100% !important;
    max-height:330px;
  }
  .gc-article__main .gc-rich-text :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img,
  .gc-destination-rich:not(.gc-rich-text--elementor) :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img,
  .gc-inner-content .gc-rich-text:not(.gc-rich-text--elementor) :is(.wp-block-gallery,.blocks-gallery-grid,.gallery) img{
    max-height:none;
  }
}

/* GENACOM v3.8 — editorial navigation and mobile usability */
.gc-editorial-links{margin-top:38px;padding:23px 24px;background:#fff9fb;border:1px solid #f5dce4;border-radius:15px}
.gc-editorial-links h2{font-size:clamp(19px,2vw,24px);margin:0 0 8px}
.gc-editorial-links p{font-size:13px;line-height:1.9;color:#526376;margin:0 0 16px}
.gc-editorial-links__items{display:flex;flex-wrap:wrap;gap:10px}
.gc-editorial-links__items a{display:inline-flex;align-items:center;gap:10px;min-height:42px;padding:8px 15px;background:#fff;border:1px solid #e9d3da;border-radius:9px;font-size:13px;font-weight:700;color:#293b4b;text-decoration:none}
.gc-editorial-links__items a:hover{color:var(--gc-pink);border-color:var(--gc-pink)}
.gc-related__service-link{margin:21px 0 0;font-size:13px;color:#586676}
.gc-related__service-link a{color:var(--gc-pink);font-weight:700;text-decoration:underline;text-underline-offset:3px}
.gc-article__main .gc-rich-text :is(table,pre),
.gc-inner-content .gc-rich-text :is(table,pre),
.gc-destination-article .gc-rich-text :is(table,pre){max-width:100%;overflow-x:auto}
.genacom-exclusive :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid var(--gc-gold);outline-offset:3px}
.gc-breadcrumbs{max-width:100%;overflow-wrap:anywhere}
.gc-tool-panel:focus{outline:none}
@media(max-width:700px){
  .gc-editorial-links{margin-top:25px;padding:18px}
  .gc-editorial-links__items{display:grid;grid-template-columns:1fr 1fr}
  .gc-editorial-links__items a{justify-content:space-between;padding:9px 11px}
  .gc-rich-text :is(table,pre){display:block;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .gc-tool-tabs{overflow-x:auto;scrollbar-width:thin;flex-wrap:nowrap}
  .gc-tool-tab{flex:0 0 auto;min-height:42px}
}
@media(max-width:390px){.gc-editorial-links__items{grid-template-columns:1fr}}
