/* Shared type and spacing system for the catalogue and booking pages. */
:root{--font-ui:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans Georgian",Arial,sans-serif;--type-ink:#18382e;--type-muted:#617168}
html{font-size:16px;scroll-padding-top:96px;-webkit-text-size-adjust:100%}
body{font-family:var(--font-ui);font-size:1rem;font-weight:400;line-height:1.65;letter-spacing:0;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
button,input,select,textarea{font-family:var(--font-ui)}
h1,h2,h3,p{overflow-wrap:break-word}
h1,h2,h3{font-family:var(--font-ui);color:var(--type-ink);font-weight:650;text-wrap:balance}
h1,.hero h1{font-size:clamp(2.5rem,4.8vw,4.25rem);line-height:1.1;letter-spacing:-.04em;max-width:15ch;margin-bottom:24px}
h1 em{font-style:normal;font-weight:inherit;color:#698575}
h2,.section-head h2,.about h2,.contact h2,.request-grid h2,.why h2{font-size:clamp(1.9rem,3.3vw,2.75rem);line-height:1.2;letter-spacing:-.03em;font-weight:650;margin:0}
h3,.why-item h3{font-size:1.125rem;line-height:1.4;letter-spacing:-.015em;font-weight:650}
.hero p{font-size:1.0625rem;line-height:1.75;max-width:48ch;color:var(--type-muted);margin-bottom:28px}
.section-head p,.request-intro,.about p{font-size:.9375rem;line-height:1.75;color:var(--type-muted)}
.section-head{align-items:flex-start;gap:24px;margin-bottom:32px}
.section-head h2{max-width:22ch}
.kicker,.eyebrow{font-size:.6875rem;line-height:1.4;font-weight:650;letter-spacing:.11em}
.brand{font-weight:700;letter-spacing:.025em}.brand small{font-size:.625rem;letter-spacing:.09em;font-weight:550;line-height:1.4}
.navlinks{font-size:.8125rem;font-weight:500;gap:22px}.lang-toggle,.lang{font-size:.8125rem;font-weight:600}
.btn,.btn.small,.back{font-size:.875rem;line-height:1.35;font-weight:600;letter-spacing:0;padding:13px 18px;border-radius:14px;text-align:center;box-shadow:none}
.btn:hover{box-shadow:0 6px 18px #123d3312}.hero-actions .btn{font-size:.9375rem;padding:15px 21px}
.trust{font-size:.75rem}.trust span{font-size:.75rem;font-weight:450}
.floating-tag{font-size:.75rem;font-weight:550}.photo-note strong{font-size:1rem;font-weight:650;letter-spacing:-.01em}.photo-note small{font-size:.75rem;line-height:1.5}
.filter{font-family:var(--font-ui);font-size:.8125rem;font-weight:550;letter-spacing:0;border-radius:12px;padding:11px 15px;box-shadow:none}
.filter:before,.price:before{display:none;content:none}
.grid{gap:24px}.card{display:flex;flex-direction:column;border-radius:22px;box-shadow:none}.card:hover{transform:translateY(-3px);box-shadow:0 14px 36px #172a1e0c}
.card-body{padding:22px;display:flex;flex-direction:column;flex:1;min-width:0}
.price,.daily-price{font-size:1.875rem;font-weight:650;line-height:1.2;letter-spacing:-.035em;font-variant-numeric:lining-nums tabular-nums;display:flex;align-items:baseline;gap:8px;flex-wrap:wrap}
.price small,.daily-price small{font-size:.75rem;line-height:1.5;font-weight:450;letter-spacing:0;background:none;padding:0;margin-left:0;color:var(--type-muted)}
.card h3{font-size:1.1875rem;line-height:1.4;font-weight:650;letter-spacing:-.018em;margin:12px 0 8px;text-wrap:pretty}
.location{font-size:.8125rem;line-height:1.65;color:var(--type-muted);overflow-wrap:anywhere}
.sample-label{font-size:.6875rem;line-height:1.4;letter-spacing:.01em;font-weight:600;text-transform:none;box-shadow:none;padding:7px 11px}
.features{font-size:.75rem;line-height:1.5;font-weight:450;gap:7px;padding:14px 0;margin-top:14px}.features span{padding:6px 9px;border-radius:7px}
.listing-desc{font-size:.875rem;line-height:1.75;letter-spacing:0;color:var(--type-muted);margin:4px 0 20px;text-wrap:pretty}
.card .btn{margin-top:auto;padding:13px 15px}.card .listing-desc[style]{font-size:.8125rem}
.demo-note,.daily-disclaimer,.notice,.fine,.form-note{font-size:.75rem;line-height:1.7;font-weight:400;color:var(--type-muted)}
.why-item{padding:26px}.why-item h3{margin-bottom:10px}.why-item p{font-size:.875rem;line-height:1.75}.why-icon{font-size:1.125rem}
.about-list,.request-points{font-size:.875rem;line-height:1.65;gap:12px}.about-list li:before{display:none}
.contact p{font-size:.9375rem;line-height:1.7}.contact h2{color:#fff}
.lead-form label,label{font-size:.8125rem;line-height:1.5;font-weight:600;color:#34483d}
.lead-form input,.lead-form select,input,select,textarea{font-size:1rem;line-height:1.5;font-weight:400;padding:13px 14px;border-radius:12px;letter-spacing:0}
input::placeholder,textarea::placeholder{color:#849087;opacity:1}
.form-card h2{font-size:1.5rem;line-height:1.3;letter-spacing:-.025em}.form-card p{font-size:.875rem;line-height:1.7}.form-card{padding:26px;border-radius:22px}
.estimate{font-size:.8125rem;line-height:1.6}.estimate strong{font-size:1.25rem;line-height:1.5;font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
.preview h2{font-size:1.5rem;line-height:1.35;letter-spacing:-.025em;margin:12px 0 9px}.preview .muted{font-size:.875rem;line-height:1.75}.preview .price .muted{font-size:.75rem}
.tag{font-size:.6875rem;font-weight:600;letter-spacing:.01em;text-transform:none}
.form-card .fine{font-size:.75rem;line-height:1.7}
@media(max-width:560px){.brand small{display:none}.brand{min-width:0}.nav>.lang-toggle,.nav>.btn{flex-shrink:0}.hero h1{font-size:clamp(2.2rem,9.4vw,2.65rem)}}
.telegram-float{font-size:.8125rem;font-weight:600;letter-spacing:0}.footer-inner,footer{font-size:.75rem;line-height:1.6}
:lang(ka) h1,:lang(ka) h2,:lang(ka) h3{letter-spacing:0;line-height:1.35;font-weight:600}:lang(ka) .kicker,:lang(ka) .eyebrow,:lang(ka) .brand small{letter-spacing:0;text-transform:none}
@media(max-width:850px){.section-head{gap:14px}.hero-grid{gap:32px}.nav{gap:16px}.hero h1{max-width:19ch}.request-grid{gap:26px}}
@media(max-width:560px){html{scroll-padding-top:84px}h1{font-size:clamp(2.2rem,9.4vw,2.65rem);line-height:1.13;letter-spacing:-.035em;max-width:18ch}.hero p{font-size:1rem;line-height:1.7}.hero h1{margin-bottom:20px}.section-head h2,h2,.about h2,.contact h2,.request-grid h2,.why h2{font-size:1.875rem;line-height:1.25;letter-spacing:-.025em}.brand small{font-size:.5625rem}.brand{font-size:.75rem}.btn,.btn.small{font-size:.875rem}.nav>.btn{font-size:0}.nav>.btn:after{font-size:.8125rem}.trust span{font-size:.6875rem;padding:8px 10px}.card-body{padding:20px}.card h3{font-size:1.1875rem}.price,.daily-price{font-size:1.875rem}.listing-desc{font-size:.875rem;line-height:1.75}.grid{gap:20px}.filter{font-size:.8125rem;padding:10px 13px}.form-card{padding:22px}.form-card h2{font-size:1.5rem}.preview h2{font-size:1.375rem}.header-right{gap:8px}.hero-actions .btn{font-size:.9375rem}.photo-note small{font-size:.6875rem}:lang(ka) h1{font-size:2rem;line-height:1.35}.lead-form input,.lead-form select,input,select,textarea{font-size:1rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card,.btn,.filter,.card-img img{transition:none}.card:hover,.btn:hover,.filter:hover{transform:none}}
