/* GP03.2 — Georgian nights. Shared design tokens, heritage motion and two themes. */
:root {
  --ivory:#f7f3eb; --paper:#fffdf8; --teal:#183a3d; --copper:#aa4e31;
  --sage:#e8eee7; --muted:#526970; --line:#d4ded8;
  --action:#175e56; --on-action:#fffdf7; --surface-soft:#edf1eb;
  --header:rgba(247,243,235,.94); --card-shadow:0 18px 60px #1c3c3610;
  --glow:#307e6410; --heritage-filter:brightness(.45) sepia(.6);
}
:root[data-theme='dark'] {
  color-scheme:dark; --ivory:#0b1820; --paper:#122830; --teal:#edf5ef;
  --copper:#edb58d; --sage:#1c353d; --muted:#b1c5c7; --line:#30474e;
  --action:#b9e6d2; --on-action:#0c302d; --surface-soft:#142d35;
  --header:rgba(11,24,32,.94); --card-shadow:0 18px 60px #0003;
  --glow:#5dbb9f0c; --heritage-filter:none;
}
html { background:var(--ivory); }
.skip-link { background:var(--action); color:var(--on-action); }
body { background:radial-gradient(ellipse at 0 35%,var(--glow),transparent 45%),var(--ivory); color:var(--teal); }
main { overflow:clip; }
.wrap { width:min(1220px,calc(100% - 80px)); }
.section { padding-block:88px; }
h1,h2,h3 { text-wrap:balance; }
p { text-wrap:pretty; }
.ui-icon { width:20px; height:20px; display:inline-block; flex:0 0 auto; vertical-align:middle; }
[data-icon] { display:inline-flex; align-items:center; justify-content:center; flex:0 0 auto; }
.button .ui-icon,.text-link .ui-icon { width:18px; height:18px; }
.button,.gp-button,.gp-send { border-radius:8px; background:var(--action); border-color:var(--action); color:var(--on-action); }
.button:hover,.gp-button:hover,.gp-send:hover { background:var(--action); filter:brightness(1.08); box-shadow:0 7px 25px #102f2720; }
.button.secondary { color:var(--teal); background:transparent; border-color:var(--line); }
.button.secondary:hover { background:var(--sage); }
.concept-bar { background:#0d3137; color:#c9ded9; min-height:32px; }
.concept-bar strong { color:#d3cbb6; }
.site-header { background:var(--header); border-color:var(--line); box-shadow:0 2px 20px #05272b05; }
.nav-wrap { min-height:82px; gap:16px; }
.brand { font-size:29px; }
.brand-mark { stroke:currentColor; }
#main-nav { gap:21px; }
.nav-cta { min-height:44px; }
.theme-toggle { display:grid; place-items:center; width:44px; height:44px; flex:0 0 44px; padding:0; border:1px solid var(--line); border-radius:9px; background:var(--paper); color:var(--teal); }
.theme-toggle:hover { background:var(--sage); border-color:var(--copper); }
.theme-icon { display:grid; place-items:center; }
.theme-icon .ui-icon { width:20px; height:20px; }
.language-toggle,.menu-toggle { border-color:var(--line); border-radius:9px; background:var(--paper); }
.language-toggle:hover,.language-toggle[aria-expanded='true'] { background:var(--sage); border-color:var(--copper); }
.language-menu { border-radius:12px; box-shadow:0 16px 45px #071b2333; }
.language-option:hover,.language-option:focus-visible { background:var(--sage); }
.language-option[aria-checked='true'] { background:var(--surface-soft); }
.menu-toggle { flex:0 0 44px; }
.hero-universe { position:relative; isolation:isolate; overflow:clip; background:#0a222a; color:#f4f6eb; }
.hero-universe::after { content:''; position:absolute; inset:0; pointer-events:none; z-index:-1; background:linear-gradient(90deg,#071b23bb,transparent 65%),linear-gradient(0deg,#0a222a,transparent 28%); }
.hero { --teal:#f1f6ee; --muted:#c3d4d3; --copper:#eeb98e; --action:#e8bc94; --on-action:#122c30; min-height:710px; padding-block:58px 48px; grid-template-columns:1.05fr .95fr; gap:80px; position:relative; }
.hero-copy { padding-block:20px; }
.hero-copy .eyebrow { color:#c6e8dc; letter-spacing:.18em; font-size:11px; margin-bottom:28px; }
.mini-line { width:34px; height:2px; background:#cf9a75; }
.hero h1 { font-size:clamp(76px,7.3vw,104px); line-height:.98; letter-spacing:-.055em; margin-left:-3px; }
html[lang='en'] .hero h1 { font-size:clamp(73px,7vw,99px); }
html[lang='ru'] .hero h1 { font-size:clamp(67px,6.5vw,91px); }
.hero h1 em { background:linear-gradient(110deg,#f5d6ae,#dc8d6c); background-clip:text; -webkit-background-clip:text; color:transparent; padding-block:4px 9px; }
.hero-description { max-width:425px; line-height:1.9; font-size:16px; margin-top:27px; }
.hero-actions { margin-top:30px; gap:26px; }
.hero-actions .button { min-height:54px; border-radius:8px; padding-inline:23px; }
.hero-actions .text-link { color:#e3ede7; min-height:44px; }
.hero-notes { color:#afc9c7; gap:12px 18px; margin-top:28px; font-size:11px; }
.hero-notes i { color:#9bd3bd; }
.hero-notes .ui-icon { width:13px; height:13px; }
.hero-visual { padding:0 14px; }
.hero-coordinate { color:#bdcfc8; letter-spacing:.17em; padding:0 12px 18px; }
.scene { max-width:465px; margin-inline:auto; }
.hero-art { width:100%; height:510px; aspect-ratio:auto; object-fit:cover; object-position:48% 50%; border-radius:48% 48% 14px 14px; border:1px solid #f6dcc97a; padding:8px; background:linear-gradient(130deg,#d0b7994a,#558b7b50,#e3bb8233); box-shadow:0 0 0 9px #e2cfab08,0 0 90px #79c2a327,0 28px 65px #0005; }
.scene-orbit { inset:-12px -11px 15px; border:1px solid #c0dcc032; border-radius:48% 48% 20px 20px; transform:rotate(5deg); }
.portal-glint { position:absolute; inset:0; pointer-events:none; border-radius:48% 48% 14px 14px; background:linear-gradient(115deg,#fff0 25%,#fff2 45%,#fff0 60%); background-size:240% 100%; animation:portal-light 15s ease-in-out infinite; }
.floating-label { color:#e9f3e9; background:#15353ce8; border:1px solid #bad5c845; box-shadow:0 14px 32px #0003; border-radius:10px; }
.label-one { right:-30px; top:37%; padding:15px 17px; }
.label-one small { color:#bed0c9; }
.tiny-symbol { color:#1c423e; background:#c3dfcb; }
.label-two { left:-26px; bottom:10%; padding:13px 18px; font-size:10px; letter-spacing:.13em; }
.label-dot { background:#e8b492; box-shadow:0 0 15px #e4bb91; }
.visual-caption { margin-top:21px; color:#b2c7c8; font-size:11px; align-items:center; }
.motion-toggle { color:#cfddd5; border:1px solid #bad5c830; border-radius:20px; padding:7px 12px; min-height:40px; gap:8px; font-size:11px; }
.motion-toggle:hover { color:white; border-color:#c7dacc; }
.motion-toggle .ui-icon { width:13px; height:13px; }
.motion-toggle:disabled { opacity:.75; cursor:default; }
.image-credit { color:#9bb9b9; font-size:10px; margin-top:8px; padding-left:2px; }
.heritage-scene { pointer-events:none; user-select:none; }
.hero-heritage { position:absolute; inset:0; z-index:-2; overflow:hidden; }
.ambient-glow { position:absolute; width:620px; height:620px; border-radius:50%; filter:blur(60px); animation:ambient-drift 25s ease-in-out infinite alternate; }
.glow-jade { right:-140px; top:-200px; background:radial-gradient(circle,#4eaf8147,transparent 66%); }
.glow-copper { left:10%; top:25%; background:radial-gradient(circle,#a46c4930,transparent 66%); animation-delay:-9s; }
.heritage-letter { position:absolute; height:auto; opacity:.16; animation:heritage-float 19s ease-in-out infinite alternate; }
.glyph-an { width:160px; left:-55px; top:10%; transform:rotate(-17deg); }
.glyph-don { width:170px; left:43%; top:8%; opacity:.10; animation-delay:-8s; }
.glyph-kan { width:135px; right:-25px; bottom:6%; opacity:.19; animation-delay:-13s; }
.heritage-landmark { position:absolute; width:740px; max-width:none; left:-90px; bottom:-10px; opacity:.18; animation:heritage-horizon 24s ease-in-out infinite alternate; }
.sky-orbit { position:absolute; border:1px solid #b8d5c512; width:850px; height:850px; border-radius:50%; right:-140px; top:-70px; }
.orbit-two { width:1030px; height:1030px; right:-230px; top:-160px; }
.service-ribbon { background:var(--surface-soft); border-color:var(--line); }
.service-ribbon .wrap { padding-block:22px; gap:15px; }
.service-ribbon span { font-family:inherit; font-size:12px; font-weight:600; letter-spacing:.08em; color:var(--muted); }
.service-ribbon span+span { padding-left:28px; border-left:1px solid var(--line); }
.places-section { position:relative; isolation:isolate; }
.places-heritage { position:absolute; inset:0; z-index:-1; overflow:clip; }
.glyph-man { width:140px; right:16px; top:4px; opacity:.09; filter:var(--heritage-filter); }
.heritage-towers { position:absolute; width:310px; right:-50px; bottom:12%; opacity:.12; filter:var(--heritage-filter); animation:heritage-float 24s ease-in-out infinite alternate; }
.section-heading { margin-bottom:35px; }
.section-heading .eyebrow,.approach .eyebrow,.why-section>.eyebrow,.faq-section .eyebrow { color:var(--copper); }
.section-heading h2 { font-size:clamp(40px,4.4vw,61px); }
.city-grid { gap:22px; }
.city-card { position:relative; isolation:isolate; min-height:440px; display:flex; flex-direction:column; justify-content:flex-end; border:1px solid #bbd0c533; border-radius:18px; background:#102a30; box-shadow:var(--card-shadow); }
.city-card:hover { box-shadow:0 22px 50px #061d3033; }
.city-image { position:absolute; inset:0; height:100%; aspect-ratio:auto; z-index:-2; }
.city-image::after { content:''; position:absolute; inset:0; background:linear-gradient(0deg,#071b25f5 4%,#0d2535bd 33%,#0c283318 78%); }
.city-image img { object-position:center; transition:transform 1s ease; }
.city-card:hover .city-image img { transform:scale(1.06); }
.city-georgian { top:18px; bottom:auto; right:17px; border-radius:20px; background:#0b282779; padding:6px 12px; font-size:12px; }
.city-copy { position:relative; color:#fffdf4; padding:28px; min-height:250px; justify-content:flex-end; }
.city-copy .eyebrow { color:#f0c59e; font-size:10px; letter-spacing:.14em; }
.city-copy h3 { font-size:46px; margin-block:10px 13px; }
.city-copy p { color:#e2eae7; font-size:13px; line-height:1.8; min-height:4.4em; text-shadow:0 1px 8px #0003; }
.city-copy .text-link { color:#fff7df; margin-top:13px; font-size:12px; }
.city-copy .text-link:hover { color:#f3c09b; }
.places-note { margin-top:20px; }
.film-background { border-radius:20px; box-shadow:var(--card-shadow); border:1px solid var(--line); }
.film-overlay { padding:52px; }
.film-controls #film-toggle { display:inline-flex; align-items:center; justify-content:center; gap:9px; }
#film-toggle::before,#film-toggle[aria-pressed="true"]::before { content:none; }
#film-toggle .ui-icon { width:14px; height:14px; }
.media-credits { border-color:var(--line); }
.media-credits li { overflow-wrap:anywhere; }
.filters { gap:9px; margin-bottom:24px; }
.filters button { border-radius:24px; padding-inline:19px; }
.filters button.active { background:var(--action); color:var(--on-action); border-color:var(--action); }
.service-grid { gap:18px; }
.service-card { min-height:326px; padding:28px; border-radius:16px; background:var(--paper); border-color:var(--line); box-shadow:0 6px 24px #0c343305; }
.service-card:nth-child(2),.service-card:nth-child(5) { background:var(--surface-soft); }
.service-card.discovery-card { background:var(--paper); }
.service-card:hover { background:var(--surface-soft); border-color:var(--copper); box-shadow:var(--card-shadow); }
.card-top { margin-bottom:25px; }
.card-no { color:var(--muted); font-size:11px; }
.service-icon { stroke:var(--copper); width:60px; height:60px; }
.card-kicker { font-size:10px; letter-spacing:.13em; line-height:1.6; }
.service-card h3 { font-size:28px; }
.service-card > p { font-size:14px; line-height:1.8; }
.round-link { border-color:var(--line); color:var(--teal); }
.round-link:hover { background:var(--action); color:var(--on-action); border-color:var(--action); }
.round-link .ui-icon { width:20px; height:20px; }
.price-footnote { max-width:960px; color:var(--muted); }
.approach { gap:90px; padding-top:15px; padding-bottom:80px; align-items:start; }
.approach h2 { max-width:490px; }
.steps { padding-top:20px; }
.steps article { padding-block:30px; }
.steps h3 { font-size:29px; }
.steps p { font-size:14px; }
.step-no { font-size:21px; }
.map-scene { position:relative; width:min(390px,100%); height:205px; margin-top:26px; isolation:isolate; perspective:800px; }
.map-halo { position:absolute; inset:25% 3% 5%; border-radius:50%; background:radial-gradient(ellipse,#3b998c28,transparent 70%); filter:blur(15px); }
.flag-map { position:absolute; inset:10px 5px 0; transform-origin:15% 50%; animation:flag-wave 7s ease-in-out infinite; filter:drop-shadow(0 14px 13px #09232926); }
.flag-map img { width:100%; height:100%; object-fit:contain; }
.flag-light { position:absolute; inset:0; background:linear-gradient(100deg,transparent,#ffffff9e,transparent); background-size:220% 100%; mix-blend-mode:soft-light; -webkit-mask:url('assets/heritage/georgia-outline.svg') center/contain no-repeat; mask:url('assets/heritage/georgia-outline.svg') center/contain no-repeat; animation:flag-sheen 7s ease-in-out infinite; }
.map-letter { position:absolute; width:90px; right:-8px; bottom:0; opacity:.12; filter:var(--heritage-filter); animation:heritage-float 19s ease-in-out infinite alternate; }
.planner-section { background:#10363b; color:#f2f5e9; padding-block:82px; isolation:isolate; }
.planner-section::before { border-color:#d3e9d514; }
.planner-layout { grid-template-columns:.9fr 1.1fr; gap:85px; }
.planner-copy .eyebrow { color:#d6eadd; }
.planner-copy h2 { font-size:clamp(50px,5.6vw,74px); }
.planner-copy h2 em { color:#efbd96; }
.planner-copy > p { color:#c3d6d1; max-width:370px; }
.planner-trust > span { display:grid; place-items:center; width:32px; height:32px; border:1px solid #d8b69470; border-radius:50%; color:#efbd96; }
.planner-trust .ui-icon { width:18px; height:18px; }
.planner-trust small,.planner-copy p.planner-disclaimer { color:#b3ccc6; }
.planner-heritage { position:absolute; inset:0; overflow:hidden; z-index:-1; }
.planner-heritage img { position:absolute; width:580px; opacity:.08; bottom:-30px; left:-100px; animation:heritage-horizon 24s ease-in-out infinite alternate; }
.planner-panel { border-radius:18px; padding:30px; border:1px solid var(--line); color:var(--teal); box-shadow:0 30px 65px #0002; }
.concept-chip { color:var(--muted); background:var(--sage); border-radius:5px; }
.planner-panel input,.planner-panel select,.planner-panel textarea,input,select,textarea { color:var(--teal); background:var(--paper); border-color:var(--line); border-radius:7px; }
input::placeholder,textarea::placeholder { color:var(--muted); opacity:.8; }
.plan-choice { border-color:var(--line); padding-block:17px; }
.check-visual { border-color:var(--muted); }
.plan-choice input:checked + .check-visual { background:var(--action); border-color:var(--action); }
.plan-choice input:checked + .check-visual::after { border-color:var(--on-action); }
.planner-panel .button { background:var(--action); color:var(--on-action); border-color:var(--action); }
.crypto-section { margin-top:38px; border-color:var(--line); background:var(--surface-soft); border-radius:16px; box-shadow:var(--card-shadow); }
.crypto-symbol { border-color:var(--line); color:var(--copper); }
.crypto-symbol svg { stroke:currentColor; }
.principles { gap:30px; }
.principles article { border-color:var(--line); }
.principles article > span { display:inline-flex; color:var(--copper); }
.principles .ui-icon { width:29px; height:29px; }
.faq-section { padding-top:0; }
.faq-list summary { font-size:14px; padding-block:23px; }
.faq-list summary::after { content:''; width:11px; height:11px; border-right:1.5px solid currentColor; border-bottom:1.5px solid currentColor; transform:rotate(45deg); top:27px; right:4px; }
.faq-list details[open] summary::after { content:''; transform:rotate(225deg); top:32px; }
.contact-section { background:var(--surface-soft); border-color:var(--line); padding-block:80px; }
.chat-contact-layout { gap:70px; }
.contact-flow { border-color:var(--line); }
.shared-initials span { border-color:var(--surface-soft); }
.gp-entry-card { background:var(--paper); border-color:var(--line); border-radius:18px; padding:33px; box-shadow:var(--card-shadow); }
.gp-chat-symbol { color:var(--copper); background:var(--sage); border-color:var(--line); }
.gp-entry-top h3,.gp-text-button,.gp-back,.gp-field>label { color:var(--teal); }
.gp-entry-card .gp-entry-intro,.gp-entry-note,.gp-callback-intro,.gp-success-view p { color:var(--muted); }
.gp-entry-question { background:var(--surface-soft); color:var(--teal); border-color:var(--line); border-radius:8px; }
.gp-entry-question:hover { background:var(--sage); border-color:var(--copper); }
.gp-entry-question::after { content:''; width:18px; height:18px; color:var(--copper); background:currentColor; mask:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M6 18 18 6M6 6h12v12" fill="none" stroke="black" stroke-width="1.5"/%3E%3C/svg%3E') center/contain no-repeat; }
.gp-back::before { content:''; display:inline-block; width:17px; height:17px; vertical-align:middle; background:currentColor; mask:url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24"%3E%3Cpath d="M20 12H4m6-6-6 6 6 6" fill="none" stroke="black" stroke-width="1.5"/%3E%3C/svg%3E') center/contain no-repeat; }
.gp-entry-note { border-color:var(--line); }
.gp-launcher { border:1px solid #99c8bd66; box-shadow:0 9px 34px #0003; background:#123e43; }
.gp-launcher:hover { background:#1a5153; }
.gp-launcher-symbol { background:#efc49f; color:#10373c; }
.gp-chat-dialog { color:var(--teal); background:var(--ivory); border-color:var(--line); border-radius:18px; }
.gp-chat-header { background:#11383e; }
.gp-chat-dialog::backdrop,dialog::backdrop { background:#04191d99; backdrop-filter:blur(8px); }
.gp-connection,.gp-chat-footer { background:var(--surface-soft); border-color:var(--line); }
.gp-connection p { color:var(--muted); }
.gp-message-assistant { background:var(--paper); border-color:var(--line); }
.gp-message-user { background:#24554e; border-color:#24554e; color:#fffdf5; }
.gp-message-author,.gp-answer-source { color:var(--muted); }
.gp-question-chip { background:var(--paper); border-color:var(--line); color:var(--teal); }
.gp-question-chip:hover { background:var(--sage); }
.gp-composer,.gp-chat-hint { background:var(--paper); border-color:var(--line); color:var(--muted); }
.gp-composer textarea,.gp-field input,.gp-field select,.gp-field textarea { color:var(--teal); background:var(--ivory); border-color:var(--line); }
.gp-contact-action { color:var(--teal); border-color:var(--line); border-radius:7px; }
.gp-contact-action:hover { background:var(--sage); }
.gp-check input { accent-color:var(--action); }
.gp-check small,.gp-form-note,.gp-plan-summary,.gp-receipt-box>span { color:var(--muted); }
.gp-plan-choice,.gp-receipt-box { background:var(--surface-soft); border-color:var(--line); }
.gp-receipt { color:var(--teal); }
.gp-form-status,.gp-chat-status { color:var(--copper); }
.gp-form-status { background:var(--surface-soft); }
.gp-local-draft { border-color:var(--line); }
.gp-required { color:var(--copper); }
.gp-success-mark { color:var(--teal); background:var(--sage); border-color:var(--line); }
dialog { background:var(--paper); color:var(--teal); border-color:var(--line); border-radius:18px; }
.dialog-close { color:var(--teal); border-color:var(--line); display:grid; place-items:center; }
.dialog-notice,.wallet-plan,.wallet-details { background:var(--sage); border-color:var(--line); }
.wallet-status,.wallet-status[data-kind='success'],.wallet-status[data-kind='error'] { background:var(--surface-soft); color:var(--teal); }
.wallet-provider { background:var(--paper); color:var(--teal); border-color:var(--line); }
.wallet-provider-icon { background:var(--sage); border-color:var(--line); }
.site-footer { position:relative; isolation:isolate; overflow:clip; padding-top:50px; padding-bottom:95px; background:var(--ivory); }
.footer-top { position:relative; z-index:1; padding-bottom:38px; }
.footer-bottom { position:relative; z-index:1; border-color:var(--line); }
.footer-heritage { position:absolute; inset:0; z-index:-1; overflow:hidden; }
.footer-heritage img { position:absolute; right:0; bottom:-60px; width:640px; opacity:.07; filter:var(--heritage-filter); }
@keyframes heritage-float { from{translate:0 0;rotate:-7deg} to{translate:9px -16px;rotate:4deg} }
@keyframes heritage-horizon { from{translate:0 0} to{translate:12px -8px} }
@keyframes ambient-drift { from{translate:0 0;scale:1} to{translate:30px 20px;scale:1.1} }
@keyframes portal-light { 0%,100%{background-position:160% 0} 50%{background-position:-70% 0} }
@keyframes flag-wave { 0%,100%{transform:rotateY(-8deg) rotateZ(-3deg) skewY(1deg)} 50%{transform:rotateY(9deg) rotateZ(0) skewY(-1deg)} }
@keyframes flag-sheen { 0%,100%{background-position:170% 0;opacity:.28} 50%{background-position:-80% 0;opacity:.65} }
.heritage-scene[data-in-view='false'] * { animation-play-state:paused!important; }
html[data-page-visible='false'] *,html[data-page-visible='false'] *::before,html[data-page-visible='false'] *::after { animation-play-state:paused!important; }
html[data-motion='off'] *,body[data-motion='off'] * { animation-play-state:paused!important; }
body[data-motion='off'] .portal-glint { opacity:0; }
@media (min-width:1450px) { .glyph-an{left:calc(50% - 720px)} .glyph-kan{right:calc(50% - 690px)} }
@media (max-width:1200px) {
  .nav-wrap{gap:12px} #main-nav{gap:16px} #main-nav a{font-size:12px}
  .hero{gap:42px;min-height:670px} .hero-art{height:470px} .hero-visual{padding-inline:10px}
  .label-one{right:-12px}.label-two{left:-14px}.planner-layout{gap:50px}
}
@media (max-width:1050px) {
  .language-control{margin-left:auto}.theme-toggle{margin-left:0}.nav-cta{display:none}
  #main-nav{background:var(--paper);border-color:var(--line)} #main-nav a{font-size:14px}
  .hero{gap:30px;min-height:640px}.hero h1{font-size:76px}html[lang='en'] .hero h1{font-size:73px}html[lang='ru'] .hero h1{font-size:65px}
  .hero-art{height:430px}.hero-description{font-size:15px}.hero-actions{gap:15px}.hero-actions .button{padding-inline:18px;font-size:13px}
  .city-card{min-height:430px}.city-copy{padding:23px}.city-copy h3{font-size:40px}.city-copy p{font-size:13px}
  .service-card{padding:23px}.service-card h3{font-size:25px}.approach{gap:45px}.chat-contact-layout{gap:35px}
}
@media (max-width:800px) {
  .wrap{width:calc(100% - 48px)}.section{padding-block:66px}.nav-wrap{min-height:76px}
  .hero{grid-template-columns:1fr 1fr;gap:28px;padding-block:48px;min-height:590px}.hero h1{font-size:65px}html[lang='en'] .hero h1{font-size:63px}html[lang='ru'] .hero h1{font-size:57px}
  .hero-copy .eyebrow{font-size:10px;letter-spacing:.11em}.hero-description{font-size:14px;margin-top:23px}.hero-actions{align-items:flex-start;flex-direction:column;gap:13px}.hero-notes{line-height:1.6;gap:7px 14px}
  .hero-art{height:390px}.hero-coordinate{font-size:10px;letter-spacing:.08em;padding-inline:0}.hero-coordinate span{font-size:10px}
  .label-one{padding:11px;gap:8px;font-size:10px;max-width:190px}.label-one small{font-size:9px}.tiny-symbol{width:26px;height:26px}.label-two{font-size:9px;padding:10px 12px;left:-10px}
  .visual-caption{font-size:10px;gap:9px}.motion-toggle{font-size:10px;padding-inline:9px}.image-credit{font-size:9px}.hero-visual{padding:0}
  .city-grid{grid-template-columns:1fr;gap:20px}.city-card{min-height:360px}.city-copy{max-width:560px;padding:30px}.city-copy h3{font-size:43px}.city-copy p{font-size:14px;min-height:0;max-width:400px}.city-image img{object-position:center 50%}
  .service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.approach{grid-template-columns:1fr 1fr;gap:38px}.approach h2{font-size:37px}.map-scene{height:170px}.steps h3{font-size:27px}
  .planner-layout{grid-template-columns:1fr;gap:35px}.planner-copy{max-width:620px}.planner-copy h2{font-size:62px}.planner-copy>p{max-width:520px}.planner-panel{max-width:650px;width:100%;margin-inline:auto}.planner-section{padding-block:65px}.planner-heritage img{opacity:.06}
  .chat-contact-layout{grid-template-columns:1fr;gap:35px}.contact-section{padding-block:65px}.film-overlay{padding:35px}
}
@media (max-width:640px) {
  .wrap{width:calc(100% - 40px)}.nav-wrap{gap:9px;min-height:72px}.brand{font-size:25px}.brand-mark{width:29px}.brand small{font-size:6.5px}.language-control{margin-left:auto}.language-toggle{min-width:73px;padding:8px;gap:5px}
  .concept-bar{min-height:28px;padding:6px 15px}.concept-bar>strong{flex-basis:auto;font-size:10px}.concept-bar .concept-dot,.concept-bar .concept-separator{display:none}.concept-bar{font-size:0;gap:0}
  .hero{grid-template-columns:1fr;gap:38px;padding-block:36px 34px;min-height:0}.hero-copy{padding:0}.hero-copy .eyebrow{font-size:10px;margin-bottom:21px;letter-spacing:.14em}
  .hero h1{font-size:clamp(63px,13vw,80px);line-height:1}html[lang='en'] .hero h1{font-size:clamp(62px,13vw,79px)}html[lang='ru'] .hero h1{font-size:clamp(55px,11.7vw,72px)}
  .hero-description{font-size:15px;line-height:1.8;max-width:430px}.hero-actions{flex-direction:row;flex-wrap:wrap;align-items:center;gap:16px;margin-top:25px}.hero-actions .button{min-height:51px;padding-inline:18px;font-size:13px}.hero-actions .text-link{font-size:12px;gap:8px}
  .hero-notes{font-size:10px;gap:9px 14px;margin-top:21px}.hero-visual{width:min(420px,100%);margin-inline:auto;padding-inline:10px}.hero-coordinate{padding:0 4px 14px;font-size:10px}.hero-art{height:440px;max-height:115vw;padding:7px}.scene-orbit{inset:-7px -8px 11px}
  .label-one{right:-8px;max-width:190px;font-size:11px;padding:12px}.label-one small{font-size:10px}.label-two{left:-7px;padding:11px 14px;font-size:9px}.visual-caption{font-size:10px;justify-content:space-between;gap:8px}.motion-toggle{min-height:40px;font-size:10px}.image-credit{font-size:9px}
  .hero-heritage .glyph-an{left:auto;right:-36px;top:25px;width:130px;opacity:.14}.hero-heritage .glyph-don{left:-30px;top:57%;width:125px;opacity:.14}.hero-heritage .glyph-kan{display:none}.heritage-landmark{bottom:15%;left:-110px;width:600px;opacity:.13}.ambient-glow{width:430px;height:430px}.glow-copper{left:-200px;top:30%}.glow-jade{top:auto;bottom:10%;right:-180px}
  .service-ribbon .wrap{width:100%;overflow:auto;justify-content:center;flex-wrap:wrap;gap:12px 18px;padding:17px 20px}.service-ribbon span{font-size:10px;letter-spacing:.06em}.service-ribbon span+span{border:0;padding-left:0}
  .section{padding-block:55px}.section-heading{gap:22px;margin-bottom:27px}.section-heading h2,.places-section .section-heading h2{font-size:43px}.section-heading>p{font-size:14px}.city-card{min-height:390px}.city-copy{padding:27px}.city-copy h3{font-size:43px}.city-copy p{font-size:14px}.city-copy .text-link{font-size:12px}.city-georgian{font-size:11px}
  .film-background{border-radius:16px}.film-overlay{padding:28px}.film-overlay h3{font-size:43px}.film-overlay p{font-size:14px}.media-credits{font-size:11px;line-height:1.8}.places-note{font-size:12px;margin-bottom:30px}
  .service-grid{grid-template-columns:1fr;gap:15px}.service-card{min-height:0;padding:25px}.card-top{margin-bottom:18px}.service-card h3{font-size:30px}.service-card>p{max-width:none;margin-bottom:27px}.card-bottom{margin-top:0}.filters{gap:8px}.filters button{font-size:11px;padding-inline:13px;min-height:44px}
  .approach{grid-template-columns:1fr;gap:23px;padding-top:6px}.approach h2{font-size:39px}.approach-intro>p{font-size:14px}.map-scene{height:190px;width:340px;max-width:100%;margin:15px auto 0}.steps{padding-top:0}.steps article{gap:19px;padding-block:25px}.steps h3{font-size:28px}.steps p{font-size:14px}
  .planner-section{padding-block:55px}.planner-copy h2{font-size:57px}.planner-copy>p{font-size:14px}.planner-panel{padding:25px 21px;border-radius:15px}.planner-panel-top{gap:13px}.planner-panel-top>span:first-child{font-size:24px}.concept-chip{font-size:9px}.plan-choice{gap:10px}.plan-choice>span:nth-of-type(2) b{font-size:13px}.plan-choice small{font-size:11px}.plan-choice>strong{font-size:13px}.planner-button{font-size:13px}.planner-bottom-note{font-size:10px}
  .crypto-section{margin-top:28px;padding:25px}.crypto-copy h2{font-size:33px}.crypto-copy p{font-size:14px}.why-heading h2{font-size:43px}.why-heading>p,.principles p{font-size:14px}.principles article{padding-left:47px}.principles article>span{position:absolute;top:26px;left:0}.principles h3{font-size:28px}.faq-section{padding-top:0}.faq-section h2{font-size:43px}.faq-section>div>p,.faq-list p{font-size:14px}
  .contact-section{padding-block:55px}.chat-contact-copy h2{font-size:45px}.chat-contact-copy>p{font-size:14px}.gp-entry-card{padding:25px 22px}.gp-entry-top h3{font-size:27px}.gp-entry-question{font-size:13px}.site-footer{padding-top:36px;padding-bottom:90px}.footer-top{padding-bottom:28px}.footer-heritage img{width:440px}
}
@media (max-width:420px) {
  .nav-wrap{width:calc(100% - 28px);gap:6px}.nav-wrap .brand{font-size:24px;gap:0}.nav-wrap .brand-mark,.nav-wrap .brand small{display:none}.language-toggle{min-width:66px;padding:7px;gap:4px;font-size:12px}.language-flag{width:21px;height:14px}.language-chevron{width:10px;height:10px}.theme-toggle,.menu-toggle{width:44px;min-width:44px;flex-basis:44px}.menu-toggle{padding:11px}.language-menu{right:-49px;max-width:calc(100vw - 28px)}
  .hero-actions{gap:12px}.hero-actions .button{padding-inline:15px;font-size:12px;gap:16px}.hero-actions .text-link{font-size:11px;gap:6px}.hero-notes{font-size:10px;gap:7px 12px}.hero-notes .ui-icon{width:11px;height:11px}.hero-visual{padding-inline:7px}.hero-art{height:380px}.visual-caption{align-items:flex-start}.image-credit{font-size:9px}
  .section-heading h2,.places-section .section-heading h2{font-size:38px}.city-card{min-height:370px}.city-copy{padding:24px}.city-copy h3{font-size:41px}.service-card{padding:23px}.service-card h3{font-size:28px}.approach h2{font-size:36px}.map-scene{height:170px}.planner-copy h2{font-size:51px}.planner-panel{padding-inline:18px}.contact-flow{font-size:10px}.gp-entry-card{padding-inline:20px}
}
@media (max-width:370px) {
  .wrap{width:calc(100% - 32px)}.nav-wrap{width:calc(100% - 24px);gap:5px}.nav-wrap .brand{font-size:22px}.hero h1{font-size:61px}html[lang='en'] .hero h1{font-size:60px}html[lang='ru'] .hero h1{font-size:53px}.hero-copy .eyebrow{font-size:9px}.hero-description{font-size:14px}.hero-actions .button{padding-inline:13px;gap:12px}.hero-actions .text-link{font-size:11px}.hero-notes{font-size:9px}.hero-art{height:350px}.label-one{max-width:175px;font-size:10px}.label-one small{font-size:9px}.visual-caption{justify-content:flex-start;gap:9px}.city-copy{padding:23px}.plan-choice{grid-template-columns:19px minmax(0,1fr)}.plan-choice>strong{grid-column:2;justify-self:start}.planner-panel{padding-inline:16px}.film-overlay{padding:24px}.film-overlay h3{font-size:38px}.gp-entry-top{gap:11px}.gp-entry-top h3{font-size:25px}
}
@media (prefers-reduced-motion:reduce) {
  html{scroll-behavior:auto} *,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.scene,.flag-map,.heritage-letter,.heritage-landmark,.map-letter{transform:none!important;translate:none!important;rotate:none!important}.portal-glint{display:none}
}
