/*
 * AL SAHL Store Core — Cart Page
 * Migrated from the tested server-rendered WPCode cart.
 */

@font-face{
		font-family:"Bahij TheSansArabic";
		src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Light.ttf") format("truetype");
		font-weight:300;
		font-style:normal;
		font-display:swap;
	}

	@font-face{
		font-family:"Bahij TheSansArabic";
		src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Plain.ttf") format("truetype");
		font-weight:400;
		font-style:normal;
		font-display:swap;
	}

	@font-face{
		font-family:"Bahij TheSansArabic";
		src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-SemiBold.ttf") format("truetype");
		font-weight:600;
		font-style:normal;
		font-display:swap;
	}

	@font-face{
		font-family:"Bahij TheSansArabic";
		src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-Bold.ttf") format("truetype");
		font-weight:700;
		font-style:normal;
		font-display:swap;
	}

	@font-face{
		font-family:"Bahij TheSansArabic";
		src:url("/wp-content/uploads/fonts/Bahij-TheSansArabic-ExtraBold.ttf") format("truetype");
		font-weight:800;
		font-style:normal;
		font-display:swap;
	}


	html,
	body{
		margin:0;
		padding:0;
	}

	body.as-cart-server-page{
		--as-cream:#F4ECD9;
		--as-gold:#E6BC70;
		--as-olive-gold:#928648;
		--as-olive:#585939;
		--as-dark:#33310A;
		--as-card:#F8F2E4;
		--as-soft:#EEE4CA;
		--as-muted:#817A61;
		--as-border:rgba(146,134,72,.23);
		--as-container:1260px;

		min-height:100vh;

		direction:rtl;

		color:var(--as-dark);
		background:var(--as-cream);

		font-family:
			"Bahij TheSansArabic",
			Tahoma,
			Arial,
			sans-serif;

		-webkit-font-smoothing:antialiased;
	}

	body.as-cart-server-page *,
	body.as-cart-server-page *::before,
	body.as-cart-server-page *::after{
		box-sizing:border-box;
	}

	body.as-cart-server-page a{
		color:inherit;
		text-decoration:none;
	}

	body.as-cart-server-page button,
	body.as-cart-server-page input{
		font:inherit;
	}

	.as-cart-shell{
		width:100%;
		min-height:100vh;
	}

	.as-cart-container{
		width:min(
			calc(100% - 48px),
			var(--as-container)
		);

		margin-inline:auto;
	}


	/* HERO */

	.as-cart-hero{
		padding:42px 0 44px;

		background:
			radial-gradient(
				circle at 14% 32%,
				rgba(230,188,112,.16),
				transparent 26%
			),
			linear-gradient(
				180deg,
				#F4ECD9 0%,
				#F1E6CF 100%
			);

		border-bottom:
			1px solid
			rgba(51,49,10,.07);
	}

	.as-cart-breadcrumb{
		margin-bottom:29px;

		display:flex;
		align-items:center;
		flex-wrap:wrap;

		gap:7px;

		color:#908867;

		font-size:11px;
	}

	.as-cart-breadcrumb a{
		color:#7C755D;
	}

	.as-cart-hero-grid{
		display:grid;

		grid-template-columns:
			minmax(0,1fr)
			180px;

		gap:55px;

		align-items:center;
	}

	.as-cart-eyebrow{
		display:flex;
		align-items:center;

		gap:11px;

		color:var(--as-olive-gold);

		font-size:12px;
		font-weight:600;
	}

	.as-cart-eyebrow span{
		width:30px;
		height:1px;

		background:currentColor;
	}

	.as-cart-hero h1{
		margin:12px 0 7px;

		color:var(--as-dark);

		font-size:clamp(44px,4.3vw,64px);
		font-weight:800;
		line-height:1.17;
		letter-spacing:-.35px;
	}

	.as-cart-hero p{
		margin:0;

		color:#777058;

		font-size:14px;
		line-height:1.8;
	}

	.as-cart-count-box{
		min-height:130px;

		padding:18px;

		display:flex;
		flex-direction:column;
		align-items:center;
		justify-content:center;

		border:
			1px solid
			rgba(146,134,72,.28);

		background:
			rgba(255,255,255,.16);

		text-align:center;
	}

	.as-cart-count-box span,
	.as-cart-count-box small{
		color:#817A61;
		font-size:10px;
	}

	.as-cart-count-box strong{
		margin:3px 0;

		color:var(--as-dark);

		font-family:Arial,sans-serif;
		font-size:38px;
		font-weight:700;
	}


	/* TRUST */

	.as-cart-trust-wrap{
		padding:20px 0 0;
	}

	.as-cart-trust{
		display:grid;

		grid-template-columns:
			repeat(3,1fr);

		overflow:hidden;

		border:
			1px solid
			var(--as-border);

		background:
			rgba(255,255,255,.15);
	}

	.as-cart-trust article{
		min-height:88px;

		padding:16px 22px;

		display:flex;
		align-items:center;

		gap:13px;

		border-left:
			1px solid
			var(--as-border);
	}

	.as-cart-trust article:last-child{
		border-left:0;
	}

	.as-cart-trust-icon{
		width:44px;
		height:44px;

		flex:0 0 44px;

		display:flex;
		align-items:center;
		justify-content:center;

		border:
			1px solid
			rgba(230,188,112,.42);

		color:var(--as-olive-gold);
	}

	.as-cart-trust-icon svg{
		width:21px;
		height:21px;

		fill:none;

		stroke:currentColor;
		stroke-width:1.8;
		stroke-linecap:round;
		stroke-linejoin:round;
	}

	.as-cart-trust strong{
		display:block;

		font-size:12px;
		font-weight:600;
	}

	.as-cart-trust span{
		display:block;

		margin-top:2px;

		color:#827A61;

		font-size:9.5px;
	}


	/* CART */

	.as-cart-main{
		padding:34px 0 86px;
	}

	.as-cart-grid{
		display:grid;

		grid-template-columns:
			minmax(0,1.48fr)
			minmax(330px,.72fr);

		gap:24px;

		align-items:start;
	}

	.as-cart-items{
		overflow:hidden;

		border:
			1px solid
			rgba(146,134,72,.18);

		border-radius:4px;

		background:#F9F4E9;
	}

	.as-cart-items-head{
		min-height:48px;

		padding:0 18px;

		display:grid;

		grid-template-columns:
			100px
			minmax(0,1fr)
			115px
			130px
			115px
			34px;

		gap:12px;

		align-items:center;

		background:var(--as-soft);

		color:#827A61;

		font-size:10px;
		font-weight:600;
	}

	.as-cart-row{
		position:relative;

		padding:18px;

		display:grid;

		grid-template-columns:
			100px
			minmax(0,1fr)
			115px
			130px
			115px
			34px;

		gap:12px;

		align-items:center;

		border-top:
			1px solid
			rgba(146,134,72,.13);

		transition:
			opacity .18s ease,
			transform .18s ease;
	}

	.as-cart-row.is-removing{
		opacity:.35;
		transform:scale(.992);
		pointer-events:none;
	}

	.as-cart-product-image-wrap{
		width:88px;
		height:88px;

		display:flex;
		align-items:center;
		justify-content:center;

		border:
			1px solid
			rgba(146,134,72,.16);

		border-radius:3px;

		background:var(--as-soft);
	}

	.as-cart-product-image-wrap img{
		width:100%;
		height:100%;

		padding:7px;

		object-fit:contain;
	}

	.as-cart-product-name{
		color:var(--as-dark);

		font-size:14px;
		font-weight:600;

		line-height:1.6;
	}

	.as-cart-product-meta{
		margin-top:5px;

		color:#8A8268;

		font-size:10px;

		line-height:1.6;
	}

	.as-cart-money{
		color:var(--as-dark);

		font-size:13px;
		font-weight:600;
	}

	.as-cart-money .woocommerce-Price-currencySymbol{
		font-size:10px;
	}


	/* QUANTITY */

	.as-cart-qty{
		width:118px;
		height:42px;

		display:grid;

		grid-template-columns:
			36px
			minmax(0,1fr)
			36px;

		align-items:stretch;

		overflow:hidden;

		border:
			1px solid
			rgba(146,134,72,.30);

		border-radius:2px;

		background:
			rgba(255,255,255,.30);
	}

	.as-cart-qty button{
		width:36px;
		height:40px;

		padding:0;

		border:0;

		background:transparent;

		color:var(--as-dark);

		font-family:Arial,sans-serif;
		font-size:19px;

		cursor:pointer;

		transition:
			background .16s ease,
			opacity .16s ease;
	}

	.as-cart-qty button:hover:not(:disabled){
		background:
			rgba(230,188,112,.20);
	}

	.as-cart-qty button:disabled{
		opacity:.28;
		cursor:not-allowed;
	}

	.as-cart-qty input{
		width:100%;
		height:40px;

		padding:0 4px;

		border:0;
		border-right:
			1px solid
			rgba(146,134,72,.15);
		border-left:
			1px solid
			rgba(146,134,72,.15);

		outline:0;

		background:transparent;

		color:var(--as-dark);

		font-family:Arial,sans-serif;
		font-size:13px;
		font-weight:700;

		text-align:center;

		-moz-appearance:textfield;
	}

	.as-cart-qty input::-webkit-outer-spin-button,
	.as-cart-qty input::-webkit-inner-spin-button{
		margin:0;
		-webkit-appearance:none;
	}

	.as-cart-remove{
		width:27px;
		height:27px;

		padding:0;

		display:flex;
		align-items:center;
		justify-content:center;

		border:
			1px solid
			rgba(146,134,72,.28);

		border-radius:50%;

		background:transparent;

		color:#8D6D61;

		font-family:Arial,sans-serif;
		font-size:16px;

		cursor:pointer;
	}

	.as-cart-remove:hover{
		border-color:#8D6D61;
		background:#8D6D61;
		color:#fff;
	}


	/* SUMMARY */

	.as-cart-summary{
		position:sticky;
		top:24px;

		padding:23px;

		border:
			1px solid
			rgba(146,134,72,.18);

		border-radius:4px;

		background:#F9F4E9;

		box-shadow:
			0 16px 38px
			rgba(51,49,10,.055);
	}

	.as-cart-summary h2{
		margin:0 0 17px;

		padding:0 0 14px;

		border-bottom:
			1px solid
			rgba(146,134,72,.16);

		font-size:20px;
		font-weight:700;
	}

	.as-cart-update-state{
		max-height:0;

		margin:0;

		overflow:hidden;

		display:flex;
		align-items:center;

		gap:7px;

		color:#817A61;

		font-size:10px;

		opacity:0;

		transition:
			max-height .2s ease,
			margin .2s ease,
			opacity .2s ease;
	}

	.as-cart-update-state.active{
		max-height:32px;
		margin:-6px 0 10px;
		opacity:1;
	}

	.as-cart-update-state.success{
		color:var(--as-olive);
	}

	.as-cart-spinner{
		width:12px;
		height:12px;

		flex:0 0 12px;

		border:
			1.5px solid
			rgba(146,134,72,.25);

		border-top-color:
			var(--as-olive-gold);

		border-radius:50%;

		animation:
			asCartSpin .7s linear infinite;
	}

	.as-cart-update-state.success
	.as-cart-spinner{
		border:0;
		border-radius:0;
		animation:none;
	}

	.as-cart-update-state.success
	.as-cart-spinner::before{
		content:"✓";

		color:var(--as-olive);

		font-size:12px;
		font-weight:700;
	}

	@keyframes asCartSpin{
		to{
			transform:rotate(360deg);
		}
	}

	.as-cart-summary-row{
		padding:13px 0;

		display:grid;

		grid-template-columns:
			110px
			minmax(0,1fr);

		gap:12px;

		border-bottom:
			1px solid
			rgba(146,134,72,.14);
	}

	.as-cart-summary-row > span:first-child{
		color:#7B745D;

		font-size:11px;
		font-weight:500;
	}

	.as-cart-summary-row > strong,
	.as-cart-summary-row > span:last-child{
		color:var(--as-dark);

		font-size:12px;
		font-weight:600;
	}

	.as-cart-summary-row.is-total{
		padding-top:17px;
	}

	.as-cart-summary-row.is-total > span,
	.as-cart-summary-row.is-total > strong{
		font-size:16px;
		font-weight:700;
	}

	.as-cart-shipping-note{
		margin-top:7px;

		color:#817A61;

		font-size:9.5px;

		line-height:1.7;
	}

	.as-cart-checkout{
		width:100%;
		min-height:54px;

		margin-top:18px;

		display:flex;
		align-items:center;
		justify-content:center;

		border-radius:2px;

		background:var(--as-dark);

		color:#fff !important;

		font-size:14px;
		font-weight:600;

		transition:
			background .2s ease,
			transform .2s ease;
	}

	.as-cart-checkout:hover{
		background:#262406;
		transform:translateY(-1px);
	}


	/* EMPTY */

	.as-cart-empty{
		max-width:760px;

		margin:45px auto 0;

		padding:55px 30px;

		border:
			1px solid
			var(--as-border);

		background:#F9F4E9;

		text-align:center;
	}

	.as-cart-empty h2{
		margin:0 0 8px;

		font-size:32px;
		font-weight:700;
	}

	.as-cart-empty p{
		margin:0 0 22px;

		color:#817A61;

		font-size:13px;
	}

	.as-cart-empty a{
		min-height:49px;

		padding:0 24px;

		display:inline-flex;
		align-items:center;
		justify-content:center;

		background:var(--as-dark);

		color:#fff !important;

		font-size:13px;
		font-weight:600;
	}


	/* RESPONSIVE */

	@media(max-width:1000px){

		.as-cart-grid{
			grid-template-columns:
				minmax(0,1fr)
				300px;
		}

		.as-cart-items-head,
		.as-cart-row{
			grid-template-columns:
				88px
				minmax(0,1fr)
				95px
				120px
				95px
				30px;

			gap:9px;
		}

		.as-cart-product-image-wrap{
			width:78px;
			height:78px;
		}
	}


	@media(max-width:850px){

		.as-cart-container{
			width:calc(100% - 32px);
		}

		.as-cart-hero-grid{
			grid-template-columns:
				minmax(0,1fr)
				150px;

			gap:28px;
		}

		.as-cart-grid{
			grid-template-columns:1fr;
		}

		.as-cart-summary{
			position:static;
		}
	}


	@media(max-width:600px){

		.as-cart-container{
			width:calc(100% - 28px);
		}

		.as-cart-hero{
			padding:30px 0 32px;
		}

		.as-cart-breadcrumb{
			margin-bottom:22px;
		}

		.as-cart-hero-grid{
			grid-template-columns:1fr;
			gap:23px;
		}

		.as-cart-hero h1{
			font-size:38px;
		}

		.as-cart-count-box{
			min-height:0;

			padding:14px 18px;

			display:grid;

			grid-template-columns:
				1fr auto 1fr;

			gap:10px;
		}

		.as-cart-count-box strong{
			margin:0;
			font-size:28px;
		}

		.as-cart-count-box small{
			text-align:left;
		}

		.as-cart-trust{
			grid-template-columns:1fr;
		}

		.as-cart-trust article{
			border-left:0;

			border-bottom:
				1px solid
				var(--as-border);
		}

		.as-cart-trust article:last-child{
			border-bottom:0;
		}

		.as-cart-main{
			padding-top:28px;
			padding-bottom:60px;
		}

		.as-cart-items-head{
			display:none;
		}

		.as-cart-row{
			padding:16px;

			grid-template-columns:
				100px
				minmax(0,1fr);

			grid-template-areas:
				"image info"
				"price price"
				"qty qty"
				"subtotal subtotal";

			gap:0 14px;
		}

		.as-cart-row-image{
			grid-area:image;
		}

		.as-cart-row-info{
			grid-area:info;

			min-height:100px;

			display:flex;
			flex-direction:column;
			justify-content:center;
		}

		.as-cart-row-price{
			grid-area:price;
		}

		.as-cart-row-qty{
			grid-area:qty;
		}

		.as-cart-row-subtotal{
			grid-area:subtotal;
		}

		.as-cart-row-price,
		.as-cart-row-qty,
		.as-cart-row-subtotal{
			min-height:48px;

			display:flex;
			align-items:center;
			justify-content:space-between;

			gap:16px;

			border-top:
				1px solid
				rgba(146,134,72,.12);
		}

		.as-cart-row-price{
			margin-top:13px;
		}

		.as-cart-mobile-label{
			display:block !important;

			color:#756E58;

			font-size:11px;
			font-weight:600;
		}

		.as-cart-row-remove{
			position:absolute;
			top:11px;
			left:11px;
		}

		.as-cart-product-image-wrap{
			width:100px;
			height:100px;
		}

		.as-cart-qty{
			margin-right:auto;
		}

		.as-cart-summary{
			padding:18px;
		}

		.as-cart-summary-row{
			grid-template-columns:
				minmax(92px,36%)
				minmax(0,64%);
		}
	}

	@media(min-width:601px){
		.as-cart-mobile-label{
			display:none !important;
		}
	}

/* =========================================================
   v0.8.0 — WORDPRESS / TRACKING COMPATIBILITY WRAPPER
   The real theme header/footer are loaded so global tracking code runs,
   but they remain visually hidden on the custom AL SAHL cart page.
========================================================= */
body.as-cart-server-page header.site-header,
body.as-cart-server-page footer.site-footer,
body.as-cart-server-page #masthead,
body.as-cart-server-page #colophon,
body.as-cart-server-page #site-header,
body.as-cart-server-page #site-footer,
body.as-cart-server-page .site-header,
body.as-cart-server-page .site-footer,
body.as-cart-server-page .elementor-location-header,
body.as-cart-server-page .elementor-location-footer{
	display:none!important;
}

body.as-cart-server-page #page,
body.as-cart-server-page .site,
body.as-cart-server-page .site-content,
body.as-cart-server-page #content,
body.as-cart-server-page .ast-container,
body.as-cart-server-page #primary,
body.as-cart-server-page .content-area,
body.as-cart-server-page main.site-main{
	width:100%!important;
	max-width:none!important;
	margin:0!important;
	padding:0!important;
	background:var(--as-cart-cream,#F4ECD9)!important;
}

body.as-cart-server-page #secondary,
body.as-cart-server-page #ast-scroll-top,
body.as-cart-server-page .entry-header,
body.as-cart-server-page .entry-title,
body.as-cart-server-page .page-title,
body.as-cart-server-page .ast-page-title-bar,
body.as-cart-server-page .woocommerce-breadcrumb{
	display:none!important;
}
