:root { --navy:#0b2e55; --blue:#165a9e; --light:#eef6fc; --line:#d5e3ee; --muted:#52697d; --green:#1fa855; --gold:#e7b14d; --shadow:0 18px 48px rgba(13,55,96,.12); }
.private-driver-section { margin-top:48px; }
.category-hero.tours-photo-hero { min-height:520px; padding:76px 24px; display:flex; align-items:center; background:linear-gradient(270deg,rgba(0,0,0,.54),rgba(0,0,0,.16) 58%,rgba(0,0,0,.04)),url('assets/kazbegi-tours-hero.jpg') center 42%/cover no-repeat; }
.tours-photo-hero .category-hero-inner { display:block; width:100%; }
.tours-photo-hero h1 { font-size:clamp(38px,5vw,64px); line-height:1.17; text-shadow:0 2px 16px rgba(0,0,0,.24); }
.tours-photo-hero .category-kicker { background:rgba(0,0,0,.2); color:#ffe0a2; }
.tours-photo-hero p { color:#fff; font-size:20px; }
.tours-hero-link { display:inline-flex; align-items:center; gap:18px; margin-top:28px; padding:13px 24px; border-radius:12px; background:#edbf66; color:#0b2e55; text-decoration:none; font-weight:800; }
.summary-tours-link { display:inline-flex; align-items:center; gap:16px; color:var(--blue); font-weight:800; text-decoration:none; padding:8px 0; }
.tours-hero-link:focus-visible,.summary-tours-link:focus-visible { outline:3px solid #e7b14d; outline-offset:5px; }
@media(max-width:560px) { .category-hero.tours-photo-hero { min-height:480px; padding:44px 20px; background-position:59% center; } .tours-photo-hero p { font-size:18px; } }
.private-driver-section>.category-kicker { color:var(--blue); border-color:var(--line); }
.private-driver-section h2 { color:var(--navy); font-size:clamp(30px,4vw,42px); margin:8px 0; }
.driver-intro { max-width:850px; color:var(--muted); font-size:18px; }
.driver-info { display:flex; flex-wrap:wrap; gap:10px; margin:24px 0; }
.driver-info span { padding:8px 14px; border-radius:30px; background:#e5eff8; color:var(--navy); font-weight:700; }
.driver-note { color:var(--muted); padding:20px; border-inline-start:3px solid var(--gold); background:#fff; border-radius:12px; }
.driver-tour-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-top:30px; }
.driver-tour { overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#fff; display:flex; flex-direction:column; box-shadow:0 8px 24px rgba(13,55,96,.06); }
.driver-tour img { display:block; width:100%; height:210px; object-fit:cover; }
.driver-tour-body { padding:22px; flex:1; display:flex; flex-direction:column; }
.driver-tour h3 { font-size:22px; line-height:1.4; color:var(--navy); margin:12px 0 8px; }
.driver-tour p { color:var(--muted); margin:0 0 22px; }
.driver-tour .action-button { margin-top:auto; font-size:15px; }
.tour-duration { color:var(--blue); font-size:14px; font-weight:700; }
@media(max-width:900px) { .driver-tour-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:560px) { .driver-tour-grid { grid-template-columns:1fr; } .driver-tour img { height:220px; } }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:#f4f8fb; color:#17283a; font-family:"Heebo",Arial,sans-serif; line-height:1.7; }
a { color:inherit; }
.skip-link { position:absolute; top:-60px; right:16px; z-index:20; padding:10px 16px; background:#fff; color:var(--navy); border-radius:8px; }
.skip-link:focus { top:14px; }
.page-header { display:flex; align-items:center; justify-content:space-between; gap:20px; min-height:76px; padding:14px max(24px,calc((100% - 1180px)/2)); background:#fff; border-bottom:1px solid var(--line); }
.page-brand { display:flex; align-items:center; gap:12px; text-decoration:none; }
.page-brand-mark { display:grid; place-items:center; width:48px; height:48px; border-radius:15px; background:var(--navy); color:#fff; font-weight:900; }
.page-brand b,.page-brand small { display:block; }
.page-brand b { color:var(--navy); font-size:18px; }
.page-brand small { color:var(--muted); font-size:12px; }
.back-link { color:var(--blue); font-weight:800; text-decoration:none; }
.category-hero { padding:72px 24px 58px; background:linear-gradient(135deg,#0b2e55,#165a9e); color:#fff; }
.category-hero-inner { display:grid; grid-template-columns:1.1fr .9fr; gap:38px; align-items:center; max-width:1120px; margin:auto; }
.breadcrumbs { margin:0 0 12px; color:#d7e9f8; font-size:13px; }
.category-kicker { display:inline-block; margin-bottom:10px; padding:5px 11px; border:1px solid rgba(255,255,255,.3); border-radius:999px; color:#f5d184; font-size:13px; font-weight:800; }
.category-hero h1 { margin:0; max-width:760px; font-size:clamp(36px,5vw,58px); line-height:1.1; letter-spacing:-1.3px; }
.category-hero p { max-width:720px; margin:17px 0 0; color:#e1edf7; font-size:19px; }
.category-icon { display:grid; place-items:center; min-height:260px; border:1px solid rgba(255,255,255,.25); border-radius:30px; background:rgba(255,255,255,.1); font-size:108px; box-shadow:inset 0 1px rgba(255,255,255,.18); }
.category-main { max-width:1120px; margin:auto; padding:52px 24px 72px; }
.category-layout { display:grid; grid-template-columns:1fr 340px; gap:28px; align-items:start; }
.content-card,.action-card,.related-section { border:1px solid var(--line); border-radius:24px; background:#fff; box-shadow:var(--shadow); }
.content-card { padding:36px; }
.content-card h2 { margin:0 0 12px; color:var(--navy); font-size:30px; line-height:1.25; }
.content-card h3 { margin:30px 0 10px; color:var(--navy); font-size:22px; }
.content-card p { color:var(--muted); font-size:17px; }
.feature-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin:24px 0 0; padding:0; list-style:none; }
.feature-list li { min-height:76px; padding:15px 16px; border:1px solid var(--line); border-radius:15px; background:#f8fbfd; }
.feature-list b,.feature-list small { display:block; }
.feature-list b { color:var(--navy); }
.feature-list small { margin-top:2px; color:var(--muted); }
.notice { margin-top:22px; padding:15px 17px; border-radius:14px; background:#fff7e8; color:#735019; font-weight:700; }
.action-card { position:sticky; top:18px; padding:26px; }
.action-card h2 { margin:0 0 8px; color:var(--navy); font-size:23px; }
.action-card p { margin:0 0 18px; color:var(--muted); }
.action-button { display:flex; align-items:center; justify-content:center; min-height:54px; margin-top:10px; padding:12px 16px; border-radius:14px; background:var(--blue); color:#fff; font-weight:800; text-align:center; text-decoration:none; box-shadow:0 10px 22px rgba(22,90,158,.18); }
.action-button.whatsapp { background:var(--green); }
.action-phone { display:block; margin-top:14px; color:var(--navy); font-size:18px; font-weight:800; text-align:center; text-decoration:none; }
.action-note { margin-top:12px !important; font-size:13px; text-align:center; }
.related-section { margin-top:28px; padding:30px; }
.related-section h2 { margin:0 0 17px; color:var(--navy); }
.related-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.related-grid a { min-height:76px; padding:14px; border:1px solid var(--line); border-radius:14px; background:#f8fbfd; color:var(--navy); font-weight:800; text-decoration:none; }
.related-grid span { display:block; margin-bottom:5px; font-size:23px; }
.page-footer { padding:30px 24px; background:var(--navy); color:#fff; text-align:center; }
.page-footer p { margin:5px 0; }
.page-footer a { color:#fff; font-weight:800; }
@media (max-width:820px) { .category-hero-inner,.category-layout { grid-template-columns:1fr; } .category-icon { min-height:170px; font-size:78px; } .action-card { position:static; } .related-grid { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px) { .page-header { align-items:flex-start; } .page-brand small { display:none; } .category-hero { padding:48px 18px 40px; } .category-hero p { font-size:17px; } .category-main { padding:34px 16px 54px; } .content-card { padding:24px 18px; } .feature-list,.related-grid { grid-template-columns:1fr; } .back-link { font-size:13px; } }

.category-hero.organized-photo-hero { background:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.68)),url('assets/tbilisi-old-city-hero.jpg') center/cover; padding:70px 24px; min-height:380px; display:flex; align-items:center; }
.organized-photo-hero .category-hero-inner { width:100%; }
.organized-photo-hero h1 { max-width:790px; color:#fff; }
.organized-photo-hero p,.organized-photo-hero .category-kicker,.organized-photo-hero .breadcrumbs a { color:#fff; }
.organized-itinerary { margin:48px 0; }
.organized-itinerary > h2 { font-size:32px; margin-bottom:10px; }
.itinerary-intro { color:#587189; line-height:1.8; }
.itinerary-weather { padding:18px 22px; margin:22px 0 30px; border:1px solid #e6c687; border-radius:15px; background:#fff8e9; color:#674a1d; line-height:1.8; }
.itinerary-weather strong { margin-left:8px; }
.itinerary-day { display:grid; grid-template-columns:minmax(250px,.8fr) minmax(0,1.2fr); margin:24px 0; border:1px solid #dce7ef; border-radius:24px; overflow:hidden; background:#fff; box-shadow:0 12px 32px rgba(18,63,116,.06); }
.itinerary-photo { position:relative; min-height:300px; }
.itinerary-photo img { position:absolute; width:100%; height:100%; object-fit:cover; }
.itinerary-photo span { position:absolute; top:20px; right:20px; padding:8px 18px; background:#fff; color:#123f74; border-radius:99px; font-weight:800; }
.itinerary-body { padding:30px; }
.itinerary-body h3 { margin:0 0 20px; color:#123f74; font-size:25px; }
.itinerary-body h4 { margin:20px 0 6px; color:#123f74; font-size:18px; }
.itinerary-body p { margin:0; line-height:1.85; color:#40566b; }
.itinerary-includes { padding:30px; border-radius:24px; background:#edf6fc; margin-top:34px; }
.itinerary-includes ul { display:grid; grid-template-columns:repeat(2,1fr); gap:12px 30px; padding-right:22px; line-height:1.7; }
.itinerary-includes .action-button { max-width:360px; margin-top:24px; }
@media(max-width:700px) { .category-hero.organized-photo-hero { min-height:330px; padding:45px 20px; } .itinerary-day { grid-template-columns:1fr; } .itinerary-photo { min-height:230px; } .itinerary-body { padding:24px; } .itinerary-body h3 { font-size:23px; } .itinerary-includes ul { grid-template-columns:1fr; } .organized-itinerary > h2 { font-size:27px; } }

.category-hero.esim-photo-hero { background:linear-gradient(90deg,rgba(0,0,0,.1),rgba(0,0,0,.7)),url('assets/esim-tbilisi-hero.jpg') center/cover; min-height:380px; padding:70px 24px; display:flex; align-items:center; }
.esim-photo-hero .category-hero-inner { width:100%; }
.esim-photo-hero h1,.esim-photo-hero p,.esim-photo-hero .category-kicker,.esim-photo-hero .breadcrumbs a { color:#fff; }
.esim-quick-order { background:#edf6fc; border:1px solid #c7dcec; padding:34px; border-radius:24px; margin-bottom:30px; text-align:center; }
.esim-offer-label { display:inline-block; background:#fff; border-radius:99px; padding:7px 18px; color:#123f74; font-weight:800; }
.esim-quick-order h2 { font-size:28px; margin:18px 0; }
.esim-price { display:flex; justify-content:center; align-items:baseline; flex-wrap:wrap; gap:12px; color:#123f74; font-size:22px; font-weight:700; }
.esim-price strong { font-size:56px; font-weight:900; line-height:1.2; }
.esim-quick-order p { color:#536b80; font-size:13px; }
.esim-quick-order .esim-quick-button { max-width:630px; margin:24px auto 14px; }
a.action-button.esim-quick-button { display:flex; align-items:center; justify-content:center; gap:18px; background:#123f74; color:#fff; min-height:72px; padding:18px 24px; font-size:24px; font-weight:900; border-radius:16px; box-shadow:0 12px 25px rgba(18,63,116,.2); }
a.action-button.esim-quick-button:hover { background:#0a2d54; transform:translateY(-2px); }
.esim-quick-order small { color:#536b80; }
@media(max-width:600px) { .category-hero.esim-photo-hero { padding:48px 20px; min-height:330px; } .esim-quick-order { padding:26px 18px; } .esim-quick-order h2 { font-size:24px; } a.action-button.esim-quick-button { font-size:20px; } .esim-price strong { font-size:48px; } }

.category-hero.flights-photo-hero { background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.68)),url('assets/flights-card.jpg') center 52%/cover; min-height:410px; padding:70px 24px; display:flex; align-items:center; }
.flights-photo-hero .category-hero-inner { width:100%; }
.flights-photo-hero h1 { max-width:780px; color:#fff; text-shadow:0 2px 14px rgba(0,0,0,.35); }
.flights-photo-hero p,.flights-photo-hero .category-kicker,.flights-photo-hero .breadcrumbs a { color:#fff; }
.flight-quick-order { margin-bottom:32px; padding:38px; border-radius:26px; background:linear-gradient(135deg,#edf6fc,#fff); border:1px solid #bfd7e9; text-align:center; box-shadow:0 16px 38px rgba(18,63,116,.1); }
.flight-quick-order > span { display:inline-block; padding:7px 18px; border-radius:99px; background:#fff; color:#123f74; font-weight:800; }
.category-hero.hotels-photo-hero { background:linear-gradient(90deg,rgba(0,0,0,.08),rgba(0,0,0,.68)),url('assets/hotels-category-art.png') center/cover; min-height:410px; padding:70px 24px; display:flex; align-items:center; }
.hotels-photo-hero .category-hero-inner { width:100%; }
.hotels-photo-hero h1,.hotels-photo-hero p,.hotels-photo-hero .category-kicker,.hotels-photo-hero .breadcrumbs a { color:#fff; }
.hotel-booking-intro { margin-bottom:34px; padding:34px; background:#edf6fc; border:1px solid #c7dcec; border-radius:26px; text-align:center; }
.hotel-booking-intro > span { font-weight:800; color:#123f74; }
.hotel-booking-intro h2 { font-size:30px; color:#123f74; }
.hotel-booking-intro p { max-width:850px; margin:14px auto; line-height:1.8; color:#40566b; }
.hotel-booking-intro p.provider-terms { font-size:13px; }
.hotel-provider-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; margin-top:28px; }
.hotel-provider-button { display:flex; flex-direction:column; align-items:center; gap:10px; background:#fff; padding:28px; border-radius:20px; border:2px solid #123f74; color:#123f74; text-decoration:none; box-shadow:0 12px 28px rgba(18,63,116,.1); transition:.2s; }
.hotel-provider-button:hover { transform:translateY(-3px); box-shadow:0 16px 32px rgba(18,63,116,.18); }
.hotel-provider-button b { font-size:23px; }
.provider-logo,.provider-wordmark { height:78px; display:flex; align-items:center; justify-content:center; }
.provider-logo img { width:140px; height:72px; object-fit:contain; }
.provider-wordmark { font-size:38px; font-weight:900; }
.hotel-provider-button > span:last-child { background:#123f74; color:#fff; width:44px; height:44px; display:grid; place-items:center; border-radius:50%; font-size:24px; }
@media(max-width:600px) { .hotel-provider-grid { grid-template-columns:1fr; } .hotel-booking-intro { padding:26px 18px; } .hotel-booking-intro h2 { font-size:24px; } .category-hero.hotels-photo-hero { min-height:340px; padding:48px 20px; } }
.flight-quick-order h2 { max-width:820px; margin:18px auto 10px; color:#123f74; font-size:30px; line-height:1.4; }
.flight-quick-order p { max-width:760px; margin:0 auto; color:#4f687e; line-height:1.8; }
a.action-button.flight-booking-button { display:flex; align-items:center; justify-content:center; gap:18px; max-width:720px; min-height:78px; margin:26px auto 0; padding:18px 26px; border-radius:17px; background:#123f74; color:#fff; font-size:25px; font-weight:900; box-shadow:0 14px 28px rgba(18,63,116,.24); }
a.action-button.flight-booking-button:hover { background:#0a2d54; transform:translateY(-2px); }
a.action-button.flight-booking-button.compact { min-height:58px; margin:16px 0; font-size:18px; }
@media(max-width:600px) { .category-hero.flights-photo-hero { min-height:340px; padding:48px 20px; background-position:56% center; } .flight-quick-order { padding:28px 18px; } .flight-quick-order h2 { font-size:24px; } a.action-button.flight-booking-button { min-height:70px; font-size:20px; } }

/* Supplier attractions, reviewed without prices. */

#am-attractions-preview h2,#am-attractions-preview h3,#am-attractions-preview summary,#am-attractions-preview a{font-family:"Heebo","Noto Sans Hebrew",Arial,sans-serif!important;font-style:normal!important}#am-attractions-preview h2{font-weight:900!important;letter-spacing:-1.4px;line-height:1.15}#am-attractions-preview h3{font-weight:700!important;letter-spacing:normal;line-height:1.35}
#am-attractions-preview{font-family:Heebo,Arial,sans-serif;background:#f5f9fc;color:#123f74;padding:24px;border-radius:20px}#am-attractions-preview *{box-sizing:border-box}#am-attractions-preview h2{font-size:30px;font-weight:800;margin:0 0 10px}#am-attractions-preview .ap-intro{color:#526d84;line-height:1.8;margin-bottom:26px}#am-attractions-preview .ap-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}#am-attractions-preview .ap-item{overflow:hidden;border-radius:18px;background:#fff;border:1px solid #d9e5ef;box-shadow:0 8px 24px #123f7410}#am-attractions-preview .ap-item img{width:100%;height:205px;object-fit:cover;display:block}#am-attractions-preview .ap-body{padding:20px}#am-attractions-preview h3{font-size:21px;font-weight:800;margin:0 0 6px}#am-attractions-preview .ap-area{color:#60788b;font-size:13px}#am-attractions-preview p{line-height:1.7}#am-attractions-preview details{border-top:1px solid #e2eaf1;padding-top:14px;margin-top:14px}#am-attractions-preview summary{font-weight:700;cursor:pointer}#am-attractions-preview a{display:block;text-decoration:none;color:#123f74;background:#edf6fc;padding:12px;border-radius:9px;margin-top:9px;font-weight:600}#am-attractions-preview .ap-contact{background:#123f74;color:#fff;text-align:center}#am-attractions-preview .ap-note{font-size:13px;color:#60788b;margin-top:24px} @media(max-width:540px){#am-attractions-preview{padding:16px}#am-attractions-preview .ap-grid{grid-template-columns:1fr}}


.page-brand-logo{display:block;width:76px;height:76px;object-fit:contain;flex-shrink:0;}
@media(max-width:560px){.page-brand-logo{width:64px;height:64px;}.page-brand{gap:8px;}}
