/* CSS utf-8 ő */
/* =============================================================================
   HOTEL2 - 2026-os design (fejlec, lablec, nyitolap)
   A default_BOOKINGV2.css UTAN toltodik (html_begin_BOOKINGV2_hotel2026.inc),
   minden osztaly "ht2" elotagu, hogy a belso oldalak regi stilusait ne zavarja.
============================================================================= */

:root {
	--ht2-ink:#1d2420;
	--ht2-muted:#5b6660;
	--ht2-muted2:#44504a;
	--ht2-line:#e3e7e4;
	--ht2-accent:#1f6b45;
	--ht2-accent-hover:#17563a;
	--ht2-accent-icon:#2e6a45;
	--ht2-soft:#e8eee9;
	--ht2-soft2:#eef4ef;
	--ht2-deep:#173b2c;
	--ht2-gold:#f2b84b;
	--ht2-yellow:#f6e04a;
	--ht2-field:#f1f3f2;
	--ht2-field2:#dde2de;
	--ht2-footer:#f7f8f7;
	--ht2-wine:#7a3b2e;
	--ht2-radius:10px;
	--ht2-gutter:24px;
	--ht2-max:1380px;
}

BODY.ht2body {font-family:'Figtree', system-ui, -apple-system, 'Segoe UI', Arial, sans-serif; color:var(--ht2-ink); background:#ffffff;}
BODY.ht2noscroll {overflow:hidden;}

.ht2sr {position:absolute !important; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0;}

.ht2header, .ht2main, .ht2footer, .ht2mobilemenu {text-align:left; box-sizing:border-box;}
.ht2header *, .ht2main *, .ht2footer *, .ht2mobilemenu * {box-sizing:border-box;}
.ht2header a:hover, .ht2main a:hover, .ht2footer a:hover, .ht2mobilemenu a:hover {text-decoration:none;}
.ht2main img {max-width:100%;}

/* GOMBOK ------------------------------------------------------------------- */
.ht2button {display:inline-flex; align-items:center; justify-content:center; gap:8px; min-height:44px; padding:0 22px; border-radius:5px; font-size:15px; line-height:1.2; font-weight:700; text-decoration:none; white-space:nowrap; transition:background-color .15s, color .15s;}
.ht2button svg {flex:none;}
.ht2buttonaccent, .ht2buttonaccent:visited {background:var(--ht2-accent); color:#ffffff;}
.ht2buttonaccent:hover {background:var(--ht2-accent-hover); color:#ffffff;}
.ht2buttonwhite, .ht2buttonwhite:visited {background:#ffffff; color:var(--ht2-ink); margin-top:6px;}
.ht2buttonwhite:hover {background:var(--ht2-soft); color:var(--ht2-ink);}
.ht2buttondark, .ht2buttondark:visited {background:var(--ht2-ink); color:#ffffff;}
.ht2buttondark:hover {background:#000000; color:#ffffff;}
.ht2buttonbig {min-height:48px; padding:0 24px;}
.ht2header a:focus-visible, .ht2main a:focus-visible, .ht2footer a:focus-visible, .ht2mobilemenu a:focus-visible,
.ht2header button:focus-visible, .ht2main button:focus-visible, .ht2mobilemenu button:focus-visible {outline:3px solid var(--ht2-gold); outline-offset:2px;}

/* FEJLEC ------------------------------------------------------------------- */
.ht2header {border-bottom:1px solid var(--ht2-line); background:#ffffff; position:relative; z-index:50;}
.ht2headerinner {max-width:var(--ht2-max); margin:0 auto; padding:10px var(--ht2-gutter); min-height:68px; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px 16px;}

.ht2logo {display:flex; align-items:center; min-height:44px; line-height:0; color:#000000; flex:none;}
.ht2logosvg {display:block; width:121px; height:38px;}
.ht2logobolt {fill:var(--ht2-accent);}
.ht2logotext {fill:currentColor;}
.ht2logotwo {fill:none; stroke:currentColor; stroke-width:10.5; stroke-linejoin:round;}

.ht2nav {display:flex; flex-wrap:wrap; align-items:center; gap:4px;}
.ht2navitem, .ht2navitem:visited {font-size:15px; font-weight:600; padding:12px 14px; color:var(--ht2-ink); border-radius:5px;}
.ht2navitem:hover, .ht2navitem.selected {color:var(--ht2-accent);}
.ht2login {margin-left:8px; padding:0 18px;}

.ht2burger {display:none; width:44px; height:44px; padding:0; border:0; border-radius:5px; background:transparent; color:var(--ht2-ink); cursor:pointer; align-items:center; justify-content:center;}
.ht2burger:hover {background:var(--ht2-field);}

/* Kereso (fallback urlap es az Algolia kontener kozos kerete) */
.ht2search {flex:1 1 260px; max-width:520px; min-width:0;}
.ht2searchform {display:flex; align-items:center; gap:8px; min-height:48px; padding:4px 4px 4px 20px; border-radius:999px; background:var(--ht2-field);}
.ht2searchlabel {flex:1; display:flex; align-items:center; min-width:0;}
.ht2searchlabel input {flex:1; min-width:0; border:0; outline:none; font:inherit; font-size:15px; color:var(--ht2-ink); padding:0; background:transparent;}
.ht2searchlabel input::placeholder {color:#6b756f;}
.ht2searchbtn {flex:none; width:40px; height:40px; padding:0; border:0; border-radius:999px; background:var(--ht2-field2); color:var(--ht2-ink); cursor:pointer; display:flex; align-items:center; justify-content:center;}
.ht2searchbtn:hover {background:#cfd6d1;}
.ht2searchform:focus-within {box-shadow:0 0 0 2px var(--ht2-accent);}

/* Algolia autocomplete (classic theme) a terv szerinti "pirula" formara */
.ht2search .aa-Autocomplete,
.aa-Panel, .aa-DetachedOverlay, .aa-DetachedContainer, .aa-DetachedFormContainer {
	--aa-font-family:'Figtree', system-ui, sans-serif;
	--aa-font-size:15px;
	--aa-search-input-height:48px;
	--aa-text-color-rgb:29,36,32;
	--aa-primary-color-rgb:31,107,69;
	--aa-muted-color-rgb:91,102,96;
	--aa-icon-color-rgb:29,36,32;
	--aa-input-background-color-rgb:241,243,242;
	--aa-input-border-color-rgb:241,243,242;
	--aa-selected-color-rgb:31,107,69;
	--aa-selected-color-alpha:0.08;
	--aa-panel-border-color-rgb:227,231,228;
}
.ht2search .aa-Form {border-radius:999px; border:0; padding:4px 4px 4px 20px; background:var(--ht2-field);}
.ht2search .aa-Form:focus-within {box-shadow:0 0 0 2px var(--ht2-accent); border:0;}
.ht2search .aa-InputWrapperPrefix {order:3; height:40px;}
.ht2search .aa-Label {height:40px;}
.ht2search .aa-SubmitButton {width:40px; height:40px; padding:0; border-radius:999px; background:var(--ht2-field2); display:flex; align-items:center; justify-content:center; cursor:pointer;}
.ht2search .aa-SubmitButton:hover {background:#cfd6d1;}
.ht2search .aa-SubmitIcon {width:18px; height:18px; color:var(--ht2-ink);}
.ht2search .aa-Input {font-size:15px; color:var(--ht2-ink);}
.ht2search .aa-Input::placeholder {color:#6b756f;}
.ht2search .aa-InputWrapperSuffix {order:2;}
.ht2search .aa-DetachedSearchButton {width:100%; height:48px; border:0; border-radius:999px; background:var(--ht2-field); padding:0 6px 0 20px; display:flex; flex-direction:row-reverse; justify-content:space-between; font-family:inherit; font-size:15px;}
.ht2search .aa-DetachedSearchButtonIcon {width:40px; height:40px; border-radius:999px; background:var(--ht2-field2); color:var(--ht2-ink); display:flex; align-items:center; justify-content:center;}
.ht2search .aa-DetachedSearchButtonPlaceholder {color:#6b756f; padding-left:0;}
.aa-Panel {border-radius:10px; font-family:'Figtree', system-ui, sans-serif; z-index:60;}
.aa-Panel .aa-SourceHeaderTitle {color:var(--ht2-accent); font-weight:700;}
.aa-Panel .aa-ItemLink, .aa-DetachedContainer .aa-ItemLink {text-decoration:none; color:var(--ht2-ink);}
.aa-Panel .aa-ItemContentTitle, .aa-DetachedContainer .aa-ItemContentTitle {font-weight:600;}

/* MOBIL MENU --------------------------------------------------------------- */
.ht2mobilemenu {position:fixed; inset:0; z-index:100000; background:#ffffff; display:flex; flex-direction:column; padding:10px var(--ht2-gutter) 32px; overflow-y:auto;}
.ht2mobilemenu[hidden] {display:none;}
.ht2mmtop {display:flex; align-items:center; justify-content:space-between; min-height:58px; border-bottom:1px solid var(--ht2-line); margin:0 calc(-1 * var(--ht2-gutter)); padding:0 var(--ht2-gutter);}
.ht2mmclose {width:44px; height:44px; padding:0; border:0; border-radius:5px; background:transparent; color:var(--ht2-ink); cursor:pointer; display:flex; align-items:center; justify-content:center;}
.ht2mmclose:hover {background:var(--ht2-field);}
.ht2mmnav {display:flex; flex-direction:column; padding:12px 0;}
.ht2mmitem, .ht2mmitem:visited {display:flex; align-items:center; min-height:52px; font-size:20px; font-weight:700; color:var(--ht2-ink); border-bottom:1px solid var(--ht2-line);}
.ht2mmitem.selected {color:var(--ht2-accent);}
.ht2mmbottom {display:flex; flex-direction:column; align-items:flex-start; gap:16px; margin-top:16px;}
.ht2mmbottom .ht2button {width:100%; min-height:48px;}
.ht2mmhotelreg, .ht2mmhotelreg:visited {font-size:15px; font-weight:700; color:var(--ht2-accent); text-decoration:underline; padding:8px 0;}

/* NYITOLAP: ALAP ----------------------------------------------------------- */
.ht2main {display:block; width:100%; padding-bottom:8px;}
.ht2section {max-width:var(--ht2-max); margin:0 auto; padding:0 var(--ht2-gutter);}
.ht2sechead {display:flex; flex-wrap:wrap; align-items:baseline; justify-content:space-between; gap:8px 24px; margin-bottom:22px;}
.ht2main H2.ht2sectitle {margin:0; padding:0; font-size:28px; line-height:1.2; font-weight:800; letter-spacing:-0.3px; color:var(--ht2-ink);}
.ht2seclead {margin:6px 0 0 0; font-size:17px; line-height:1.45; color:var(--ht2-muted);}
.ht2seclink, .ht2seclink:visited {font-size:15px; font-weight:700; color:var(--ht2-accent); text-decoration:underline; text-underline-offset:3px;}
.ht2seclink:hover {color:var(--ht2-accent-hover);}
.ht2main .ht2seclink:hover {text-decoration:underline;}

.ht2split {display:flex; flex-wrap:wrap; align-items:stretch; gap:28px 20px;}
.ht2split > * {flex:1 1 480px; min-width:0;}
.ht2grid2 {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:28px 20px; align-content:start;}
.ht2grid2hotels {gap:32px 20px;}
.ht2noimg {display:block; width:100%; aspect-ratio:7 / 3; border-radius:var(--ht2-radius); background:var(--ht2-line);}

/* PROMO: SARGA SAV ---------------------------------------------------------- */
.ht2promosection {padding-top:32px;}
.ht2bar {min-height:80px; margin-bottom:20px; padding:12px 16px 12px 20px; border-radius:var(--ht2-radius); background:var(--ht2-yellow); display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px;}
.ht2baricon {flex:none; color:var(--ht2-ink);}
.ht2main H2.ht2bartitle {flex:1 1 200px; margin:0; padding:0; font-size:28px; line-height:1.15; font-weight:800; letter-spacing:-0.3px; color:var(--ht2-ink);}

/* PROMO: KEPES DOBOZOK + KIEMELT UTI CEL ------------------------------------ */
.ht2promos {display:flex; flex-wrap:wrap; gap:20px;}
.ht2promo, .ht2destfeatured {position:relative; border-radius:var(--ht2-radius); overflow:hidden; display:flex; flex-direction:column; justify-content:flex-end; color:#ffffff;}
.ht2promo {flex:1 1 340px; aspect-ratio:4 / 3; background:#2f5d4a;}
.ht2promo2 {background:var(--ht2-wine);}
.ht2destfeatured {min-height:340px; background:var(--ht2-deep);}
.ht2promo > img, .ht2destfeatured > img {position:absolute; inset:0; width:100%; height:100%; object-fit:cover;}
.ht2promo > img {object-position:center bottom;}
.ht2promoshade {position:absolute; inset:0; background:linear-gradient(180deg, rgba(8,24,17,0) 40%, rgba(8,24,17,0.55) 62%, rgba(8,24,17,0.85) 100%);}
.ht2promo2 .ht2promoshade {background:linear-gradient(180deg, rgba(30,12,8,0) 40%, rgba(30,12,8,0.55) 62%, rgba(30,12,8,0.85) 100%);}
.ht2destfeatured .ht2promoshade {background:linear-gradient(180deg, rgba(8,24,17,0) 25%, rgba(8,24,17,0.82) 100%);}
.ht2promobody {position:relative; padding:32px; display:flex; flex-direction:column; align-items:flex-start; gap:10px;}
.ht2destfeatured .ht2promobody {padding:28px;}
.ht2promoicon {display:flex; align-items:center; justify-content:center; width:52px; height:52px; margin-bottom:4px; border-radius:999px; background:#ffffff; color:var(--ht2-accent-icon);}
.ht2promo2 .ht2promoicon {color:var(--ht2-wine);}
.ht2main .ht2promotitle {margin:0; padding:0; font-size:36px; line-height:1.1; font-weight:800; letter-spacing:-0.4px; color:#ffffff;}
.ht2promotext {margin:0; max-width:500px; font-size:16px; line-height:1.55; color:#eef3ef;}
.ht2promo2 .ht2promotext {color:#f6ece9;}

/* SZALLASTIPUSOK ------------------------------------------------------------ */
.ht2typesection {padding-top:28px;}
.ht2chips {list-style:none; margin:0; padding:0; display:flex; flex-wrap:wrap; gap:10px;}
.ht2chips li {margin:0; padding:0;}
.ht2chip, .ht2chip:visited {display:inline-flex; align-items:center; gap:8px; min-height:44px; padding:0 18px; border-radius:999px; background:var(--ht2-soft); font-size:15px; font-weight:600; color:var(--ht2-ink);}
.ht2chip svg {color:var(--ht2-accent-icon); flex:none;}
.ht2chip:hover {background:#d9e4dc; color:var(--ht2-ink);}

/* NEPSZERU UTI CELOK --------------------------------------------------------- */
.ht2destsection {padding-top:56px;}
.ht2destcard, .ht2destcard:visited {display:flex; flex-direction:column; gap:10px; color:var(--ht2-ink);}
.ht2destcard img {display:block; width:100%; height:auto; aspect-ratio:7 / 3; object-fit:cover; border-radius:var(--ht2-radius);}
.ht2destname {font-size:18px; font-weight:700;}
.ht2destcard:hover .ht2destname {color:var(--ht2-accent);}

/* KIEMELT SZALLASOK ---------------------------------------------------------- */
.ht2hotelsection {padding-top:64px;}
.ht2hotelcard {position:relative; display:flex; flex-direction:column; gap:10px;}
.ht2hotelpic {position:relative; display:block; border-radius:var(--ht2-radius); overflow:hidden; background:var(--ht2-line);}
.ht2hotelpic img {display:block; width:100%; height:auto; aspect-ratio:7 / 3; object-fit:cover;}
.ht2hotelpic .ht2noimg {border-radius:0;}
.ht2hotelinfo {display:flex; flex-direction:column; gap:6px;}
.ht2hotelname, .ht2hotelname:visited, .ht2hotelname a, .ht2hotelname a:visited {font-size:18px; font-weight:700; line-height:1.25; color:var(--ht2-ink);}
.ht2hotelname:hover, .ht2hotelname a:hover {color:var(--ht2-accent);}
.ht2hotelname sup {font-size:11px; font-weight:600;}
.ht2hotelcity {font-size:14px; color:var(--ht2-muted);}

.ht2price {position:absolute; right:8px; bottom:8px; padding:4px 10px; border-radius:5px; background:#ffffff; font-size:12px; line-height:1.4; color:#4a544e; white-space:nowrap;}
.ht2price strong {font-size:15px; color:var(--ht2-ink); font-weight:800;}
.ht2pricebig {right:16px; bottom:16px; padding:6px 12px; font-size:14px;}
.ht2pricebig strong {font-size:18px;}

.ht2rating {position:absolute; top:8px; left:8px; display:inline-flex; align-items:center; gap:7px; padding:3px 10px 3px 3px; border-radius:5px; background:#ffffff; font-size:13px; font-weight:600; color:var(--ht2-ink);}
.ht2ratingnum {min-width:30px; padding:2px 6px; border-radius:4px; background:var(--ht2-accent); color:#ffffff; font-size:14px; font-weight:700; text-align:center;}
.ht2ratingbig {top:16px; left:16px; gap:8px; padding:4px 12px 4px 4px; font-size:14px;}
.ht2ratingbig .ht2ratingnum {min-width:34px; padding:3px 7px; font-size:15px;}

.ht2hotelfeatured {position:relative; display:flex; flex-direction:column; gap:14px;}
.ht2hotelpicbig {flex:1 1 auto; min-height:240px;}
.ht2hotelpicbig img {position:absolute; inset:0; width:100%; height:100%; aspect-ratio:auto;}
.ht2hotelfeatured .ht2hotelinfo {align-items:flex-start; gap:8px;}
.ht2main H3.ht2hotelnamebig {margin:0; padding:0; font-size:28px; line-height:1.15; font-weight:800; letter-spacing:-0.3px;}
.ht2main H3.ht2hotelnamebig a {font-size:inherit; font-weight:inherit;}
.ht2hotellead {margin:0; max-width:560px; font-size:16px; line-height:1.55; color:var(--ht2-muted2);}
.ht2hotelfeatured .ht2button {margin-top:4px;}

/* SZALLASADOKNAK + HIRLEVEL --------------------------------------------------- */
.ht2ctasection {padding-top:72px;}
.ht2ctas {display:flex; flex-wrap:wrap; gap:20px;}
.ht2cta {flex:1 1 380px; border-radius:8px; padding:32px; display:flex; flex-direction:column; align-items:flex-start; gap:12px;}
.ht2ctahost {background:var(--ht2-soft2);}
.ht2ctanewsletter {background:var(--ht2-deep); color:#ffffff;}
.ht2eyebrow {font-size:13px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--ht2-accent-icon);}
.ht2ctanewsletter .ht2eyebrow {color:var(--ht2-gold);}
.ht2main H2.ht2ctatitle {margin:0; padding:0; font-size:24px; line-height:1.25; font-weight:800; color:inherit;}
.ht2ctatext {margin:0; font-size:16px; line-height:1.55; color:var(--ht2-muted2);}
.ht2ctabuttons {display:flex; flex-wrap:wrap; align-items:center; gap:10px; margin-top:6px;}
.ht2textlink, .ht2textlink:visited {display:inline-flex; align-items:center; min-height:44px; padding:0 16px; font-size:15px; font-weight:700; color:var(--ht2-accent); text-decoration:underline; text-underline-offset:3px;}
.ht2main .ht2textlink:hover {color:var(--ht2-accent-hover); text-decoration:underline;}
.ht2nlform {width:100%; display:flex; flex-wrap:wrap; gap:10px; margin:6px 0 0 0;}
.ht2nllabel {flex:1 1 220px; display:flex;}
.ht2nllabel input {flex:1; min-width:0; min-height:46px; border:0; border-radius:5px; padding:0 14px; font:inherit; font-size:16px; color:var(--ht2-ink); background:#ffffff;}
.ht2nllabel input:focus {outline:3px solid var(--ht2-gold); outline-offset:1px;}
.ht2nlbutton {min-height:46px; padding:0 20px; border:0; border-radius:5px; background:var(--ht2-gold); color:var(--ht2-ink); font:inherit; font-size:15px; font-weight:700; cursor:pointer;}
.ht2nlbutton:hover {background:#e9a93a;}
.ht2nlbutton:focus-visible {outline:3px solid #ffffff; outline-offset:2px;}

/* LABLEC ---------------------------------------------------------------------- */
.ht2footer {margin-top:72px; border-top:1px solid var(--ht2-line); background:var(--ht2-footer); clear:both;}
.ht2home .ht2footer {margin-top:72px;}
.ht2footerinner {max-width:var(--ht2-max); margin:0 auto; padding:44px var(--ht2-gutter) 28px; display:grid; grid-template-columns:repeat(auto-fill, minmax(180px, 1fr)); gap:28px 24px;}
.ht2fcol {display:flex; flex-direction:column; align-items:flex-start; gap:10px; font-size:14px;}
.ht2fcol a, .ht2fcol a:visited {color:var(--ht2-muted2); padding:2px 0;}
.ht2fcol a:hover {color:var(--ht2-accent);}
.ht2footer H2.ht2ftitle {margin:0; padding:0; font-size:13px; line-height:1.4; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:var(--ht2-ink);}
.ht2flogo, .ht2flogo:visited {display:flex; line-height:0; color:#000000; padding:0;}
.ht2flogo .ht2logosvg {width:96px; height:30px;}
.ht2footersub {max-width:var(--ht2-max); margin:0 auto; padding:18px var(--ht2-gutter) 32px; border-top:1px solid var(--ht2-line); display:flex; flex-wrap:wrap; justify-content:space-between; gap:8px 20px; font-size:13px; color:var(--ht2-muted);}
.ht2fsublinks, .ht2fcredits {display:flex; flex-wrap:wrap; gap:8px 20px;}
.ht2footersub a, .ht2footersub a:visited {color:var(--ht2-muted); text-decoration:underline; text-underline-offset:2px;}
.ht2footersub a:hover {color:var(--ht2-accent); text-decoration:underline;}

/* RESZPONZIV ------------------------------------------------------------------ */
@media (max-width:1080px){
	.ht2nav {display:none;}
	.ht2burger {display:flex;}
	.ht2search {max-width:none;}
}

@media (max-width:760px){
	:root {--ht2-gutter:16px;}
	.ht2headerinner {padding-top:8px; padding-bottom:12px;}
	.ht2logo {order:1;}
	.ht2burger {order:2;}
	.ht2search {order:3; flex:1 1 100%;}
	.ht2main H2.ht2sectitle {font-size:24px;}
	.ht2seclead {font-size:16px;}
	.ht2main H2.ht2bartitle {font-size:22px;}
	.ht2main .ht2promotitle {font-size:28px;}
	.ht2promo {aspect-ratio:auto; min-height:400px;}
	.ht2promobody {padding:24px;}
	.ht2destfeatured .ht2promobody {padding:24px;}
	.ht2split > * {flex-basis:100%;}
	.ht2destsection {padding-top:44px;}
	.ht2hotelsection {padding-top:48px;}
	.ht2ctasection {padding-top:48px;}
	.ht2cta {padding:24px; flex-basis:100%;}
	.ht2main H3.ht2hotelnamebig {font-size:24px;}
	.ht2footer {margin-top:48px;}
	.ht2footerinner {grid-template-columns:repeat(2, minmax(0, 1fr));}
}

@media (max-width:480px){
	.ht2grid2 {grid-template-columns:minmax(0, 1fr);}
	.ht2price {font-size:11px;}
	.ht2bar .ht2button {width:100%;}
}
