@media (max-width: 640px) {
	.mobile-support-card { display: block; margin-top: 32px; }
}
	display: none;
		bottom: auto;
		z-index: auto;
		background: transparent;
		padding: 0;
		box-shadow: none;
		width: auto;
	}
	.btn-checkout {
		/* keep full-width within the content column but not fixed to viewport */
		width: 100%;
		max-width: 480px;
		background: #ffe5c2 !important;
		border: 2px solid #F58731 !important;
		color: #111 !important;
		font-size: 18px !important;
		font-weight: bold !important;
		box-shadow: 0 2px 8px rgba(245,135,49,0.12);
		margin-top: 24px !important;
		margin-bottom: 24px !important;
		font-size: 18px;
		margin: 16px 0 0 0;
		display: block;
	}
	/* no extra bottom padding needed when button is not sticky */
	main.container {
		padding-bottom: 0 !important;
	}
}
@media (max-width: 640px) {
	.checkout-package-section { display: none; }
	.checkout-contact-section { order: 2; }
	.checkout-payment-section { order: 3; }
}
/* Collapsible Order Summary (mobile) */
.collapsible-summary {
	margin-bottom: 20px;
}
.summary-toggle {
	width: 100%;
	background: var(--card);
	border: 2px solid #f5e8e0;
	border-radius: 12px;
	padding: 18px 16px;
	font-size: 17px;
	color: var(--accent);
	.cta.mobile-only {
		display: block !important;
		background: var(--green) !important;
		color: #fff !important;
		font-size: 15px !important;
		font-weight: 700 !important;
		padding: 12px 20px !important;
		margin: 24px auto !important;
		max-width: 320px !important;
		text-align: center !important;
		border-radius: 8px !important;
		box-shadow: 0 2px 8px rgba(245,135,49,0.12);
		border: none !important;
		transition: all .18s ease !important;
	}
	.hero-actions {
		display: flex !important;
		flex-direction: column !important;
		gap: 10px !important;
		justify-content: center !important;
		align-items: stretch !important;
		margin-top: 24px !important;
		margin-bottom: 24px !important;
	}
	.hero-actions .cta,
	.hero-actions .btn {
		flex: 0 1 auto;
		min-width: 0;
		width: 100%;
		margin: 0 !important;
        font-size: 18px !important;
        padding: 18px 28px !important;
		border-radius: 8px !important;
		box-shadow: 0 2px 8px rgba(245,135,49,0.12);
		font-weight: 700 !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		text-align: center !important;
	}
}

.mobile-only {
	display: none !important;
}
.summary-toggle .summary-total-label {
	color: #111;
	font-size: 15px;
	font-weight: 500;
	margin-left: 8px;
}
.summary-toggle-icon {
	font-size: 18px;
	margin-left: 12px;
	transition: transform 0.2s;
}
.summary-toggle[aria-expanded="true"] .summary-toggle-icon {
	transform: rotate(180deg);
}
.collapsible-content {
	background: var(--card);
	border: 2px solid #f5e8e0;
	border-top: none;
	border-radius: 0 0 12px 12px;
	box-shadow: var(--shadow);
	padding: 0 16px 16px 16px;
}
@media (min-width: 641px) {
	.order-summary-mobile { display: none !important; }
}
@media (max-width: 640px) {
	.order-summary-mobile { display: block; }
}

:root{--green:#F58731;--accent:#F58731;--secondary:#414141;--bg:#f7f8fb;--muted:#666;--card:#fff;--shadow: 0 12px 30px rgba(10,10,10,0.06)}
*{box-sizing:border-box}
body{font-family:'Open Sans',sans-serif;background:var(--bg);margin:0;color:#111;line-height:1.45}
.container{max-width:1400px;margin:0 auto;padding:18px}
header{background:#fff;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px rgba(0,0,0,0.04)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px}
.brand{display:flex;flex-direction:row;align-items:center;gap:12px;text-align:left}
.brand img{height:70px}
.nav{display:flex;gap:16px;align-items:center}
.nav a{color:#111;text-decoration:none;font-weight:600;padding:10px 14px;border-radius:8px;transition:all .18s ease}
.nav a.cta{background:var(--accent);color:#fff;font-weight:700;display:none}
.cta.hero-primary { display: inline-block !important; }
.cta{background:var(--green);color:#fff;padding:12px 20px;border-radius:8px;text-decoration:none;font-weight:700;transition:all .18s ease;display:inline-block;font-size:15px}
.menu-toggle{display:none;font-size:20px;cursor:pointer;background:transparent;border:none;color:var(--accent);width:40px;height:40px;border-radius:8px;align-items:center;justify-content:center;padding:0;z-index:101}
.hero{background:linear-gradient(135deg,rgba(245,135,49,0.15),rgba(245,135,49,0.08));padding:60px 40px;border-radius:12px;margin-top:20px;display:flex;gap:40px;align-items:center;border:2px solid rgba(245,135,49,0.2)}
.hero .left{flex:1}
.hero h1{margin:0 0 16px 0;font-size:42px;color:var(--accent);font-weight:900;line-height:1.15}
.hero .hero-sub{margin:0 0 22px 0;color:#333;font-size:18px;line-height:1.7}
.hero-actions{display:flex;gap:12px;align-items:center}
.hero-primary{padding:14px 22px;font-size:16px}
.hero-secondary{padding:12px 18px;border:2px solid var(--accent);font-weight:800;color:#111;background:#fff}
.hero-secondary:hover{background:#f7f8fb}
.support-points{display:flex;flex-wrap:wrap;gap:12px 16px;margin:16px 0 0 0;padding:0;list-style:none;color:#333}
.support-points li{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #f5e8e0;padding:8px 12px;border-radius:999px;font-size:13px;box-shadow:0 2px 8px rgba(0,0,0,0.03)}
.support-points i{color:var(--green)}

/* Hero right: rotating mockups */
.hero .right{flex:1;display:flex;align-items:center;justify-content:center}
.mock-rotator{position:relative;width:100%;max-width:420px;height:280px}
.mock{position:absolute;inset:0;background:var(--card);border:2px solid #f5e8e0;border-radius:16px;box-shadow:0 20px 40px rgba(0,0,0,0.08);opacity:0;transform:translateY(8px) scale(.98);animation:fadeSwap 16s infinite}
.mock-header{height:42px;background:linear-gradient(90deg,#fef5ed,#fef9f5);border-bottom:1px solid #f5e8e0;border-top-left-radius:14px;border-top-right-radius:14px}
.mock-body{height:calc(100% - 42px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;font-weight:800;color:#0a513f}
.mock-body i{font-size:44px;color:var(--green)}
.mock-body span{font-size:14px;color:#2a2a2a}
.mock-logo{animation-delay:0s}
.mock-flyer{animation-delay:4s}
.mock-website{animation-delay:8s}
.mock-poster{animation-delay:12s}

@keyframes fadeSwap{
	0%{opacity:0;transform:translateY(8px) scale(.98)}
	4%{opacity:1;transform:translateY(0) scale(1)}
	21%{opacity:1;transform:translateY(0) scale(1)}
	25%{opacity:0;transform:translateY(-6px) scale(.99)}
	100%{opacity:0}
}

/* Reduced motion: show first mock, disable animation */
@media (prefers-reduced-motion: reduce){
	.mock{animation:none;opacity:1}
	.mock + .mock{display:none}
}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:28px}
.card{background:var(--card);padding:40px 24px;border-radius:10px;box-shadow:0 8px 24px rgba(0,0,0,0.04);display:flex;flex-direction:column}
.card > *:last-child{margin-top:auto}
.footer{background:#131A22;color:#fff;padding:40px;border-radius:8px;margin-top:40px}
.footer a{color:#fff;text-decoration:none;transition:color .18s ease;display:block;padding:6px 0}
.footer a:hover{color:var(--green)}
.form-field{margin-top:10px}
input[type=text],input[type=email],select,textarea{width:100%;padding:12px;border:1px solid #e6e6e6;border-radius:8px;font-size:15px}
textarea{min-height:120px}
.actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.btn{padding:8px 10px;border-radius:8px;text-decoration:none;border:1px solid rgba(0,0,0,0.06);background:#fff;transition:all .18s ease}
.btn-primary{background:var(--green);border:none;color:#002;font-weight:700;box-shadow:0 6px 18px rgba(10,10,10,0.06)}
.btn-primary:hover{transform:translateY(-3px);box-shadow:0 18px 40px rgba(10,10,10,0.12)}
.btn:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(0,0,0,0.06)}

.meta{font-size:13px;color:var(--muted);margin:8px 0}
@media(max-width:880px){.hero{flex-direction:column}.menu-toggle{display:block;padding:8px;z-index:101}.nav{display:none;position:absolute;top:72px;right:0;left:auto;background:#fff;flex-direction:column;gap:0;padding:12px;box-shadow:0 4px 12px rgba(0,0,0,0.1);z-index:100;min-width:240px;border-radius:8px;margin-right:12px}.nav.active{display:flex}.nav a{padding:12px 16px;border-bottom:none;border-radius:6px;text-decoration:none;color:#111;font-weight:600;transition:background .18s ease;margin:4px 0}.nav a:last-child{border-bottom:none}.nav a:hover{background:#f7f8fb}.nav a.cta{display:block;background:var(--green);color:#fff;border-bottom:none;margin:8px 0;border-radius:6px}} 
@media(max-width:480px){.hero{flex-direction:column;padding:40px 24px;gap:24px}.hero h1{font-size:32px;margin-bottom:12px}.hero .hero-sub{font-size:16px;margin-bottom:16px}.mock-rotator{max-width:100%;height:220px}}

/* DETAILS PAGE LAYOUT */
.details-layout{display:grid;grid-template-columns:1fr 340px;gap:32px;align-items:start;margin-top:20px}
.price-card{background:var(--card);padding:24px;border-radius:12px;box-shadow:var(--shadow);position:sticky;top:86px;border:2px solid var(--green)}
.price-big{font-size:48px;font-weight:900;color:var(--green);margin:12px 0;line-height:1}
.price-sub{font-size:14px;color:var(--muted);margin-bottom:8px;font-weight:500}
.meta-list{margin-top:16px}
.meta-item{display:flex;gap:10px;align-items:center;padding:12px 0;border-top:1px dashed #eee}
.meta-item:first-child{border-top:0}
.meta-item i{width:26px;text-align:center;color:var(--green)}
.features-list{margin-top:24px}
.features-list li{margin:12px 0;list-style:none;position:relative;padding-left:22px}
.features-list li:before{content:'\2713';position:absolute;left:0;top:0;color:var(--green);font-weight:700}

/* TRUST AND CTA ENHANCEMENTS */
.trust-section{margin-top:20px;padding:16px;background:linear-gradient(135deg,rgba(245,135,49,0.08),rgba(245,135,49,0.05));border-radius:10px;border-left:4px solid var(--accent)}
.trust-badge{background:var(--card);padding:10px 12px;border-radius:8px;margin-bottom:8px;font-size:13px;font-weight:700;display:flex;align-items:center;gap:8px;box-shadow:0 2px 8px rgba(255,193,7,0.15)}
.trust-item{display:flex;gap:8px;align-items:center;padding:6px 0;font-size:13px}
.trust-item i{font-size:14px;min-width:18px}
.btn-primary-cta{padding:14px 16px;font-size:15px;display:flex;align-items:center;justify-content:center;gap:8px;font-weight:700;letter-spacing:0.3px;box-shadow:0 8px 24px rgba(245,135,49,0.3)}
.btn-primary-cta:hover{transform:translateY(-4px);box-shadow:0 12px 32px rgba(245,135,49,0.4)}
.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;background:rgba(255,255,255,0.3);border-radius:50%;font-weight:800}

/* DELIVERABLES SECTION */
.deliverables-section{margin-top:20px;padding:16px;background:var(--card);border-radius:10px;border:1px solid #eee}
.deliverables-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.deliverable-item{display:flex;align-items:center;gap:10px;padding:8px;background:#f9f9f9;border-radius:6px;font-size:13px;font-weight:600}
.deliverable-item i{color:var(--green);font-size:16px}

/* PROCESS FLOW SECTION */
.process-section{margin-top:20px;padding:16px;background:var(--card);border-radius:10px;border:1px solid #eee}
.process-flow{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}
.process-step{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center}
.process-number{width:40px;height:40px;background:var(--green);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;font-size:16px}
.process-label{font-size:12px;font-weight:600;color:var(--muted);max-width:80px}
.process-arrow{color:var(--green);font-size:18px;font-weight:800}

/* FAQ SECTION */
.faq-section{margin-top:28px;padding:20px;background:var(--card);border-radius:10px;border:1px solid #eee}
.faq-item{margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid #f0f0f0}
.faq-item:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}
.faq-question{display:flex;align-items:flex-start;gap:10px;font-weight:600;color:var(--accent);cursor:pointer;user-select:none;padding:12px 0;font-size:14px}
.faq-question i{min-width:16px;margin-top:2px;color:var(--green)}
.faq-answer{display:block;margin-top:8px;padding-left:26px;font-size:13px;color:var(--muted);line-height:1.5}

@media(max-width:880px){.details-layout{grid-template-columns:1fr;}.price-card{position:relative;top:0;order:-1}.deliverables-grid{grid-template-columns:1fr}.process-flow{gap:8px}.process-arrow{font-size:14px}}
@media(max-width:640px){.btn-primary-cta{padding:12px 14px;font-size:14px}.trust-badge{font-size:12px}.process-number{width:36px;height:36px;font-size:14px}.process-label{font-size:11px}.deliverable-item{font-size:12px}.faq-question{font-size:13px}.footer{padding:28px;margin-top:28px}.footer h4{font-size:15px;margin-bottom:10px}.footer p{font-size:13px;margin-bottom:8px;line-height:1.5}.footer a{font-size:13px;display:block;margin-top:6px;padding:4px 0}}

/* CROSS-SERVICES (web & digital) */
.cross-services{margin-top:28px;padding:28px;background:linear-gradient(180deg,#ffffff, #fef9f5);border-radius:12px;border:1px solid #f5e8e0}
.cross-services .cross-inner{max-width:1200px;margin:0 auto}
.cross-services h2{margin-top:0;color:var(--accent);font-size:32px;font-weight:900}
.cross-services p{color:var(--muted);font-size:16px;margin:10px 0 18px 0}
.cross-grid .card{background:transparent;padding:20px;border-radius:8px;box-shadow:none;border:1px dashed #f5e8e0}
.cross-grid .card i{font-size:40px;color:var(--green);margin-bottom:12px;display:block}
.cross-grid .card h3{margin:0 0 8px 0;font-size:18px}
.cross-grid .card p{margin:0;color:#666}
@media(max-width:880px){.cross-services h2{font-size:26px}.cross-services{padding:20px}}
@media(max-width:480px){.cross-services h2{font-size:22px}.cross-grid{gap:12px}}

/* Hide redundant hero 'Request Custom Work' button on smaller screens to avoid wrapping
	 Mobile navigation already includes the CTA. Matches mobile breakpoint used elsewhere. */
@media (max-width:880px) {
	.hero-actions a[href*="#custom"],
	.hero-primary{
		display: none !important;
	}

	/* center remaining hero buttons (e.g., View Packages) when stacked on mobile */
	.hero-actions{justify-content:center;width:100%;margin-top:10px}
}

@media (max-width:640px) {
	.hero-actions {
		justify-content: center !important;
	}
	.hero-actions .cta,
	.hero-actions .btn {
		font-size: 13px !important;
		padding: 10px 12px !important;
	}
	.header-inner {
		flex-direction: row;
		justify-content: space-between;
		align-items: center;
		gap: 16px;
		padding: 12px;
	}
	.brand {
		flex: 1;
		flex-direction: row;
		align-items: center;
		text-align: left;
	}
	.nav {
		display: none;
	}
	.menu-toggle {
		display: block;
	}
}

/* CHECKOUT PAGE STYLES */
.checkout-layout{display:grid;grid-template-columns:1fr 420px;gap:40px;margin-top:32px;align-items:start}
.checkout-main{background:var(--card);padding:40px;border-radius:12px;box-shadow:var(--shadow)}
.checkout-sidebar{position:sticky;top:100px}
.checkout-section{margin-bottom:32px;padding-bottom:32px;border-bottom:1px solid #eee}
.checkout-section:last-of-type{border-bottom:none}
.checkout-section h3{font-size:18px;color:var(--accent);margin:0 0 16px 0;display:flex;align-items:center;gap:10px}
.checkout-section h3 i{font-size:16px}

/* Selected Package Card */
.selected-package-card{display:flex;justify-content:space-between;align-items:center;padding:16px;background:#232F3E;border:1px solid #2a3a4f;border-radius:8px}
.package-info strong{display:block;font-size:16px;color:#fff;margin-bottom:4px}
.package-info p{margin:0;font-size:13px;color:#e0e0e0}
.package-price{font-size:24px;font-weight:900;color:var(--green)}

/* Form Grid */
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.form-field{margin-bottom:16px}
.form-field label{display:block;font-weight:600;font-size:14px;margin-bottom:6px;color:#333}
.form-field input,.form-field select,.form-field textarea{width:100%;padding:12px 14px;border:1px solid #e6e6e6;border-radius:8px;font-size:15px;transition:border-color .2s ease}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:none;border-color:var(--green)}

/* Stripe Elements */
.stripe-element{padding:14px;border:1px solid #e6e6e6;border-radius:8px;background:#fff;transition:border-color .2s ease}
.stripe-element:focus-within{border-color:var(--green);box-shadow:0 0 0 3px rgba(245,135,49,0.1)}
.error-message{color:#dc3545;font-size:13px;margin-top:8px;display:none}
.error-message.visible{display:block}

/* Security Badges */
.security-badges{display:flex;gap:16px;flex-wrap:wrap;margin-top:16px}
.security-badge{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--muted)}
.security-badge i{color:var(--green)}

/* Checkout Button */
.btn-checkout{width:100%;background:var(--green);color:#fff;border:none;padding:16px;border-radius:8px;font-size:16px;font-weight:700;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px;margin-top:24px}
.btn-checkout:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 20px rgba(245,135,49,0.3)}
.btn-checkout:disabled{opacity:0.6;cursor:not-allowed}
.btn-checkout #spinner{border:2px solid #fff;border-top-color:transparent;border-radius:50%;width:16px;height:16px;animation:spin 0.6s linear infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.spinner.hidden{display:none}

.checkout-terms{text-align:center;font-size:12px;color:var(--muted);margin-top:16px}
.checkout-terms a{color:var(--accent);text-decoration:none}
.checkout-terms a:hover{text-decoration:underline}

/* Order Summary Sidebar */
.order-summary{background:var(--card);padding:24px;border-radius:12px;box-shadow:var(--shadow);border:2px solid #f5e8e0;margin-bottom:20px}
.order-summary h3{margin:0 0 20px 0;font-size:20px;color:var(--accent)}
.summary-item{display:flex;justify-content:space-between;align-items:center;padding:12px 0;font-size:15px}
.summary-item span:first-child{color:#333}
.summary-item span:last-child{font-weight:600;color:#111}
.summary-divider{height:1px;background:#eee;margin:12px 0}
.summary-total{font-size:18px;padding-top:16px;border-top:2px solid var(--green)}
.summary-total strong{color:var(--accent)}

/* Trust Items in Summary */
.trust-items{margin-top:24px;padding-top:24px;border-top:1px solid #eee}
.trust-item-small{display:flex;align-items:center;gap:10px;padding:8px 0;font-size:13px;color:#333}
.trust-item-small i{color:var(--green);font-size:14px;min-width:16px}

/* Payment Methods */
.payment-methods{display:flex;gap:8px;margin-top:20px;padding-top:20px;border-top:1px solid #eee;flex-wrap:wrap}

/* Help Card */
.help-card{background:linear-gradient(135deg,rgba(245,135,49,0.1),rgba(245,135,49,0.05));padding:20px;border-radius:10px;text-align:center;border:1px solid #f5e8e0}
.help-card i{font-size:32px;color:var(--green);margin-bottom:12px;display:block}
.help-card h4{margin:0 0 8px 0;font-size:16px;color:#111}
.help-card p{margin:0 0 12px 0;font-size:13px;color:var(--muted)}
.text-link{color:var(--accent);text-decoration:none;font-weight:600;font-size:14px;transition:color .2s}
.text-link:hover{color:var(--green)}

/* Success/Error States */
.message-container{max-width:600px;margin:80px auto;text-align:center;padding:40px;background:var(--card);border-radius:12px;box-shadow:var(--shadow)}
.message-icon{font-size:64px;margin-bottom:20px}
.message-icon.success{color:#28a745}
.message-icon.error{color:#dc3545}
.message-container h1{margin:0 0 16px 0;font-size:32px;color:var(--accent)}
.message-container p{color:var(--muted);font-size:16px;line-height:1.6;margin-bottom:28px}

.mobile-pay-btn { display: none; }
.security-badges { display: block; }

@media(max-width:1024px){
	.checkout-layout{grid-template-columns:1fr;gap:32px}
	.checkout-sidebar{position:relative;top:0;display:none}
	.order-summary{margin-bottom:0}
	#submit-payment { display: none; }
	#submit-payment-mobile { display: flex !important; }
	#checkout-terms-mobile { display: block !important; }
	.mobile-pay-btn { display: block; }
	.security-badges { display: block; }
}
/* Mobile/Desktop Order Summary Toggle */
.order-summary-mobile { display: none; }
.order-summary-desktop { display: block; }
.mobile-support-card { display: none; }

@media(max-width:640px){
	.order-summary-mobile { display: block; }
	.order-summary-desktop { display: none; }
	.mobile-support-card { display: block; margin-top: 32px; }
	.checkout-main{padding:24px}
	.form-grid{grid-template-columns:1fr}
	.checkout-section h3{font-size:16px}
	.selected-package-card{flex-direction:column;align-items:flex-start;gap:12px}
	.package-price{font-size:20px}
}

