/**
 * Scooter Point BD — main stylesheet
 * Matches the original 14-screenshot design: black header/hero,
 * white content sections with orange-bordered cards, solid flat
 * orange CTAs (no gradients), black "Why Choose" / testimonial
 * bands, black footer. Poppins for headings, Inter for body.
 */

:root{
	--sp-black:#14161A;
	--sp-black-2:#1D2025;
	--sp-white:#FFFFFF;
	--sp-paper:#F7F8FA;
	--sp-orange:#FF6B00;
	--sp-orange-dark:#E85D04;
	--sp-ink:#14161A;
	--sp-steel:#6B7280;
	--sp-steel-light:#C7CBD1;
	--sp-border:rgba(20,22,26,0.12);
	--sp-line:rgba(255,255,255,0.1);
	--sp-shadow:0 16px 40px -18px rgba(0,0,0,0.35);
	--sp-radius:10px;
	--sp-font-display:'Poppins', sans-serif;
	--sp-font-body:'Inter', sans-serif;
}

*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0; font-family:var(--sp-font-body); background:var(--sp-white); color:var(--sp-ink); line-height:1.55;}
img{max-width:100%; display:block;}
a{color:inherit; text-decoration:none;}
ul{list-style:none; margin:0; padding:0;}
button{font-family:inherit; cursor:pointer;}
table{border-collapse:collapse; width:100%;}

@media (prefers-reduced-motion: reduce){
	*{animation-duration:0.001ms !important; transition-duration:0.001ms !important; scroll-behavior:auto !important;}
}

.sp-container{max-width:1180px; margin:0 auto; padding:0 24px;}
@media(max-width:640px){.sp-container{padding:0 18px;}}

:focus-visible{outline:2px solid var(--sp-orange); outline-offset:2px;}

.sp-eyebrow{
	font-family:var(--sp-font-body); font-size:12px; letter-spacing:0.12em; text-transform:uppercase;
	color:var(--sp-orange); font-weight:700; display:inline-flex; align-items:center; gap:8px; margin-bottom:10px;
}
.sp-eyebrow::before{content:""; width:20px; height:2px; background:var(--sp-orange);}
.sp-eyebrow--light{color:var(--sp-orange);}

.sp-accent{color:var(--sp-orange);}

.sp-section-title{font-family:var(--sp-font-display); font-weight:700; font-size:clamp(22px,3vw,30px); margin:48px 0 8px;}
.sp-section-title--center{text-align:center;}
.sp-section-title--center::after{
	content:""; display:block; width:56px; height:3px; background:var(--sp-orange);
	margin:12px auto 0; border-radius:2px;
}
.sp-section-sub{color:var(--sp-steel); margin-bottom:32px; max-width:560px;}
.sp-section-sub--center{margin-left:auto; margin-right:auto; text-align:center;}

/* ===== Buttons ===== */
.sp-btn{
	display:inline-flex; align-items:center; justify-content:center; gap:8px;
	padding:13px 22px; border-radius:8px; font-weight:700; font-size:14.5px;
	border:1.5px solid transparent; transition:transform .15s ease, background .15s ease;
}
.sp-btn svg{width:18px; height:18px; flex-shrink:0;}
.sp-btn:hover{transform:translateY(-1px);}
.sp-btn--amber{background:var(--sp-orange); color:#fff;}
.sp-btn--amber:hover{background:var(--sp-orange-dark);}
.sp-btn--dark{background:var(--sp-black); color:#fff;}
.sp-btn--dark:hover{background:#000;}
.sp-btn--outline{border-color:var(--sp-border); color:var(--sp-ink); background:#fff;}
.sp-btn--outline:hover{border-color:var(--sp-ink);}
.sp-btn--outline-dark{border-color:rgba(255,255,255,0.3); color:#fff;}
.sp-btn--outline-dark:hover{background:rgba(255,255,255,0.08);}
.sp-btn--sm{padding:10px 16px; font-size:13px;}
.sp-btn--block{display:flex; width:100%; margin-bottom:10px;}

/* ===== Header / Nav ===== */
.sp-header{position:sticky; top:0; z-index:100; background:var(--sp-black); border-bottom:1px solid var(--sp-line);}
.sp-header__inner{display:flex; align-items:center; justify-content:space-between; padding:14px 0; gap:20px;}
.sp-logo{display:flex; align-items:center; height:40px;}
.sp-logo img{max-height:40px; width:auto; display:block;}
.sp-logo__text{font-family:var(--sp-font-display); font-weight:800; color:#fff; font-size:19px;}
.sp-logo__text b{color:var(--sp-orange);}
.sp-nav__list{display:flex; gap:28px;}
.sp-nav__list a{color:#fff; font-weight:600; font-size:15px;}
.sp-nav__list a:hover{color:var(--sp-orange);}
.sp-header__cta{display:flex; align-items:center; gap:10px;}
.sp-call-pill{display:flex; flex-direction:column; line-height:1.2; color:#fff; border:1.5px solid rgba(255,255,255,0.28); padding:8px 16px; border-radius:999px; font-size:12px;}
.sp-call-pill strong{font-size:13.5px;}
.sp-nav-toggle{display:none; flex-direction:column; gap:4px; background:none; border:none; padding:6px;}
.sp-nav-toggle span{width:22px; height:2px; background:#fff; display:block;}
@media(max-width:900px){
	.sp-nav__list{display:none;}
	.sp-nav--open .sp-nav__list{
		display:flex; flex-direction:column; position:absolute; top:100%; left:0; right:0;
		background:var(--sp-black); padding:18px 24px; gap:14px; border-bottom:1px solid var(--sp-line);
	}
	.sp-nav-toggle{display:flex;}
	.sp-call-pill{display:none;}
}

/* ===== Hero (Homepage) — dark photo-style hero, flat gradient stand-in until real photography is added ===== */
.sp-hero{
	background:
		linear-gradient(100deg, rgba(20,22,26,0.97) 0%, rgba(20,22,26,0.75) 45%, rgba(20,22,26,0.35) 100%),
		linear-gradient(0deg, rgba(20,22,26,0.9) 0%, transparent 40%),
		var(--sp-black);
	color:#fff; padding:60px 0 60px; position:relative; overflow:hidden;
}
.sp-hero--media{padding-bottom:150px;}
.sp-hero h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(32px,4.6vw,52px); line-height:1.08; letter-spacing:-0.02em; margin:0 0 18px;}
.sp-hero__lede{color:var(--sp-steel-light); font-size:16.5px; max-width:480px; margin-bottom:26px;}
.sp-hero__actions{display:flex; gap:14px; flex-wrap:wrap;}
.sp-hero__actions--center{justify-content:center;}
.sp-hero__grid{position:relative; z-index:2;}

/* Background media (video or crossfading slides) */
.sp-hero__bg-video{position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;}
.sp-hero__slides{position:absolute; inset:0; z-index:0;}
.sp-hero__slide{
	position:absolute; inset:0; background-size:cover; background-position:center;
	opacity:0; transition:opacity 1s ease;
}
.sp-hero__slide--active{opacity:1;}
.sp-hero__scrim{position:absolute; inset:0; z-index:1; background:linear-gradient(100deg, rgba(20,22,26,0.9) 0%, rgba(20,22,26,0.55) 50%, rgba(20,22,26,0.15) 100%);}
.sp-hero:not(.sp-hero--media) .sp-hero__scrim{display:none;}

.sp-eyebrow--video{display:inline-flex; align-items:center; gap:8px;}
.sp-eyebrow--video::before{display:none;}
.sp-eyebrow__play{
	display:inline-flex; align-items:center; justify-content:center; width:20px; height:20px;
	border:1.5px solid var(--sp-orange); border-radius:50%; font-size:8px; color:var(--sp-orange);
}

/* Prev/next arrows */
.sp-hero__arrow{
	position:absolute; top:45%; z-index:3; width:38px; height:38px; border-radius:50%;
	background:rgba(20,22,26,0.55); border:1.5px solid rgba(255,255,255,0.35); color:#fff;
	font-size:20px; display:flex; align-items:center; justify-content:center; transition:background .15s ease;
}
.sp-hero__arrow:hover{background:rgba(20,22,26,0.85);}
.sp-hero__arrow--prev{left:20px;}
.sp-hero__arrow--next{right:20px;}
@media(max-width:640px){.sp-hero__arrow{display:none;}}

/* Dot indicators */
.sp-hero__dots{position:absolute; bottom:56px; left:0; right:0; z-index:3; display:flex; justify-content:center; gap:8px;}
.sp-hero__dot{width:8px; height:8px; border-radius:50%; background:rgba(255,255,255,0.4); border:none; padding:0; transition:background .15s ease, width .15s ease;}
.sp-hero__dot--active{background:var(--sp-orange); width:22px; border-radius:4px;}

/* Video control bar — positioned above the finder card's overlap
   zone (the finder pulls up 64px via negative margin, see
   .sp-finder below), so the two never collide. */
.sp-hero__controls{
	display:none; /* video plays as pure background footage — no visible controls */
}
.sp-hero__control-btn{
	background:none; border:none; color:rgba(255,255,255,0.85); font-size:14px; padding:4px; flex-shrink:0;
}
.sp-hero__control-btn:hover{color:#fff;}
.sp-hero__time{color:rgba(255,255,255,0.7); font-size:12px; flex-shrink:0; min-width:76px;}
.sp-hero__progress-track{flex:1; height:3px; background:rgba(255,255,255,0.25); border-radius:2px; cursor:pointer; position:relative;}
.sp-hero__progress-fill{height:100%; width:0%; background:var(--sp-orange); border-radius:2px;}
@media(max-width:640px){.sp-hero__time{display:none;}}

/* ===== Finder tool ===== */
.sp-finder-wrap{position:relative; z-index:5;}
.sp-finder{
	background:var(--sp-black); border-radius:var(--sp-radius); box-shadow:var(--sp-shadow); padding:26px;
	margin-top:-64px; display:grid; grid-template-columns:repeat(4,1fr) auto; gap:14px; align-items:end;
	border:1px solid var(--sp-line);
}
.sp-finder__title{grid-column:1/-1; font-family:var(--sp-font-display); font-weight:700; font-size:16px; margin:0 0 4px; color:#fff;}
@media(max-width:900px){.sp-finder{grid-template-columns:1fr 1fr; margin-top:-40px;} .sp-finder button{grid-column:1/-1;}}

/* Finder fields are dark (matches the reference design); contact
   form / archive filter sidebar fields stay light — see the shared
   rule below, then this override scoped to .sp-finder only. */
.sp-finder .sp-field label{color:var(--sp-steel-light);}
.sp-finder .sp-field select, .sp-finder .sp-field input{
	background:var(--sp-black-2); border-color:rgba(255,255,255,0.16); color:#fff;
}

.sp-field label{display:block; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--sp-steel); margin-bottom:6px;}
.sp-field select, .sp-field input, .sp-contact-form select, .sp-contact-form input, .sp-contact-form textarea{
	width:100%; padding:11px 13px; border-radius:8px; border:1.5px solid var(--sp-border); background:var(--sp-paper);
	font-size:13.5px; font-weight:600; font-family:inherit; color:var(--sp-ink);
}

/* ===== Grids & Cards ===== */
.sp-grid{display:grid; gap:20px;}
.sp-grid--2{grid-template-columns:repeat(2,1fr);}
.sp-grid--3{grid-template-columns:repeat(3,1fr);}
.sp-grid--4{grid-template-columns:repeat(4,1fr);}
@media(max-width:900px){.sp-grid--3,.sp-grid--4{grid-template-columns:repeat(2,1fr);}}
@media(max-width:560px){.sp-grid--2,.sp-grid--3,.sp-grid--4{grid-template-columns:1fr;}}
.sp-grid--loading{opacity:.5;}

.sp-card{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); overflow:hidden; display:flex; flex-direction:column; transition:border-color .15s ease, box-shadow .15s ease; position:relative;}
.sp-card:hover{border-color:var(--sp-orange); box-shadow:var(--sp-shadow);}
.sp-card__media{aspect-ratio:4/3; background:var(--sp-paper); display:block; position:relative; overflow:hidden;}
.sp-card__media--product{aspect-ratio:4/2.4;}
.sp-card__media img{width:100%; height:100%; object-fit:cover;}
.sp-card__tag{position:absolute; top:12px; left:12px; background:var(--sp-orange); color:#fff; font-size:10.5px; font-weight:700; padding:5px 10px; border-radius:6px;}
.sp-card__tag--dark{background:var(--sp-black); color:#fff;}
.sp-card__badge{position:absolute; top:12px; left:12px; z-index:2; background:var(--sp-black); color:#fff; font-size:10.5px; font-weight:700; padding:5px 10px; border-radius:6px;}
.sp-card__body{padding:16px; display:flex; flex-direction:column; gap:10px; flex:1;}
.sp-card__body h3, .sp-card__body h4{font-size:16px; margin:0; font-weight:700;}
.sp-card__meta{font-size:12.5px; color:var(--sp-steel);}
.sp-card__stock{font-size:11.5px; font-weight:700; padding:4px 10px; border-radius:6px; width:max-content;}
.sp-card__stock--ready_stock{background:rgba(16,185,129,.12); color:#0d7a5f;}
.sp-card__stock--pre_order{background:rgba(255,107,0,.12); color:var(--sp-orange-dark);}
.sp-card__stock--out_of_stock{background:rgba(0,0,0,.06); color:var(--sp-steel);}
.sp-card__best-for{color:var(--sp-orange-dark); font-size:13px; font-weight:700; margin:0;}
.sp-card__actions{display:flex; gap:8px; margin-top:auto; padding-top:6px;}
.sp-card__actions .sp-btn{flex:1; padding:10px 8px; font-size:11.5px; gap:5px; white-space:nowrap;}
.sp-card__actions .sp-btn svg{width:13px; height:13px;}
.sp-card__actions .sp-btn--amber{flex:1.2;}
.sp-card__actions .sp-btn--outline{background:#fff; border-color:var(--sp-ink); color:var(--sp-ink); flex:0.85;}

.sp-card--brand{align-items:center; text-align:center; padding:24px 16px;}
.sp-card--brand__logo{display:flex; align-items:center; justify-content:center; height:64px;}
.sp-card--brand__logo img{max-height:56px; width:auto;}
.sp-card--brand__fallback{font-family:var(--sp-font-display); font-weight:800; font-size:17px;}
.sp-card--brand__count{color:var(--sp-steel); font-size:12.5px; margin:0;}
.sp-card--brand__link{color:var(--sp-orange-dark); font-weight:700; font-size:13px;}

.sp-card--service{flex-direction:row; align-items:flex-start; gap:16px; padding:22px;}
.sp-card--service__icon{font-size:26px; flex-shrink:0;}

.sp-card--guide__meta{display:flex; justify-content:space-between; font-size:12px; color:var(--sp-steel);}
.sp-card--guide__meta a{color:var(--sp-orange-dark); font-weight:700;}

.sp-brand-pill{
	flex:1; min-width:88px; text-align:center; padding:12px 10px; background:#fff;
	border:1.5px solid var(--sp-border); border-radius:8px; font-family:var(--sp-font-display);
	font-weight:700; font-size:14px; transition:border-color .15s ease;
	display:flex; align-items:center; justify-content:center;
}
.sp-brand-pill img{max-height:28px; max-width:100%; width:auto; object-fit:contain; margin:0 auto;}
.sp-brand-pill:hover{border-color:var(--sp-orange); color:var(--sp-orange-dark);}
.sp-brand-strip{padding:20px 0 64px;}
.sp-guides{padding:20px 0 64px;}
.sp-brand-strip__list{display:flex; flex-wrap:wrap; gap:8px;}
.sp-brand-pill--more{
	color:var(--sp-steel); font-family:var(--sp-font-body); font-weight:700; font-size:13px;
	display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px;
}
.sp-brand-pill--more svg{width:22px; height:22px; color:var(--sp-steel);}

/* ===== FAQ Accordion ===== */
.sp-faq{padding:60px 0;}
.sp-faq__title{font-family:var(--sp-font-display); font-weight:700; font-size:24px; text-align:center; margin-bottom:26px;}
.sp-faq__item{border:1.5px solid var(--sp-border); border-radius:8px; margin-bottom:10px; overflow:hidden;}
.sp-faq__question{width:100%; display:flex; justify-content:space-between; align-items:center; padding:16px 18px; background:#fff; border:none; text-align:left; font-weight:700; font-size:14.5px;}
.sp-faq__icon{color:var(--sp-orange); font-size:20px; font-weight:800;}
.sp-faq__answer{padding:0 18px 16px; color:var(--sp-steel);}

/* ===== Why Us stats — black band ===== */
.sp-why-us{background:var(--sp-black); color:#fff; padding:60px 0;}
.sp-why-us__title{
	font-family:var(--sp-font-display); font-weight:700; font-size:24px; text-align:center; margin-bottom:30px;
}
.sp-why-us__title::after{
	content:""; display:block; width:56px; height:3px; background:var(--sp-orange);
	margin:12px auto 0; border-radius:2px;
}
.sp-stat-grid{display:grid; grid-template-columns:repeat(4,1fr);}
@media(max-width:760px){.sp-stat-grid{grid-template-columns:1fr 1fr;}}
.sp-stat-cell{background:transparent; padding:28px 22px; border-left:1px solid var(--sp-line); text-align:center;}
.sp-stat-cell:first-child{border-left:none;}
@media(max-width:760px){.sp-stat-cell{border-left:none; border-top:1px solid var(--sp-line);} .sp-stat-cell:nth-child(-n+2){border-top:none;}}
.sp-stat-cell__num, .sp-stat-cell__icon{font-family:var(--sp-font-display); font-weight:800; font-size:24px; color:var(--sp-orange); display:block; margin-bottom:6px;}
.sp-stat-cell__icon-svg{width:48px; height:48px; color:var(--sp-orange); display:block; margin:0 auto 16px;}
.sp-stat-cell__lbl{color:#fff; font-weight:700; display:block; margin-bottom:6px;}
.sp-stat-cell p{color:var(--sp-steel-light); font-size:13px; margin:0;}
.sp-why-brand{background:var(--sp-black); padding:50px 0;}

/* ===== Testimonials ===== */
.sp-testimonials{background:var(--sp-black); color:#fff; padding:60px 0;}
.sp-section-title--light{color:#fff;}
.sp-testimonial-card{background:var(--sp-black-2); border:1px solid var(--sp-line); border-radius:var(--sp-radius); padding:24px;}
.sp-testimonial-card__stars{color:var(--sp-orange); font-size:14px; letter-spacing:2px; margin-bottom:14px;}
.sp-testimonial-card p{font-size:14px; color:var(--sp-steel-light); margin:0 0 20px;}
.sp-testimonial-card__who{display:flex; align-items:center; gap:12px;}
.sp-testimonial-card__avatar{width:36px; height:36px; border-radius:50%; background:var(--sp-orange); color:#fff; display:flex; align-items:center; justify-content:center; font-weight:800; font-family:var(--sp-font-display); flex-shrink:0;}
.sp-testimonial-card__photo{width:36px; height:36px; border-radius:50%; object-fit:cover; flex-shrink:0;}
.sp-testimonial-card__who strong{display:block; font-size:13.5px;}
.sp-testimonial-card__who span{font-size:12px; color:var(--sp-steel);}

/* ===== WhatsApp banner — flat solid orange ===== */
.sp-wa-banner-wrap{padding:20px 0;}
.sp-wa-banner{
	background:var(--sp-orange); color:#fff;
	border-radius:var(--sp-radius); padding:30px 32px; display:flex; align-items:center; justify-content:space-between; gap:22px; flex-wrap:wrap;
	position:relative; overflow:hidden;
}
.sp-wa-banner__watermark{
	position:absolute; right:150px; top:50%; transform:translateY(-50%);
	width:280px; height:auto; color:rgba(255,255,255,0.16); pointer-events:none;
}
@media(max-width:900px){.sp-wa-banner__watermark{display:none;}}
.sp-wa-banner > div, .sp-wa-banner > a{position:relative; z-index:1;}
.sp-wa-banner h3{font-family:var(--sp-font-display); font-weight:700; font-size:19px; margin:0 0 6px;}
.sp-wa-banner p{margin:0; max-width:420px; opacity:.92; font-size:14px;}
.sp-btn--wa-cta{background:#fff; color:var(--sp-orange-dark);}
.sp-btn--wa-cta:hover{background:#f2f2f2;}
.sp-btn--wa-cta svg{width:18px; height:18px;}

/* ===== Feature cells ===== */
.sp-feature-cell{border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:20px; text-align:center;}
.sp-feature-cell__icon{font-size:22px; display:block; margin-bottom:10px;}
.sp-feature-cell h4{margin:0 0 6px; font-size:14.5px; font-weight:700;}
.sp-feature-cell p{margin:0; font-size:13px; color:var(--sp-steel);}

/* ===== Process steps ===== */
.sp-process{background:var(--sp-black); color:#fff; padding:56px 0;}
.sp-process__steps{display:grid; grid-template-columns:repeat(4,1fr); gap:22px;}
@media(max-width:760px){.sp-process__steps{grid-template-columns:1fr 1fr;}}
.sp-process__step{text-align:center;}
.sp-process__num{display:inline-flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:50%; background:var(--sp-orange); color:#fff; font-family:var(--sp-font-display); font-weight:800; font-size:14px; margin-bottom:10px;}
.sp-process__icon{display:block; font-size:24px; margin-bottom:8px;}

/* ===== Visit showroom ===== */
.sp-visit{padding:60px 0;}
.sp-visit__title{font-family:var(--sp-font-display); font-weight:700; font-size:24px; text-align:center; margin:0 0 6px;}
.sp-visit__sub{text-align:center; color:var(--sp-steel); margin-bottom:26px;}
.sp-visit__grid{display:grid; grid-template-columns:1fr 1.4fr 1fr; gap:16px;}
@media(max-width:900px){.sp-visit__grid{grid-template-columns:1fr;}}
.sp-visit__card, .sp-visit__hours{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:22px;}
.sp-visit__card-title{font-family:var(--sp-font-display); font-weight:700; font-size:15px; margin:0 0 14px;}
.sp-visit__row{margin:0 0 10px; font-size:13.5px;}
.sp-visit__row--icon{display:flex; align-items:flex-start; gap:10px;}
.sp-visit__row--icon span{flex:1;}
.sp-visit__row--icon a{color:var(--sp-orange-dark); font-weight:600;}
.sp-visit__icon{width:17px; height:17px; color:var(--sp-orange); flex-shrink:0; margin-top:1px;}
.sp-visit__map{border-radius:var(--sp-radius); overflow:hidden; min-height:220px; border:1.5px solid var(--sp-border);}
.sp-visit__map iframe{width:100%; height:100%; min-height:220px; border:0;}
.sp-visit__map--placeholder{background:var(--sp-paper); display:flex; align-items:center; justify-content:center; color:var(--sp-steel);}
.sp-visit__hours-row{display:flex; justify-content:space-between; font-size:13px; padding:6px 0; border-bottom:1px solid var(--sp-border);}
.sp-visit__hours-caption{font-size:12.5px; color:var(--sp-steel); margin:0 0 14px;}
.sp-visit__social{margin-top:18px; padding-top:16px; border-top:1px solid var(--sp-border);}
.sp-visit__social-label{display:block; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--sp-steel); margin-bottom:10px;}
.sp-visit__social-icons{display:flex; gap:8px;}
.sp-visit__social-icons a{width:34px; height:34px; border-radius:50%; display:flex; align-items:center; justify-content:center; color:#fff; background:var(--sp-black); transition:background .15s ease;}
.sp-visit__social-icons a:hover{background:var(--sp-orange);}
.sp-visit__social-icons svg{width:15px; height:15px;}

/* ===== SEO paragraph ===== */
.sp-seo-paragraph{padding:40px 0 60px; color:var(--sp-steel); font-size:14.5px; line-height:1.7;}
.sp-seo-paragraph h2, .sp-seo-paragraph h3{color:var(--sp-ink); font-family:var(--sp-font-display); font-weight:700; font-size:19px;}

/* ===== Breadcrumb ===== */
.sp-breadcrumb{padding:16px 24px; font-size:12.5px; color:var(--sp-steel-light); display:flex; flex-wrap:wrap; gap:6px;}
.sp-breadcrumb a{color:var(--sp-steel-light);}
.sp-breadcrumb a:hover{color:#fff;}
.sp-breadcrumb__sep{opacity:.5;}

/* ===== Page hero (archives / single non-product) ===== */
.sp-page-hero{background:var(--sp-black); color:#fff; padding-bottom:34px;}
.sp-page-hero h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(26px,3.6vw,36px); letter-spacing:-0.02em; margin:10px 24px 8px;}
.sp-page-hero p{margin:0 24px; color:var(--sp-steel-light); max-width:520px;}
.sp-page-hero__row{display:flex; justify-content:space-between; align-items:flex-end; flex-wrap:wrap; gap:20px;}

/* ===== Product Archive layout ===== */
.sp-archive-layout{display:grid; grid-template-columns:260px 1fr; gap:30px; padding:40px 0;}
@media(max-width:860px){.sp-archive-layout{grid-template-columns:1fr;}}
.sp-archive-filters{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:22px; align-self:start;}
.sp-archive-filters h3{font-family:var(--sp-font-display); font-weight:700; font-size:16px; margin-top:0;}
.sp-archive-filters .sp-field{margin-bottom:14px;}
.sp-archive-main__head{display:flex; justify-content:space-between; align-items:baseline; margin-bottom:18px;}
.sp-archive-main__head span{color:var(--sp-steel); font-size:13px;}
.sp-pagination{display:flex; justify-content:center; gap:6px; padding:30px 0;}
.sp-pagination .page-numbers{padding:8px 13px; border-radius:6px; border:1.5px solid var(--sp-border); font-size:13px; font-weight:700;}
.sp-pagination .page-numbers.current{background:var(--sp-orange); color:#fff; border-color:var(--sp-orange);}

/* ===== Brand hero / single brand ===== */
.sp-brand-hero{background:var(--sp-black) var(--sp-brand-banner, none) center/cover; background-blend-mode:overlay; background-color:rgba(20,22,26,.85); color:#fff; padding-bottom:34px;}
.sp-brand-hero h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(24px,3.6vw,34px); letter-spacing:-0.02em; margin:4px 0 8px;}
.sp-brand-hero__tagline{color:var(--sp-steel-light); margin-bottom:20px;}
.sp-brand-description{color:var(--sp-steel); margin-bottom:20px;}
#sp-brand-models{padding:40px 0 60px;}
.sp-blog-grid{padding:10px 0 40px;}
.sp-no-results{grid-column:1/-1; text-align:center; color:var(--sp-steel); padding:30px 0;}
.sp-no-results__link{display:inline-flex; align-items:center; gap:5px; color:var(--sp-orange-dark); font-weight:700;}
.sp-no-results__link svg{width:14px; height:14px;}

/* ===== Brand Archive search ===== */
.sp-brand-search{display:flex; gap:10px; max-width:520px; margin:0 auto 40px;}
.sp-brand-search input{flex:1; padding:13px 16px; border-radius:8px; border:1.5px solid var(--sp-border);}
.sp-brand-search button{background:var(--sp-orange); border:none; border-radius:8px; padding:0 20px; font-size:16px; color:#fff;}

/* ===== Service hero ===== */
.sp-service-hero{background:var(--sp-black) var(--sp-service-hero-image, none) center/cover; background-blend-mode:overlay; background-color:rgba(20,22,26,.82); color:#fff; padding-bottom:34px;}
.sp-service-hero h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(24px,3.6vw,34px); letter-spacing:-0.02em; margin:4px 0 8px;}
.sp-service-hero__excerpt{color:var(--sp-steel-light); max-width:540px; margin-bottom:20px;}

/* ===== Landing pages ===== */
.sp-landing-intro{color:var(--sp-steel); max-width:720px; margin:20px 0;}
.sp-landing-note{background:rgba(255,107,0,.08); border:1px solid rgba(255,107,0,.3); border-radius:8px; padding:14px 18px; font-size:13.5px; margin-bottom:30px;}
.sp-table-wrap{overflow-x:auto; margin:20px 0 40px;}
.sp-compare-table th, .sp-compare-table td{padding:12px 14px; text-align:left; font-size:13.5px; border-bottom:1px solid var(--sp-border);}
.sp-compare-table th{text-transform:uppercase; font-size:11px; color:var(--sp-steel); letter-spacing:.05em; font-weight:700;}
.sp-related-guides{display:flex; gap:14px; flex-wrap:wrap; padding-bottom:40px;}
.sp-related-guides__item{flex:1; min-width:180px; background:#fff; border:1.5px solid var(--sp-border); border-radius:8px; overflow:hidden; text-align:center; font-size:13px; font-weight:700;}
.sp-related-guides__item img{aspect-ratio:16/10; object-fit:cover;}
.sp-related-guides__item span{display:block; padding:12px;}

/* ===== Blog ===== */
.sp-blog-search{display:flex; gap:8px;}
.sp-blog-search input{padding:11px 14px; border-radius:6px; border:1.5px solid rgba(255,255,255,0.25); background:rgba(255,255,255,0.06); color:#fff; min-width:220px;}
.sp-blog-search button{background:var(--sp-orange); border:none; border-radius:6px; padding:0 16px; color:#fff;}
.sp-featured-guide{display:grid; grid-template-columns:1.4fr 1fr; gap:20px; margin-bottom:20px;}
@media(max-width:860px){.sp-featured-guide{grid-template-columns:1fr;}}
.sp-featured-guide__main{display:block; background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); overflow:hidden; padding-bottom:20px;}
.sp-featured-guide__main img{aspect-ratio:16/9; object-fit:cover;}
.sp-featured-guide__main h3, .sp-featured-guide__main p{margin:0 20px 10px;}
.sp-featured-guide__side{display:flex; flex-direction:column; gap:16px;}
.sp-blog-tabs{display:flex; gap:8px; flex-wrap:wrap; padding:20px 0;}
.sp-blog-tab{padding:9px 16px; border-radius:6px; border:1.5px solid var(--sp-border); font-size:13px; font-weight:700;}
.sp-blog-tab--active{background:var(--sp-orange); color:#fff; border-color:var(--sp-orange);}

.sp-single-blog-layout{display:grid; grid-template-columns:1fr 300px; gap:34px; padding-bottom:50px;}
@media(max-width:900px){.sp-single-blog-layout{grid-template-columns:1fr;}}
.sp-single-blog h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(24px,3.6vw,32px); letter-spacing:-0.02em; margin:14px 0 10px;}
.sp-single-blog__excerpt{color:var(--sp-steel); font-size:15px;}
.sp-single-blog__meta{display:flex; gap:16px; font-size:12.5px; color:var(--sp-steel); margin:14px 0 20px;}
.sp-single-blog__thumb img{border-radius:var(--sp-radius); aspect-ratio:16/9; object-fit:cover;}
.sp-single-blog__content{padding:24px 0; line-height:1.8; font-size:15.5px;}
.sp-single-blog__content h2{font-family:var(--sp-font-display); font-weight:700; font-size:21px; margin-top:34px;}
.sp-blog-sidebar__cta, .sp-blog-sidebar__block{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:18px; margin-bottom:16px;}
.sp-blog-sidebar__item{display:flex; gap:10px; align-items:center; margin-bottom:12px; font-size:13px; font-weight:700;}
.sp-blog-sidebar__item img{width:56px; height:42px; object-fit:cover; border-radius:6px; flex-shrink:0;}

/* ===== Contact page ===== */
.sp-contact-layout{display:grid; grid-template-columns:1fr 1.4fr; gap:22px; padding:40px 0;}
@media(max-width:860px){.sp-contact-layout{grid-template-columns:1fr;}}
.sp-contact-card{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:24px;}
.sp-contact-map{border-radius:var(--sp-radius); overflow:hidden; min-height:280px; border:1.5px solid var(--sp-border);}
.sp-contact-map iframe{width:100%; height:100%; min-height:280px; border:0;}
.sp-hours-strip{background:var(--sp-black); color:#fff; padding:24px 0;}
.sp-hours-strip__inner{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px;}
.sp-hours-strip__list{display:flex; gap:24px; flex-wrap:wrap; font-size:13.5px;}
.sp-hours-strip__list div{display:flex; flex-direction:column;}
.sp-contact-form-wrap{padding-bottom:20px;}
.sp-contact-form-grid{display:grid; grid-template-columns:1fr 1.5fr; gap:24px;}
@media(max-width:860px){.sp-contact-form-grid{grid-template-columns:1fr;}}
.sp-contact-form-options{display:flex; flex-direction:column; gap:14px;}
.sp-contact-form textarea{min-height:110px; resize:vertical;}
.sp-contact-form label{display:block; font-size:12px; font-weight:700; margin-bottom:6px;}

/* ===== Search results ===== */
.sp-search-hero-form{display:flex; gap:10px; margin-bottom:20px; max-width:600px;}
.sp-search-hero-form input{flex:1; padding:13px 16px; border-radius:8px; border:1.5px solid rgba(255,255,255,0.25); background:rgba(255,255,255,0.06); color:#fff;}
.sp-search-hero-form--404 input{border-color:var(--sp-border); background:var(--sp-paper); color:var(--sp-ink);}
.sp-search-hero-form button{background:var(--sp-orange); border:none; border-radius:8px; padding:0 20px; font-weight:700; color:#fff;}
.sp-search-result-row{display:flex; align-items:center; gap:16px; padding:18px; border:1.5px solid var(--sp-border); border-radius:8px; margin-bottom:12px;}
.sp-search-result-row > div{flex:1;}
.sp-search-result-row__tag{background:var(--sp-orange); color:#fff; font-size:10.5px; font-weight:800; padding:5px 10px; border-radius:6px; flex-shrink:0;}

/* ===== 404 ===== */
.sp-404-hero{background:var(--sp-black); color:#fff; padding:70px 0;}
.sp-404-hero__code{font-family:var(--sp-font-display); font-weight:800; font-size:58px; color:var(--sp-orange); display:block;}
.sp-shortcut-card{display:block; background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:20px;}
.sp-shortcut-card h4{margin:0 0 6px; font-weight:700;}
.sp-shortcut-card p{margin:0; font-size:13px; color:var(--sp-steel);}

/* ===== Thank you ===== */
.sp-thankyou-hero{background:var(--sp-black); color:#fff; padding:70px 0; text-align:center;}
.sp-thankyou-check{display:inline-flex; align-items:center; justify-content:center; width:60px; height:60px; border-radius:50%; border:3px solid var(--sp-orange); color:var(--sp-orange); font-size:26px; margin-bottom:16px;}
.sp-whats-next{background:#fff; border:1.5px solid var(--sp-border); border-radius:var(--sp-radius); padding:36px; margin-top:-40px; position:relative; z-index:2;}
.sp-whats-next__steps{display:grid; grid-template-columns:repeat(3,1fr); gap:20px; margin:24px 0;}
@media(max-width:760px){.sp-whats-next__steps{grid-template-columns:1fr;}}
.sp-whats-next__step{text-align:center;}

/* ===== Floating WhatsApp button ===== */
.sp-float-whatsapp{
	position:fixed; bottom:20px; right:20px; z-index:90;
	width:52px; height:52px; border-radius:50%; background:#25D366;
	display:flex; align-items:center; justify-content:center; box-shadow:0 10px 26px -8px rgba(0,0,0,0.4);
}
.sp-float-whatsapp svg{width:26px; height:26px; color:#fff;}

/* ===== Footer ===== */
.sp-footer{background:var(--sp-black); color:var(--sp-steel-light); padding:56px 0 0;}
.sp-footer__grid{display:grid; grid-template-columns:1.4fr 1fr 1fr 1fr; gap:30px; padding-bottom:36px; border-bottom:1px solid var(--sp-line);}
@media(max-width:760px){.sp-footer__grid{grid-template-columns:1fr 1fr;}}
.sp-logo__text--footer{font-size:18px;}
.sp-logo--footer{height:32px; margin-bottom:8px;}
.sp-logo--footer img{max-height:32px;}
.sp-footer__about p{font-size:13px; color:var(--sp-steel-light); margin:12px 0 8px; max-width:280px;}
.sp-footer__hours-note{font-size:13px; color:var(--sp-steel-light); max-width:280px; margin:0 0 16px; font-weight:600;}
.sp-footer__social{display:flex; gap:8px;}
.sp-footer__social a{width:32px; height:32px; border-radius:50%; border:1.5px solid var(--sp-line); display:flex; align-items:center; justify-content:center; color:#fff; transition:background .15s ease;}
.sp-footer__social a:hover{background:var(--sp-orange); border-color:var(--sp-orange);}
.sp-footer__social a svg{width:15px; height:15px;}
.sp-footer__col h5{color:#fff; font-size:12.5px; text-transform:uppercase; letter-spacing:.05em; margin:0 0 14px; font-weight:700;}
.sp-footer__list li{margin-bottom:9px; font-size:13.5px;}
.sp-footer__list--contact li{color:var(--sp-steel-light);}
.sp-footer__row--icon{display:flex; align-items:flex-start; gap:10px;}
.sp-footer__row--icon a{color:var(--sp-steel-light);}
.sp-footer__row--icon a:hover{color:var(--sp-orange);}
.sp-footer__icon{width:16px; height:16px; color:var(--sp-orange); flex-shrink:0; margin-top:2px;}
.sp-footer__bottom{display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:10px; padding:20px 0; font-size:12px; color:var(--sp-steel-light);}

/* ===== Single Product page ===== */
.sp-product-hero{display:grid; grid-template-columns:1fr 1fr; gap:40px; padding:34px 0;}
@media(max-width:860px){.sp-product-hero{grid-template-columns:1fr;}}
.sp-product-hero__gallery{position:relative;}
.sp-product-hero__main-image{width:100%; aspect-ratio:4/2.4; object-fit:cover; border-radius:var(--sp-radius); border:1.5px solid var(--sp-border); background:var(--sp-paper);}
.sp-product-hero__thumbs{display:flex; gap:10px; margin-top:12px;}
.sp-product-hero__thumbs img{width:64px; height:38px; object-fit:cover; border-radius:6px; border:1.5px solid var(--sp-border); cursor:pointer; transition:border-color .15s ease;}
.sp-product-hero__thumbs img:hover{border-color:var(--sp-orange);}
.sp-product-hero__thumb--active{border-color:var(--sp-orange) !important; box-shadow:0 0 0 1px var(--sp-orange);}
.sp-product-hero__info h1{font-family:var(--sp-font-display); font-weight:800; font-size:clamp(24px,3.4vw,32px); letter-spacing:-0.02em; margin:6px 0 10px;}
.sp-product-hero__excerpt{color:var(--sp-steel); font-size:15px; margin-bottom:14px;}
.sp-product-hero__price{font-family:var(--sp-font-display); font-weight:800; font-size:26px; margin-bottom:14px;}
.sp-product-hero__price--ask{font-size:18px; color:var(--sp-steel);}
.sp-product-hero__actions{display:flex; flex-direction:column; gap:0; margin-top:18px; max-width:320px;}
.sp-badge{display:inline-block; font-size:12px; font-weight:700; padding:6px 12px; border-radius:6px; margin-bottom:14px;}
.sp-badge--in-stock{background:rgba(16,185,129,.12); color:#0d7a5f;}

/* ===== Product specs & grouped specifications ===== */
.sp-product-specs{padding:20px 0 10px;}
.sp-product-description{padding:10px 0 30px;}
.sp-product-description h2{font-family:var(--sp-font-display); font-weight:700; font-size:22px; margin-bottom:14px;}
.sp-product-description__content{color:var(--sp-steel); font-size:15px; line-height:1.7; max-width:760px;}
.sp-product-description__content p{margin:0 0 14px;}
.sp-spec-groups{display:grid; grid-template-columns:1fr 1fr; gap:24px; margin:24px 0 36px;}
@media(max-width:760px){.sp-spec-groups{grid-template-columns:1fr;}}
.sp-spec-group h4{font-family:var(--sp-font-display); font-weight:700; font-size:13px; text-transform:uppercase; letter-spacing:.05em; color:var(--sp-orange-dark); margin-bottom:10px;}
.sp-spec-group table{width:100%; border-collapse:collapse;}
.sp-spec-group td{padding:9px 0; border-bottom:1px solid var(--sp-border); font-size:14px;}
.sp-spec-group td:first-child{color:var(--sp-steel); width:50%;}
.sp-spec-group td:last-child{font-weight:600; text-align:right;}

/* ===== Colour swatches (functional) ===== */
.sp-color-picker{margin:4px 0 18px;}
.sp-color-picker__label{display:block; font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; color:var(--sp-steel); margin-bottom:10px;}
.sp-color-picker__dots{display:flex; gap:10px; margin-bottom:8px;}
.sp-color-dot{
	width:32px; height:32px; border-radius:50%; cursor:pointer; padding:0;
	border:2px solid transparent; box-shadow:0 0 0 1.5px var(--sp-border);
	transition:box-shadow .15s ease, transform .15s ease;
}
.sp-color-dot:hover{transform:scale(1.05);}
.sp-color-dot--active{border-color:#fff; box-shadow:0 0 0 1.5px var(--sp-border), 0 0 0 3px var(--sp-orange);}
.sp-color-picker__name{font-size:13.5px; font-weight:600; color:var(--sp-steel);}

.sp-addon-picker{margin:4px 0 18px;}
.sp-addon-picker__buttons{display:flex; flex-wrap:wrap; gap:8px; margin-bottom:8px;}
.sp-addon-btn{
	padding:9px 16px; border-radius:8px; border:1.5px solid var(--sp-border); background:#fff;
	font-size:13.5px; font-weight:600; cursor:pointer; transition:border-color .15s ease, background .15s ease;
}
.sp-addon-btn:hover{border-color:var(--sp-orange);}
.sp-addon-btn--active{border-color:var(--sp-orange); background:rgba(255,107,0,.06); color:var(--sp-orange-dark);}
.sp-addon-picker__price{font-size:15px; font-weight:800; color:var(--sp-orange-dark); min-height:20px;}
