/* =========================================================================
   Alekh Holidays — single tour page
   Brand blue: #0673AD.  Sticky offset var: --ah-header (auto-set by JS).
   ========================================================================= */
.ah-single{
	--b:#0673AD; --b-d:#055d90; --ink:#12232e; --mut:#5b6b78;
	--line:#e6ebf0; --soft:#f6f8fa;
	color:var(--ink); font-family:inherit;
}
.ah-single *{box-sizing:border-box}

/* give the tour page a full-width canvas inside Astra */
.single-product #primary,
.single-product .site-content .ast-container{max-width:100%!important;padding-left:0!important;padding-right:0!important}
.single-product .site-main{padding:0!important;margin:0!important}
.single-product .entry-header,
.single-product .ast-single-related-posts-container{display:none!important}

.ah-wrap{max-width:1180px;margin:0 auto;padding:0 24px}

/* ---------------- GALLERY ---------------- */
.ah-gallery{position:relative;width:auto;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);
	height:clamp(360px,54vh,580px);overflow:hidden;background:#0e3a57}
.ah-slides,.ah-slide{position:absolute;inset:0}
.ah-slide{background-size:cover;background-position:center;opacity:0;transition:opacity .8s ease}
.ah-slide.is-active{opacity:1}
.ah-gallery-overlay{position:absolute;inset:0;display:flex;align-items:flex-end;
	background:linear-gradient(to top,rgba(4,22,35,.82),rgba(4,22,35,.15) 55%,rgba(4,22,35,.08))}
.ah-gallery-inner{width:100%;padding-bottom:32px;color:#fff}
.ah-crumb{font-size:13px;color:rgba(255,255,255,.85);margin-bottom:6px}
.ah-crumb a{color:rgba(255,255,255,.85);text-decoration:none}
.ah-crumb a:hover{color:#fff}
.ah-crumb span{opacity:.6;margin:0 4px}
.ah-title{color:#fff;font-size:clamp(26px,3.4vw,42px);font-weight:800;line-height:1.14;margin:0 0 14px}
.ah-facts{display:flex;flex-wrap:wrap;gap:10px}
.ah-fact{background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.28);color:#fff;
	padding:7px 15px;border-radius:999px;font-size:13.5px;font-weight:600;backdrop-filter:blur(4px)}
.ah-fact-dur::before{content:"\1F552";margin-right:6px}
.ah-g-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:44px;height:44px;border:0;
	border-radius:50%;background:rgba(255,255,255,.9);color:var(--ink);font-size:24px;line-height:1;cursor:pointer;
	display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px rgba(0,0,0,.2)}
.ah-g-prev{left:20px}.ah-g-next{right:20px}
.ah-g-arrow:hover{background:#fff}
.ah-dots{position:absolute;left:0;right:0;bottom:14px;z-index:3;display:flex;justify-content:center;gap:8px}
.ah-dot{width:9px;height:9px;border-radius:50%;border:0;background:rgba(255,255,255,.5);cursor:pointer;padding:0}
.ah-dot.is-active{background:#fff;width:22px;border-radius:5px}

/* ---------------- SUB-NAV (scroll spy) ---------------- */
.ah-subnav{position:sticky;top:var(--ah-header,0px);z-index:30;background:#fff;
	border-bottom:1px solid var(--line);box-shadow:0 4px 14px rgba(6,25,40,.05)}
.ah-subnav-inner{display:flex;align-items:center;gap:16px}
.ah-subnav-links{display:flex;gap:6px;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}
.ah-subnav-links::-webkit-scrollbar{display:none}
.ah-subnav a{position:relative;padding:16px 14px;color:var(--mut);font-weight:600;font-size:15px;
	text-decoration:none;white-space:nowrap}
.ah-subnav a:hover{color:var(--ink)}
.ah-subnav a.is-active{color:var(--b)}
.ah-subnav a.is-active::after{content:"";position:absolute;left:14px;right:14px;bottom:-1px;height:3px;
	background:var(--b);border-radius:3px}
.ah-subnav-cta{margin-left:auto;flex:0 0 auto;background:linear-gradient(90deg,#0a8ecb,#0673AD);
	color:#fff!important;border-radius:999px;padding:9px 24px!important;font-weight:700;box-shadow:0 8px 18px rgba(6,115,173,.28)}
.ah-subnav-cta::after{display:none!important}

/* ---------------- BODY GRID ---------------- */
.ah-body{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:44px;
	padding-top:40px;padding-bottom:64px;align-items:start}
.ah-section{scroll-margin-top:calc(var(--ah-header,0px) + 74px);margin-bottom:44px}
.ah-section:last-child{margin-bottom:0}
.ah-single .ah-section h2{font-size:25px;font-weight:800;color:var(--ink);margin:0 0 18px;padding-bottom:12px;position:relative}
.ah-single .ah-section h2::after{content:"";position:absolute;left:0;bottom:0;width:54px;height:3px;background:var(--b);border-radius:3px}
.ah-lead{font-size:16px;line-height:1.6;color:var(--mut);margin:0 0 16px}

/* rich text from ACF */
.ah-rte{font-size:15.5px;line-height:1.78;color:#2c3e4c}
.ah-rte > *:first-child{margin-top:0}
.ah-rte p{margin:0 0 14px}
.ah-rte strong{color:var(--ink)}
.ah-rte h3,.ah-rte h4{font-size:18px;font-weight:700;color:var(--ink);margin:24px 0 10px}
.ah-rte ul,.ah-rte ol{margin:12px 0 16px;padding-left:0}
.ah-rte ul{list-style:none}
.ah-rte ul li{position:relative;padding-left:28px;margin:9px 0}
.ah-rte ul li::before{content:"";position:absolute;left:0;top:4px;width:16px;height:16px;
	background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230673AD' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") center/contain no-repeat}
.ah-rte ol{padding-left:20px}
.ah-rte ol li{margin:9px 0}
.ah-rte a{color:var(--b)}

/* ---------------- STICKY CARD ---------------- */
.ah-side{position:sticky;top:calc(var(--ah-header,0px) + 140px)}
.ah-card{background:#fff;border:1px solid var(--line);border-radius:16px;
	box-shadow:0 16px 44px rgba(6,25,40,.10);padding:24px}
.ah-card-price{display:flex;align-items:baseline;flex-wrap:wrap;gap:7px;
	border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:18px}
.ah-from{color:var(--mut);font-size:14px}
.ah-amt{font-size:30px;font-weight:800;color:var(--ink)}
.ah-amt .woocommerce-Price-amount{font-size:inherit;font-weight:inherit;color:inherit}
.ah-per{color:var(--mut);font-size:14px}
.ah-benefits{list-style:none;padding:0;margin:0 0 20px}
.ah-benefits li{position:relative;padding-left:30px;margin:13px 0;font-weight:600;color:#2c3e4c;font-size:15px}
.ah-benefits li::before{content:"";position:absolute;left:0;top:0;width:20px;height:20px;
	background:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230673AD' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6 9 17l-5-5'/></svg>") center/contain no-repeat}
.ah-book-now{display:block;width:100%;border:0;cursor:pointer;color:#fff;font-size:16px;font-weight:700;
	padding:15px;border-radius:12px;background:linear-gradient(90deg,#0a8ecb,#0673AD);
	box-shadow:0 10px 22px rgba(6,115,173,.3);transition:transform .12s}
.ah-book-now:hover{transform:translateY(-1px)}
.ah-card-help{text-align:center;font-size:13px;color:var(--mut);margin-top:14px}
.ah-card-help a{color:var(--b);font-weight:600;text-decoration:none}

/* ---------------- ENQUIRY FORM ---------------- */
.ah-enquire{background:var(--soft);border:1px solid var(--line);border-radius:16px;padding:28px;
	scroll-margin-top:calc(var(--ah-header,0px) + 74px)}
.ah-enquire-sub{color:var(--mut);margin:-6px 0 18px;font-size:15px}
.ah-form label{display:flex;flex-direction:column;gap:6px;font-size:12.5px;font-weight:600;
	letter-spacing:.03em;text-transform:uppercase;color:var(--mut)}
.ah-frow{display:flex;gap:16px;margin-bottom:16px;flex-wrap:wrap}
.ah-frow > label{flex:1;min-width:190px}
.ah-ffull{display:flex;margin-bottom:16px}
.ah-form input,.ah-form select,.ah-form textarea{border:1px solid var(--line);border-radius:10px;
	padding:12px 14px;font-size:15px;color:var(--ink);background:#fff;font-family:inherit;font-weight:500;text-transform:none;letter-spacing:normal}
.ah-form textarea{resize:vertical}
.ah-form input:focus,.ah-form select:focus,.ah-form textarea:focus{outline:none;border-color:var(--b);box-shadow:0 0 0 3px rgba(6,115,173,.12)}
.ah-form input.ah-bad{border-color:#c0392b;background:#fff5f5}
.ah-f-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.ah-f-msgout{color:#c0392b;font-size:14px;margin-bottom:10px;min-height:1px}
.ah-f-submit{border:0;cursor:pointer;color:#fff;font-size:16px;font-weight:700;padding:14px 44px;
	border-radius:999px;background:linear-gradient(90deg,#0a8ecb,#0673AD);box-shadow:0 10px 22px rgba(6,115,173,.3);transition:transform .12s}
.ah-f-submit:hover{transform:translateY(-1px)}
.ah-f-submit:disabled{opacity:.6;cursor:default}
.ah-f-success{padding:6px 0}
.ah-f-success strong{font-size:18px;color:var(--ink)}
.ah-f-success p{color:var(--mut);margin:6px 0 12px}
.ah-f-wa{display:inline-block;background:#25d366;color:#fff;text-decoration:none;font-weight:700;
	padding:11px 22px;border-radius:999px}
.ah-f-wa:hover{opacity:.92;color:#fff}

/* ---------------- MOBILE BOTTOM BAR ---------------- */
.ah-mobilebar{display:none}

/* ---------------- RESPONSIVE ---------------- */
@media(max-width:980px){
	.ah-body{grid-template-columns:1fr;gap:0;padding-top:26px;padding-bottom:40px}
	.ah-side{position:static;order:-1;margin-bottom:28px;margin-top:28px}
	.ah-card{box-shadow:0 8px 24px rgba(6,25,40,.08)}
	.ah-subnav-cta{display:none}
	.ah-single{padding-bottom:76px}
	.ah-mobilebar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:60;background:#fff;
		border-top:1px solid var(--line);box-shadow:0 -6px 20px rgba(0,0,0,.08);
		padding:10px 16px;align-items:center;justify-content:space-between;gap:14px}
	.ah-mb-price{display:flex;flex-direction:column;line-height:1.15}
	.ah-mb-price span{font-size:11px;color:var(--mut)}
	.ah-mb-price strong{font-size:18px;color:var(--ink)}
	.ah-mobilebar .ah-book-now{width:auto;padding:12px 28px;border-radius:999px}
}
@media(max-width:600px){
	.ah-wrap{padding:0 16px}
	.ah-gallery{height:clamp(280px,44vh,420px)}
	.ah-enquire{padding:20px}
	.ah-frow{gap:12px}
	.ah-frow > label{min-width:100%}
	.ah-gallery-inner{padding-bottom:42px}   /* lift title + facts clear of the dots */
	.ah-crumb{margin-bottom:4px}
	.ah-title{font-size:23px;margin-bottom:10px}
	.ah-facts{gap:8px}
	.ah-fact{padding:5px 12px;font-size:12.5px}
	.ah-g-arrow{width:36px;height:36px;font-size:20px;display:none}
	.ah-g-prev{left:10px}
	.ah-g-next{right:10px}
	.ah-dots{bottom:14px}
}
