@font-face{font-family:'NEXT Georgian Sans';src:url('assets/fonts/NotoSansGeorgian-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:'NEXT Georgian Serif';src:url('assets/fonts/NotoSerifGeorgian-Regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
.site-header .language-switch{display:flex;position:absolute;top:3px;right:3.5%;align-items:center;gap:9px;font:11px/1.4 'NEXT Georgian Sans',Arial,sans-serif;color:var(--ink,#131f29);white-space:nowrap}
.site-header .language-switch a{padding:3px 0;min-height:24px;display:inline-flex;align-items:center;text-decoration:none}
.site-header .language-switch a[aria-current=true]{color:var(--accent,var(--action-link,#2075a0));border-bottom:1px solid currentColor}
.site-header .language-switch .language-divider{opacity:.35}
html[lang=ka]{--sans:'NEXT Georgian Sans',Arial,sans-serif;--serif:'NEXT Georgian Serif',Georgia,serif;scroll-padding-top:155px}
html[lang=ka] body,html[lang=ka] button,html[lang=ka] input,html[lang=ka] select,html[lang=ka] textarea{font-family:'NEXT Georgian Sans',Arial,sans-serif}
html[lang=ka] h1,html[lang=ka] h2,html[lang=ka] h3,html[lang=ka] .brand-tagline,html[lang=ka] .site-header nav,html[lang=ka] .site-header .menu-toggle{font-family:'NEXT Georgian Serif',Georgia,serif;letter-spacing:0}
html[lang=ka] h1{font-size:clamp(36px,4.8vw,78px);line-height:1.24}
html[lang=ka] h2{font-size:clamp(29px,3.6vw,53px);line-height:1.3}
html[lang=ka] h3{line-height:1.4}
html[lang=ka] em{font-style:normal}
html[lang=ka] .eyebrow,html[lang=ka] .kicker,html[lang=ka] .card-kicker,html[lang=ka] .card-tags{text-transform:none;letter-spacing:.035em;line-height:1.6}
html[lang=ka] .site-header .brand .brand-tagline{font-family:'NEXT Georgian Serif',Georgia,serif;font-size:15px;line-height:1.5;letter-spacing:0;white-space:normal;max-width:260px}
html[lang=ka] .site-header nav>a,html[lang=ka] .site-header .nav-dropdown>summary{font-size:12px;letter-spacing:0}
html[lang=ka] .site-header nav{gap:14px}
html[lang=ka] .button,html[lang=ka] .text-link,html[lang=ka] .hero-link{letter-spacing:0;white-space:normal;line-height:1.6}
html[lang=ka] .home-hero h1{font-size:clamp(34px,3.5vw,60px);line-height:1.35}
html[lang=ka] .hero-copy p{line-height:1.8}
html[lang=ka] .hero-copy .eyebrow{line-height:1.7}
html[lang=ka] .chapters-lockup,html[lang=ka] .brand-descriptor{font-family:Arial,sans-serif}
html[lang=ka] .form-grid label{line-height:1.6}
html[lang=ka] .hero-copy,html[lang=ka] .hero-content{min-width:0}
@media(max-width:1199px) and (min-width:1024px){html[lang=ka] .site-header{gap:12px;padding-left:20px;padding-right:20px}html[lang=ka] .site-header .brand img.identity-logo{width:170px}html[lang=ka] .site-header nav{gap:9px}html[lang=ka] .site-header nav>a,html[lang=ka] .site-header .nav-dropdown>summary{font-size:10px}html[lang=ka] .site-header .nav-property{font-size:10px;padding:8px!important;gap:7px}}
@media(max-width:1023px){
 .site-header .language-switch{position:static;order:3;flex:0 0 100%;justify-content:flex-end;margin:5px 0 0;gap:10px;font-size:11px}
 .site-header{flex-wrap:wrap}
 .site-header>nav{order:4}
 html[lang=ka] .site-header nav>a,html[lang=ka] .site-header .nav-dropdown>summary{font-size:15px}
 html[lang=ka] .site-header .brand .brand-tagline{font-size:14px;max-width:235px}
 html[lang=ka] .site-header nav .dropdown a{font-size:13px}
 html[lang=ka] .home-hero h1{font-size:clamp(28px,3.5vw,42px)}
}
@media(max-width:700px){
 html[lang=ka] h1,html[lang=ka] .page-intro h1,html[lang=ka] .article-title h1,html[lang=ka] .hero h1{font-size:clamp(32px,8.5vw,48px);line-height:1.35}
 html[lang=ka] h2,html[lang=ka] .section-heading h2,html[lang=ka] .editorial-copy h2,html[lang=ka] .closing h2{font-size:clamp(28px,7.5vw,39px);line-height:1.35}
 html[lang=ka] .home-hero h1{font-size:clamp(28px,7.5vw,44px);line-height:1.5}
 html[lang=ka] .site-header .brand .brand-tagline{font-size:12px;max-width:220px}
 html[lang=ka] .site-header .menu-toggle{font-size:13px;gap:10px}
 html[lang=ka] .home-hero .hero-copy p:not(.eyebrow){font-size:13px}
 html[lang=ka] .hero-media-caption{font-size:8px;max-width:190px}
 html[lang=ka] .section-heading{gap:20px}
}

/* Georgian labels have a dedicated column, keeping the logo clear at every width. */
@media (min-width:1024px) {
 html[lang=ka] .site-header {display:grid;grid-template-columns:max-content minmax(0,1fr);column-gap:32px;}
 html[lang=ka] .site-header>.brand {grid-column:1;grid-row:1;}
 html[lang=ka] .site-header>nav,html[lang=ka] .site-header>nav.open {grid-column:2;grid-row:1;display:flex!important;flex-wrap:wrap!important;width:100%;min-width:0;margin:0;justify-content:flex-end;gap:4px 18px;}
 html[lang=ka] .site-header>nav>a,html[lang=ka] .site-header>nav>details {flex:0 0 auto;}
 html[lang=ka] .site-header>.menu-toggle {display:none!important;}
}
@media (max-width:1023px) {
 html[lang=ka] .site-header {column-gap:12px;}
 html[lang=ka] .site-header>.menu-toggle {flex-shrink:0;}
}

@media (min-width:1001px) and (max-width:1023px) {
 html[lang=ka] .site-header .menu-toggle {display:flex;margin-left:auto;}
 html[lang=ka] .site-header nav {display:none;width:100%;margin:18px 0 0;padding:14px 0 9px;border-top:1px solid var(--line);gap:0;max-height:calc(85dvh - 90px);overflow-y:auto;align-items:stretch;}
 html[lang=ka] .site-header.menu-open nav {display:flex;flex-direction:column;}
 html[lang=ka] .site-header .dropdown {position:static;box-shadow:none;width:100%;border:0;padding:0 0 0 20px;}
}

/* Primary brand SVGs include 32 units of left whitespace in a 672-unit viewBox.
   Match taglines to the visible N, including fluid cards and nested brands. */
.business-card>.business-tagline {padding-left:min(14.285714px,4.761905%);}
.business-card .business-child h4+p {padding-left:min(11.428571px,4.761905%);}
.about-business-card>.about-business-tagline,
.about-nested-business>.about-child-tagline {padding-left:min(14.285714px,4.761905%);}
.about-parent-signature>p {padding-left:min(20.476190px,4.761905%);}
.hotel-enquiry-tagline {padding-left:min(12.380952px,3.333333vw);}
@media(max-width:700px) {
 .about-business-card>.about-business-tagline,
 .about-nested-business>.about-child-tagline {padding-left:min(13.809524px,4.761905%);}
 .about-parent-signature>p {padding-left:min(15.714286px,4.761905%);}
}

/* Compact phone navigation: two columns, comfortable tap areas and bounded expansion. */
@media (max-width:700px) {
 html[lang] .site-header>nav {
  position:absolute;top:calc(100% + 6px);right:5%;left:auto;bottom:auto;
  width:90%;max-width:420px;max-height:min(52svh,420px);box-sizing:border-box;
  margin:0;padding:10px 14px;overflow-y:auto;overscroll-behavior:contain;
  background:var(--paper);border:1px solid var(--line);
  border-top:2px solid var(--nav-accent,var(--accent));
  box-shadow:0 12px 28px #14282a20;
 }
 html[lang] .site-header>nav.open,
 html[lang] .site-header.menu-open>nav {
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 14px;align-items:start;align-content:start;
 }
 html[lang] .site-header>nav>* {min-width:0;margin:0;}
 html[lang] .site-header>nav>a,
 html[lang] .site-header>nav>.nav-dropdown>summary {
  display:flex;align-items:center;justify-content:space-between;gap:8px;
  min-height:44px;height:auto;box-sizing:border-box;padding:9px 0;
  font-size:15px;line-height:1.4;letter-spacing:0;white-space:normal;
  overflow-wrap:anywhere;
 }
 html[lang=ka] .site-header>nav>a,
 html[lang=ka] .site-header>nav>.nav-dropdown>summary {font-size:14px;line-height:1.55;}
 html[lang] .site-header>nav>.nav-dropdown[open] {grid-column:1/-1;}
 html[lang] .site-header>nav>.nav-dropdown[open]>summary {color:var(--nav-accent,var(--accent));}
 html[lang] .site-header nav :is(.dropdown-menu,.dropdown-panel,.dropdown) {
  position:static;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));
  gap:0 14px;min-width:0;max-width:100%;width:auto;max-height:none;
  margin:0 0 8px;padding:0 0 0 10px;border:0;border-left:1px solid var(--line);
  background:transparent;box-shadow:none;overflow:visible;
 }
 html[lang] .site-header nav :is(.dropdown-menu,.dropdown-panel,.dropdown)>a {
  display:flex;align-items:center;min-width:0;min-height:44px;padding:8px 0;
  font-size:13px;line-height:1.5;border:0;white-space:normal;overflow-wrap:anywhere;
 }
 html[lang] .site-header nav .nav-sub-brand {font-size:inherit;}
 html[lang] .site-header nav :is(.nav-property,.nav-cta,.saved-nav) {grid-column:1/-1;}
 html[lang] .site-header nav :is(.nav-property,.nav-cta) {
  min-height:44px;margin:6px 0 0;padding:10px 14px!important;font-size:14px;
 }
 html[lang] .site-header nav .saved-nav {
  justify-content:flex-start;gap:8px;margin-top:4px;padding-top:10px;
  border-top:1px solid var(--line);
 }
 html[lang] .site-header nav .saved-nav b {margin-left:auto;}
}

@media (max-width:360px) {
 html[lang] .site-header>nav {width:94%;right:3%;padding-right:8px;padding-left:8px;}
 html[lang] .site-header>nav.open,html[lang] .site-header.menu-open>nav {column-gap:8px;}
 html[lang] .site-header>nav>.nav-dropdown>summary {gap:4px;}
 html[lang=ka] .site-header>nav>a,html[lang=ka] .site-header>nav>.nav-dropdown>summary {font-size:13px;}
}

/* Separate utility languages from the primary navigation and action row. */
@media(min-width:1024px){
 html[lang] .site-header{display:grid;grid-template-columns:max-content minmax(0,1fr);align-items:center;column-gap:28px;padding-top:48px;padding-bottom:20px;min-height:132px;box-sizing:border-box;}
 html[lang] .site-header>.brand{grid-column:1;grid-row:1;}
 html[lang] .site-header>nav,html[lang] .site-header>nav.open{grid-column:2;grid-row:1;align-self:center;align-items:center;justify-content:flex-end;margin:0!important;min-width:0;}
 html[lang] .site-header .language-switch{position:absolute;top:10px;right:3.5%;margin:0;height:24px;}
 html[lang] .site-header>.menu-toggle{display:none!important;}
}

/* The booking action uses the Hotels brand colour and the main menu baseline. */
html[lang] .site-header nav .nav-cta{display:inline-flex;align-items:center;justify-content:center;gap:18px;min-height:44px;padding:12px 20px;background:var(--accent);border:1px solid var(--accent);color:#fff!important;text-decoration:none;line-height:1.4;box-sizing:border-box;}
html[lang] .site-header nav .nav-cta:hover{background:#84205d;border-color:#84205d;color:#fff!important;}
html[lang] .site-header nav .nav-cta:focus-visible{outline:3px solid var(--ink);outline-offset:4px;}
@media(min-width:1024px) and (max-width:1199px){html[lang] .site-header nav{flex-wrap:wrap;gap:4px 14px;}html[lang] .site-header nav .nav-cta{padding:12px 14px;}}

/* Desktop editorial hierarchy: readable pre-headlines and larger introductory copy. */
@media(min-width:1024px){
 html[lang] main :is(.eyebrow,.kicker,.nh-kicker,.proof-eyebrow,.sales-centres-label){font-size:clamp(16px,1.15vw,18px)!important;line-height:1.5!important;letter-spacing:.12em;}
 html[lang] main :is(.hero-intro,.internal-deck,.lead,.desktop-intro-copy){font-size:clamp(20px,1.55vw,22px)!important;line-height:1.65!important;}
 html[lang] main :is(.hero-content,.hero-copy,.nh-hero-copy)>p:not(.eyebrow):not(.kicker):not(.nh-kicker):not(.caption):not(.hero-caption){font-size:clamp(20px,1.55vw,22px)!important;line-height:1.65!important;max-width:660px;}
 html[lang=ka] main :is(.eyebrow,.kicker,.nh-kicker,.proof-eyebrow,.sales-centres-label){letter-spacing:.035em;line-height:1.6!important;}
 html[lang=ka] main :is(.hero-intro,.internal-deck,.lead,.desktop-intro-copy){line-height:1.75!important;}
}
