:root { --red:#e3262e; --red-dark:#b71921; --ink:#080808; --panel:#151515; --line:#2b2b2b; --muted:#a4a4a4; --white:#f3f3f3; --font-display:'Michroma', sans-serif; --font-body:'Exo', sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--ink); color:var(--white); font-family:var(--font-display); font-size:16px; line-height:1.55; }
a { color:inherit; text-decoration:none; }
img { display:block; max-width:100%; height:auto; }
.container { width:min(1320px, calc(100% - 48px)); margin-inline:auto; }
.site-header { position:fixed; z-index:10; inset:0 0 auto; border-bottom:1px solid rgba(255,255,255,.1); transition:background-color .25s ease, box-shadow .25s ease; }
.header-inner { min-height:74px; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:32px; }
.site-header.is-scrolled { background:rgba(8,8,8,.96); box-shadow:0 8px 24px rgba(0,0,0,.28); }
.site-header.is-scrolled .header-inner { min-height:58px; }
.site-brand { display:flex; align-items:center; justify-self:start; }
.site-brand img { width:260px; height:auto; }
.brand-fallback { font-size:22px; letter-spacing:.12em; font-weight:700; }
.brand-fallback span { color:var(--red); }
.main-nav { justify-self:center; }
.main-nav ul { display:flex; gap:31px; list-style:none; margin:0; padding:0; font-size:13px; letter-spacing:.08em; text-transform:uppercase; }
.main-nav a { display:block; padding:26px 0 22px; border-bottom:2px solid transparent; }
.main-nav a:hover, .main-nav .current-menu-item a { color:var(--red); border-color:var(--red); }
.main-nav a.is-active { color:var(--red); border-color:var(--red); }
.main-nav.has-section-active .current-menu-item a:not(.is-active) { color:inherit; border-color:transparent; }
.main-nav.has-no-section-active .current-menu-item a:not(.is-active) { color:inherit; border-color:transparent; }
.site-header.is-scrolled .main-nav a { padding-top:18px; padding-bottom:16px; }
.header-cta { position:relative; justify-self:end; border:1px solid #454545; padding:12px 22px; font-size:12px; letter-spacing:.08em; text-transform:uppercase; white-space:nowrap; }
.header-cta { background:var(--red); border-color:var(--red); }
.header-cta:hover { background:var(--red-dark); border-color:var(--red-dark); color:#fff; }
.cta-desktop { display:flex; flex-direction:column; align-items:center; gap:2px; line-height:1.15; }
.cta-desktop strong { font:inherit; font-weight:400; }
.cta-desktop small { font:9px/1.1 var(--font-body); letter-spacing:.09em; text-transform:lowercase; opacity:.72; }
.cta-mobile { display:none; }
.cta-mobile svg { display:block; width:20px; height:20px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.menu-toggle { display:none; background:none; border:1px solid var(--line); color:#fff; padding:10px; width:42px; height:42px; }
.hamburger-lines { display:flex; flex-direction:column; gap:4px; }
.hamburger-lines i { display:block; width:20px; height:1px; background:currentColor; transform-origin:center; transition:transform .25s ease, opacity .2s ease; }
.menu-toggle.is-active .hamburger-lines i:nth-child(1) { transform:translateY(5px) rotate(45deg); }
.menu-toggle.is-active .hamburger-lines i:nth-child(2) { opacity:0; transform:scaleX(0); }
.menu-toggle.is-active .hamburger-lines i:nth-child(3) { transform:translateY(-5px) rotate(-45deg); }
.hero { aspect-ratio:1672 / 941; min-height:720px; display:flex; align-items:center; position:relative; overflow:hidden; background:#050505; }
.home-editor-content { padding:80px 0 0; }
.home-editor-content .entry-content { max-width:900px; margin-inline:auto; }
.hero:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg, rgba(5,5,5,.55) 0%, rgba(5,5,5,.18) 42%, rgba(5,5,5,0) 72%); pointer-events:none; }
.hero-visual { position:absolute; inset:0; background-position:center center; background-size:cover; background-repeat:no-repeat; opacity:1; }
.hero-copy { position:relative; z-index:1; max-width:none; margin:0 auto; padding-top:55px; text-align:left; }
.hero-copy > * { max-width:520px; }
@media (min-width:901px) { .hero-copy{transform:translateY(-70px)} }
.eyebrow, .section-kicker { color:var(--red); letter-spacing:.12em; text-transform:uppercase; font-size:12px; }
.hero h1 { font-size:clamp(35px, 3.25vw, 40px); font-weight:300; line-height:1.14; letter-spacing:.1em; text-transform:uppercase; margin:18px 0 27px; }
.hero h1 span { color:var(--red); display:block; }
.accent { display:block; width:51px; height:2px; background:var(--red); margin:0 0 24px; }
.hero p { color:#c1c1c1; max-width:440px; margin:0 0 32px; font-family:var(--font-body); font-size:15px; letter-spacing: 0.5px; }
.button { display:inline-flex; align-items:center; gap:20px; padding:14px 22px; border:1px solid #5a5a5a; font-size:13px; text-transform:uppercase; letter-spacing:.08em; margin-right:14px; }
.button:after { content:'›'; color:var(--red); font-size:21px; line-height:0; margin-top: -5px; }
.button-primary { background:var(--red); border-color:var(--red); }
.button-primary:after { color:#fff; }
.button:hover { background:var(--red-dark); border-color:var(--red-dark); }
.hero .button:not(.button-primary):hover { background:#242424; border-color:#555; }
.benefits { position:relative; z-index:2; margin-top:-108px; background:rgba(24,24,24,.75); }
.benefits-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:24px; padding:21px 22px; }
.benefit { display:flex; gap:18px; align-items:center; }
.benefit-icon { color:var(--red); width:48px; text-align:center; }
.benefit-icon img { width:48px; height:48px; object-fit:contain; margin:0 auto; }
.benefit strong { display:block; font-size:15px; font-weight:400; text-transform:uppercase; }
.benefit p { color:#a7a7a7; font:14px/1.5 var(--font-body); margin:2px 0 0; letter-spacing: 0.5px; }
.section { padding:80px 0; }
.section-heading { margin-bottom:26px; }
.section h2 { font-size:30px; font-weight:400; line-height:1.2; margin:7px 0 0;     padding-bottom: 30px; }
.services-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.service-card { background:#111; min-height:430px; display:grid; grid-template-rows:220px 112px 1fr auto; position:relative; overflow:hidden; }
.service-image { display:block; height:220px; flex:0 0 220px; overflow:hidden; background:#171717; }
.service-image img { width:100%; height:100%; object-fit:cover; object-position:center; }
.service-image.is-placeholder img { filter:saturate(.7) brightness(.72); }
.service-card > *:not(.service-image) { position:relative; z-index:1; margin-left:20px; margin-right:20px; }
.service-card h3 { font-size:19px; font-weight:400; line-height:1.25; text-transform:uppercase; margin:22px 20px 0; }
.service-card h3:after { content:''; display:block; width:34px; height:2px; background:var(--red); margin-top:14px; }
.service-card p { color:#aaa; font:14px/1.55 var(--font-body); margin:0 20px 17px; padding-top:18px; align-self:start; letter-spacing: 0.5px; }
.text-link { display:inline-flex; align-items:center; gap:10px; font-size:12px; text-transform:uppercase; letter-spacing:.08em; margin-bottom:22px !important; }
.text-link:after { content:'›'; color:var(--red); font-size:20px; }
.service-card { border:1px solid transparent; transition:border-color .3s ease, box-shadow .3s ease, background-color .3s ease; }
.service-card:hover, .service-card:focus-within { border-color:rgba(227,38,46,.42); box-shadow:0 0 0 1px rgba(227,38,46,.08), 0 14px 32px rgba(0,0,0,.22); }
.service-card h3 { position:relative; height:112px; margin:0 20px; padding-top:22px; }
.service-card h3:after { position:absolute; left:0; bottom:0; margin-top:0; }
.service-card h3:after { transition:width .35s cubic-bezier(.2,.7,.2,1); }
.service-card:hover h3:after, .service-card:focus-within h3:after { width:54px; }
.service-image img { transition:transform .55s cubic-bezier(.2,.7,.2,1); will-change:transform; }
.service-card:hover .service-image img, .service-card:focus-within .service-image img { transform:scale(1.06); }
.text-link { transition:color .25s ease, letter-spacing .25s ease; }
.text-link:after { display:inline-block; transition:transform .25s ease; }
.service-card:hover .text-link, .service-card:focus-within .text-link { color:#fff; letter-spacing:.1em; }
.service-card:hover .text-link:after, .service-card:focus-within .text-link:after { transform:translateX(5px); }
.services-carousel { min-width:0; }
.services-carousel-header { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:26px; }
.services-carousel-header .section-heading { min-width:0; margin-bottom:0; }
.services-carousel-controls { display:flex; flex:0 0 auto; gap:8px; padding-bottom:30px; }
.services-carousel-button { width:44px; height:44px; display:flex; align-items:center; justify-content:center; padding:0; color:#fff; background:#151515; border:1px solid #333; border-radius:0; cursor:pointer; transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease; }
.services-carousel-button:hover,.services-carousel-button:focus-visible { color:#fff; background:var(--red); border-color:var(--red); transform:translateY(-2px); outline:0; }
.services-carousel-button svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.services-carousel-track { grid-template-columns:none; grid-auto-flow:column; grid-auto-columns:calc((100% - 60px) / 4); overflow-x:auto; overscroll-behavior-inline:contain; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
.services-carousel-track::-webkit-scrollbar { display:none; }
.services-carousel-track .service-card { min-width:0; scroll-snap-align:start; }
.site-footer { border-top:1px solid var(--line); padding:35px 0; color:#969696; font:13px var(--font-body); }
.footer-inner { display:flex; justify-content:space-between; gap:24px; }
.footer-brand { color:#fff; font-family:inherit; font-size:18px; letter-spacing:.1em; }
.footer-brand span { color:var(--red); }
.entry { padding:145px 0 80px; min-height:600px; }
.entry h1 { font-size:40px; font-weight:400; }
.entry-content { font-family:var(--font-body); max-width:800px; color:#ccc; }
.vehicle-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.vehicle-card { background:var(--panel); padding:24px; border:1px solid var(--line); }
.vehicle-card h2 { margin:0 0 8px; font-weight:400; }
@media (max-width:900px) { .header-inner{grid-template-columns:1fr auto auto;gap:10px}.site-brand{min-width:auto}.main-nav{display:none}.menu-toggle{display:block;grid-column:3;grid-row:1;border:0}.header-cta{display:flex;grid-column:2;grid-row:1;justify-self:end;padding:10px;width:42px;height:42px;align-items:center;justify-content:center;border:0;background:transparent;color:#fff}.header-cta:hover{background:transparent;border-color:transparent;color:#fff}.cta-desktop{display:none}.cta-mobile{display:block}.header-cta:before{content:'';position:absolute;top:50%;left:50%;width:34px;height:34px;border:1px solid var(--red);border-radius:50%;opacity:0;animation:phone-beacon 1.8s ease-out infinite}.benefits-grid,.services-grid{grid-template-columns:repeat(2,1fr)}.services-carousel-track{grid-template-columns:none;grid-auto-columns:calc((100% - 20px) / 2)}.hero{aspect-ratio:auto;height:760px}.hero h1{font-size:42px} }
@keyframes phone-beacon { 0%{transform:translate(-50%,-50%) scale(.72);opacity:.75} 75%,100%{transform:translate(-50%,-50%) scale(1.22);opacity:0} }
@media (max-width:600px) { .container{width:calc(100% - 32px)}.hero{height:760px}.hero-visual{background-size:auto 100%;background-position:62% center}.hero-copy{padding-top:65px}.hero h1{font-size:32px;letter-spacing:.08em}.benefits{margin-top:0}.benefits-grid,.services-grid,.vehicle-grid{grid-template-columns:1fr}.services-carousel-header{gap:16px}.services-carousel-header h2{font-size:25px}.services-carousel-controls{gap:6px}.services-carousel-button{width:40px;height:40px}.services-carousel-track{grid-template-columns:none;grid-auto-columns:88%}.section{padding:52px 0}.footer-inner{flex-direction:column}.main-nav.is-open{display:block;position:absolute;left:0;right:0;top:74px;width:100%;margin:0;background:#111;padding:16px 32px 26px}.site-header.is-scrolled .main-nav.is-open{top:58px}.main-nav.is-open ul{display:block}.main-nav.is-open a{padding:16px 0}.main-nav.is-open a:hover, .main-nav.is-open .current-menu-item a{border-bottom:2px solid var(--red)} }
.about-section { border-top:1px solid rgba(255,255,255,.06); }
.about-section { position:relative; overflow:hidden; background:radial-gradient(circle at 9% 42%, rgba(227,38,46,.12), transparent 34%), radial-gradient(circle at 88% 16%, rgba(100,20,26,.16), transparent 30%), linear-gradient(115deg, #080808 0%, #0c0c0d 48%, #090909 100%); }
.about-section:after { content:''; position:absolute; width:520px; height:520px; right:-210px; bottom:-310px; border-radius:50%; background:radial-gradient(circle, rgba(227,38,46,.11) 0%, rgba(227,38,46,.035) 34%, transparent 70%); pointer-events:none; }
.about-section .container { position:relative; z-index:1; }
.about-grid { display:grid; grid-template-columns:minmax(280px, .85fr) minmax(0, 1.15fr); gap:90px; align-items:start; }
.about-grid h2 { max-width:520px; font-size:34px; line-height:1.2; font-weight:400; margin:10px 0 0; }
.about-copy { max-width:700px; color:#b7b7b7; font:16px/1.7 var(--font-body); }
.about-copy p { margin:0 0 18px; }
.about-copy p:last-child { margin-bottom:0; }
.brands-section { padding:80px 0; }
.brands-grid { display:grid; grid-template-columns:repeat(8,minmax(0,1fr)); gap:16px; min-width:0; }
.brand-card { min-width:0; min-height:128px; display:flex; align-items:center; justify-content:center; padding:18px; overflow:hidden; background:#111; border:1px solid transparent; transition:border-color .25s ease, background-color .25s ease, transform .25s ease; }
.brand-card:hover { border-color:rgba(227,38,46,.45); background:#151515; transform:translateY(-3px); }
.brand-card img { width:auto; height:auto; max-width:78%; max-height:72px; object-fit:contain; }
.brand-card-name { max-width:100%; color:#e8e8e8; font-size:18px; letter-spacing:.08em; text-transform:uppercase; text-align:center; overflow-wrap:anywhere; word-break:break-word; }
@media (max-width:900px) { .about-grid{grid-template-columns:1fr;gap:28px}.brands-grid{grid-template-columns:repeat(3,1fr)} }
@media (max-width:600px) { .section,.brands-section{padding:52px 0}.about-grid h2{font-size:28px}.about-copy{font-size:15px}.brands-grid{grid-template-columns:repeat(2,1fr)}.brand-card{min-height:120px;padding:16px}.brand-card img{max-width:78%;max-height:58px} }
.srs-page-template { padding-top:74px; }
.page-hero { min-height:280px; padding-top:0; display:flex; align-items:flex-end; position:relative; overflow:hidden; background-position:center; background-size:cover; }
.page-hero:after { content:''; position:absolute; inset:0; background:linear-gradient(90deg,rgba(5,5,5,.9),rgba(5,5,5,.24)),linear-gradient(0deg,rgba(5,5,5,.72),transparent 65%); }
.page-hero-content { position:relative; z-index:1; width:min(1320px, calc(100% - 48px)); padding-bottom:56px; }
.page-hero h1 { max-width:50%; margin:10px 0 0; font-size:clamp(28px,3vw,40px); font-weight:400; line-height:1.1; text-transform:uppercase; overflow-wrap:anywhere; }
.page-content { min-height:420px; }
@media (max-width:600px) { .srs-page-template{padding-top:74px}.page-hero{min-height:240px;padding-top:0}.page-hero-content{width:calc(100% - 32px);padding-bottom:40px}.page-hero h1{max-width:100%;font-size:32px} }
.model-intro-grid,.brand-intro-grid { display:grid; grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr); gap:80px; align-items:start; }
.model-intro h2,.brand-intro h2 { margin:8px 0 0; font-size:30px; font-weight:400; line-height:1.25; }
.model-services-section,.brand-models-section { background:#0b0b0b; border-top:1px solid rgba(255,255,255,.06); }
.model-services-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.model-service-card { min-width:0; display:grid; grid-template-columns:200px minmax(0,1fr); background:#111; border:1px solid rgba(255,255,255,.06); overflow:hidden; transition:border-color .3s ease,transform .3s ease; }
.model-service-card:hover { border-color:rgba(227,38,46,.42); transform:translateY(-3px); }
.model-service-image { min-height:220px; overflow:hidden; }
.model-service-image img { width:100%; height:100%; object-fit:cover; transition:transform .5s cubic-bezier(.2,.7,.2,1); }
.model-service-card:hover .model-service-image img { transform:scale(1.05); }
.model-service-body { min-width:0; display:flex; flex-direction:column; padding:24px; }
.model-service-body h3 { margin:0 0 14px; font-size:18px; font-weight:400; line-height:1.35; text-transform:uppercase; }
.model-service-body p { margin:0 0 22px; color:#aaa; font:14px/1.6 var(--font-body); }
.model-service-footer { margin-top:auto; padding-top:16px; border-top:1px solid rgba(255,255,255,.08); display:flex; align-items:baseline; justify-content:space-between; gap:16px; }
.model-service-footer span { color:#888; font:12px var(--font-body); text-transform:uppercase; letter-spacing:.08em; }
.model-service-footer strong { color:var(--red); font:600 18px var(--font-body); text-align:right; }
.brand-intro-logo { min-height:220px; display:flex; align-items:center; justify-content:center; padding:34px; background:#111; }
.brand-intro-logo img { max-width:70%; max-height:130px; width:auto; height:auto; object-fit:contain; }
.model-card { padding:0 0 22px; overflow:hidden; }
.model-card-image { display:block; aspect-ratio:16/7; overflow:hidden; background:#0d0d0d; }
.model-card-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.model-card:hover .model-card-image img { transform:scale(1.05); }
.model-card h2,.model-card p,.model-card .text-link { margin-left:22px; margin-right:22px; }
.model-card h2 { margin-top:20px; font-size:20px; }
.model-card p { color:#aaa; font:14px/1.55 var(--font-body); }
.model-photo-credit { color:rgba(255,255,255,.52); font:10px/1.45 var(--font-body); letter-spacing:.02em; }
.model-photo-credit a { color:inherit; text-decoration:underline; text-decoration-color:rgba(255,255,255,.22); text-underline-offset:2px; transition:color .2s ease; }
.model-photo-credit a:hover { color:#fff; }
.model-photo-credit--hero { width:max-content; max-width:100%; margin-top:14px; padding:5px 8px; background:rgba(0,0,0,.48); }
.model-photo-credit--card { margin:9px 22px 0; }
@media (max-width:900px) { .model-intro-grid,.brand-intro-grid{grid-template-columns:1fr;gap:30px}.model-services-grid{grid-template-columns:1fr} }
@media (max-width:600px) { .model-service-card{grid-template-columns:1fr}.model-service-image{min-height:190px}.brand-intro-logo{min-height:170px}.model-intro h2,.brand-intro h2{font-size:26px} }

/* Contact page and Contact Form 7 */
.contact-section { position:relative; overflow:hidden; background:radial-gradient(circle at 8% 18%,rgba(227,38,46,.11),transparent 30%),linear-gradient(120deg,#080808 0%,#0c0c0d 52%,#090909 100%); }
.contact-section:after { content:''; position:absolute; width:520px; height:520px; right:-270px; bottom:-260px; border:1px solid rgba(227,38,46,.16); border-radius:50%; pointer-events:none; }
.contact-layout { position:relative; z-index:1; display:grid; grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr); gap:72px; align-items:start; }
.contact-intro { position:static; top:auto; align-self:start; padding-top:34px; }
.contact-intro h2,.contact-form-heading h2 { margin:8px 0 24px; padding:0; font-size:32px; font-weight:400; line-height:1.25; }
.contact-intro > p { margin:0 0 30px; color:#aaa; font:15px/1.7 var(--font-body); }
.contact-phone { display:flex; flex-direction:column; gap:4px; margin-bottom:10px; padding:22px 24px; background:var(--red); border:1px solid var(--red); transition:background-color .25s ease,border-color .25s ease,transform .25s ease; }
.contact-phone:hover { background:var(--red-dark); border-color:var(--red-dark); transform:translateY(-2px); }
.contact-phone span { font:12px var(--font-body); letter-spacing:.1em; text-transform:uppercase; }
.contact-phone strong { font:500 25px var(--font-display); letter-spacing:.05em; }
.contact-direct-details { display:grid; gap:10px; margin-bottom:28px; }
.contact-direct-item { display:flex; flex-direction:column; gap:4px; min-width:0; padding:15px 18px; color:#cfcfcf; background:rgba(255,255,255,.025); border:1px solid rgba(255,255,255,.08); font-style:normal; transition:border-color .25s ease,background-color .25s ease; }
a.contact-direct-item:hover { background:rgba(255,255,255,.045); border-color:rgba(227,38,46,.42); }
.contact-direct-item span { color:var(--red); font:10px var(--font-display); letter-spacing:.1em; text-transform:uppercase; }
.contact-direct-item strong { min-width:0; overflow-wrap:anywhere; font:500 15px/1.45 var(--font-body); }
.contact-company-ids { gap:6px; }
.contact-company-ids strong { display:flex; gap:7px; }
.contact-company-ids b { color:#fff; font-weight:600; }
.contact-map { position:relative; overflow:hidden; min-height:205px; background:#101010; border:1px solid rgba(255,255,255,.08); }
.contact-map iframe { display:block; width:100%; height:205px; border:0; filter:grayscale(1) saturate(0) contrast(1.12) brightness(.72); }
.contact-map a { position:absolute; right:10px; bottom:10px; padding:8px 10px; color:#fff; background:rgba(8,8,8,.9); border:1px solid rgba(255,255,255,.16); font:10px/1.2 var(--font-display); letter-spacing:.06em; text-transform:uppercase; transition:background-color .25s ease,border-color .25s ease; }
.contact-map a:hover { background:var(--red); border-color:var(--red); }
.courier-info { display:grid; grid-template-columns:44px minmax(0,1fr); gap:18px; padding:24px; background:rgba(255,255,255,.035); border:1px solid rgba(255,255,255,.08); }
.courier-info-icon { width:44px; height:44px; display:flex; align-items:center; justify-content:center; color:var(--red); border:1px solid rgba(227,38,46,.45); border-radius:50%; font-size:22px; }
.courier-info h3 { margin:1px 0 8px; font-size:15px; font-weight:400; text-transform:uppercase; }
.courier-info p { margin:0; color:#aaa; font:14px/1.6 var(--font-body); }
.contact-steps { display:grid; gap:13px; margin:28px 0 0; padding:0; list-style:none; color:#aaa; font:14px/1.5 var(--font-body); }
.contact-steps li { display:flex; align-items:baseline; gap:13px; }
.contact-steps span { color:var(--red); font:11px var(--font-display); }
.contact-form-panel { min-width:0; padding:34px; background:#111; border:1px solid rgba(255,255,255,.08); box-shadow:0 24px 70px rgba(0,0,0,.24); }
.contact-form-heading { padding-bottom:8px; }
.contact-form-content { max-width:none; font-family:var(--font-body); }
.contact-form-content > p { margin:0; }
.srs-form-section { padding:28px 0; border-top:1px solid rgba(255,255,255,.08); }
.srs-form-section-title { display:flex; align-items:center; gap:14px; margin-bottom:20px; }
.srs-form-section-title > span { color:var(--red); font:11px var(--font-display); }
.srs-form-section-title h3 { margin:0; font:500 16px var(--font-display); letter-spacing:.05em; text-transform:uppercase; }
.srs-form-grid { display:grid; gap:17px; }
.srs-form-grid + .srs-field { margin-top:17px; }
.srs-form-grid-2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.srs-form-grid-3 { grid-template-columns:repeat(3,minmax(0,1fr)); }
.srs-field { position:relative; display:block; min-width:0; margin:0 0 17px; color:#d7d7d7; font:13px/1.4 var(--font-body); }
.srs-form-grid .srs-field { margin-bottom:0; }
.srs-field > span:first-child { position:absolute; z-index:2; top:24px; left:14px; max-width:calc(100% - 28px); margin:0; overflow:hidden; color:#777; line-height:1; text-overflow:ellipsis; white-space:nowrap; pointer-events:none; transform:translateY(-50%); transform-origin:left center; transition:top .2s ease,left .2s ease,color .2s ease,font-size .2s ease,transform .2s ease,background-color .2s ease; }
.srs-field.is-textarea > span:first-child { top:17px; transform:none; }
.srs-field.is-focused > span:first-child,.srs-field.has-value > span:first-child,.srs-field.is-static-floating > span:first-child { top:0; left:10px; max-width:calc(100% - 20px); padding:0 6px; color:#aaa; background:#111; font-size:10px; transform:translateY(-50%); }
.srs-field.is-focused > span:first-child { color:var(--red); }
.srs-field input:not([type=checkbox]):not([type=radio]):not([type=file]),.srs-field select,.srs-field textarea { width:100%; min-width:0; padding:15px 14px 11px; color:#f2f2f2; background:#090909; border:1px solid #323232; border-radius:0; outline:0; font:14px var(--font-body); transition:border-color .2s ease,box-shadow .2s ease,background-color .2s ease; }
.srs-field textarea { min-height:118px; padding-top:17px; resize:vertical; line-height:1.55; }
.srs-field select { min-height:48px; padding-top:14px; color-scheme:dark; }
.srs-field input:focus,.srs-field select:focus,.srs-field textarea:focus { border-color:var(--red); background:#0c0c0c; box-shadow:0 0 0 3px rgba(227,38,46,.1); }
.srs-field input::placeholder,.srs-field textarea::placeholder { color:#686868; opacity:1; }
.srs-file-field { padding:17px 16px 14px; background:rgba(255,255,255,.025); border:1px dashed #3a3a3a; }
.srs-file-field input[type=file] { width:100%; color:#999; font:13px var(--font-body); }
.srs-file-field input[type=file]::file-selector-button { margin-right:12px; padding:9px 13px; color:#fff; background:#252525; border:0; cursor:pointer; font:12px var(--font-body); }
.srs-file-field small { display:block; margin-top:8px; color:#777; }
.srs-field-note { margin:-7px 0 18px; color:#969696; font:14px/1.55 var(--font-body); }
.delivery-options .wpcf7-form-control { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.delivery-options .wpcf7-list-item { margin:0; }
.delivery-options label { height:100%; display:flex; align-items:center; gap:10px; padding:15px; color:#d3d3d3; background:#0b0b0b; border:1px solid #323232; cursor:pointer; font:13px/1.45 var(--font-body); transition:border-color .2s ease,background-color .2s ease; }
.delivery-options label:hover { border-color:rgba(227,38,46,.5); background:#101010; }
.delivery-options input { accent-color:var(--red); }
.delivery-options .wpcf7-list-item-label { margin-left:4px; }
.courier-fields { margin-top:18px; padding:20px; background:rgba(227,38,46,.045); border:1px solid rgba(227,38,46,.2); }
.courier-fields[hidden] { display:none; }
.courier-fields-heading { display:flex; flex-direction:column; gap:3px; margin-bottom:17px; }
.courier-fields-heading strong { font:500 14px var(--font-display); }
.courier-fields-heading span { color:#8e8e8e; font:13px var(--font-body); }
.srs-form-footer { padding-top:25px; border-top:1px solid rgba(255,255,255,.08); }
.srs-consent { margin-bottom:20px; color:#999; font:13px/1.55 var(--font-body); }
.srs-consent label { display:flex; align-items:flex-start; gap:10px; cursor:pointer; }
.srs-consent input { flex:0 0 auto; margin-top:4px; accent-color:var(--red); }
.srs-submit { min-height:50px; padding:13px 25px !important; color:#fff !important; background:var(--red) !important; border:1px solid var(--red) !important; border-radius:0 !important; cursor:pointer; font:12px var(--font-display) !important; letter-spacing:.08em; text-transform:uppercase; transition:background-color .25s ease,border-color .25s ease,transform .25s ease; }
.srs-submit:hover { background:var(--red-dark) !important; border-color:var(--red-dark) !important; transform:translateY(-2px); }
.srs-required-note { display:inline-block; margin:0 0 0 15px; color:#777; font:12px var(--font-body); }
.contact-form-content .wpcf7-spinner { vertical-align:middle; }
.contact-form-content .wpcf7-form-control-wrap { position:relative; display:block; }
.contact-form-content .wpcf7-not-valid { border-color:var(--red) !important; box-shadow:0 0 0 3px rgba(227,38,46,.1) !important; }
.contact-form-content .wpcf7-not-valid-tip { position:absolute; z-index:8; top:calc(100% + 8px); right:7px; width:max-content; max-width:min(250px,calc(100vw - 54px)); margin:0; padding:8px 11px; color:#fff; background:var(--red); border-radius:3px; box-shadow:0 10px 28px rgba(0,0,0,.35); font:11px/1.35 var(--font-body); animation:srs-tooltip-in .24s cubic-bezier(.2,.8,.2,1) both; }
.contact-form-content .wpcf7-not-valid-tip:before { content:''; position:absolute; right:13px; bottom:100%; width:0; height:0; border-right:6px solid transparent; border-bottom:6px solid var(--red); border-left:6px solid transparent; }
.srs-consent .wpcf7-form-control-wrap { width:100%; }
.srs-consent .wpcf7-not-valid-tip { top:calc(100% + 7px); right:auto; left:0; }
.srs-consent .wpcf7-not-valid-tip:before { right:auto; left:13px; }
.contact-form-content .wpcf7-response-output { position:relative; margin:24px 0 0 !important; padding:16px 18px 16px 52px !important; color:#ddd; background:#171717; border:1px solid #444 !important; border-radius:3px; box-shadow:0 16px 38px rgba(0,0,0,.25); font:13px/1.5 var(--font-body); animation:srs-message-in .35s cubic-bezier(.2,.8,.2,1) both; }
.contact-form-content .wpcf7-response-output:before { position:absolute; top:50%; left:17px; width:24px; height:24px; display:flex; align-items:center; justify-content:center; border:1px solid currentColor; border-radius:50%; content:'!'; font:700 13px var(--font-body); transform:translateY(-50%); }
.contact-form-content form.sent .wpcf7-response-output { color:#b9efcf; background:rgba(32,139,82,.13); border-color:rgba(67,190,123,.55) !important; }
.contact-form-content form.sent .wpcf7-response-output:before { content:'✓'; }
.contact-form-content form.invalid .wpcf7-response-output,.contact-form-content form.unaccepted .wpcf7-response-output { color:#ffd3a1; background:rgba(190,116,32,.12); border-color:rgba(222,145,56,.55) !important; }
.contact-form-content form.failed .wpcf7-response-output,.contact-form-content form.aborted .wpcf7-response-output,.contact-form-content form.spam .wpcf7-response-output { color:#ffc0c3; background:rgba(227,38,46,.11); border-color:rgba(227,38,46,.55) !important; }
@keyframes srs-tooltip-in { from{opacity:0;transform:translateY(-4px) scale(.97)} to{opacity:1;transform:translateY(0) scale(1)} }
@keyframes srs-message-in { from{opacity:0;transform:translateY(8px)} to{opacity:1;transform:translateY(0)} }

@media (max-width:900px) { .contact-layout{grid-template-columns:1fr;gap:36px}.contact-intro{position:static;padding-top:0}.srs-form-grid-3{grid-template-columns:1fr}.contact-phone{max-width:420px} }
@media (max-width:600px) { .contact-form-panel{padding:22px 18px}.contact-intro h2,.contact-form-heading h2{font-size:27px}.contact-phone strong{font-size:20px}.srs-form-grid-2,.delivery-options .wpcf7-form-control{grid-template-columns:1fr}.courier-info{grid-template-columns:36px minmax(0,1fr);padding:18px}.courier-info-icon{width:36px;height:36px}.srs-required-note{display:block;margin:10px 0 0} }

/* Vehicle and brand breadcrumbs */
.vehicle-breadcrumbs { max-width:100%; margin:0 0 20px; overflow-x:auto; font:11px/1.2 var(--font-display); letter-spacing:.08em; scrollbar-width:none; }
.vehicle-breadcrumbs::-webkit-scrollbar { display:none; }
.vehicle-breadcrumbs ol { display:flex; align-items:stretch; width:max-content; min-width:0; margin:0; padding:0; list-style:none; }
.vehicle-breadcrumbs li { min-width:0; min-height:42px; display:flex; align-items:center; margin-right:-10px; padding:11px 29px 11px 31px; color:#c8c8c8; background:#222; clip-path:polygon(0 0,calc(100% - 19px) 0,100% 50%,calc(100% - 19px) 100%,0 100%,19px 50%); text-transform:uppercase; white-space:nowrap; }
.vehicle-breadcrumbs li:first-child { z-index:4; min-width:58px; justify-content:center; padding-left:16px; padding-right:27px; background:#151515; clip-path:polygon(0 0,calc(100% - 19px) 0,100% 50%,calc(100% - 19px) 100%,0 100%); }
.vehicle-breadcrumbs li:nth-child(2) { z-index:3; background:#252525; }
.vehicle-breadcrumbs li:nth-child(3) { z-index:2; background:#303030; }
.vehicle-breadcrumbs li:last-child { z-index:1; margin-right:0; padding-right:25px; color:#fff; background:var(--red); }
.vehicle-breadcrumbs a { display:flex; align-items:center; color:inherit; transition:color .2s ease; }
.vehicle-breadcrumbs a:hover { color:#fff; }
.vehicle-breadcrumbs .screen-reader-text { position:absolute; width:1px; height:1px; margin:-1px; padding:0; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; border:0; }
.breadcrumb-home-icon { display:block; width:19px; height:19px; fill:currentColor; }
.vehicle-breadcrumbs [aria-current=page] { display:block; max-width:430px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
@media (max-width:600px) {
    .vehicle-breadcrumbs { margin-bottom:16px; overflow:visible; font-size:10px; }
    .vehicle-breadcrumbs ol { width:100%; max-width:100%; flex-wrap:wrap; row-gap:8px; }
    .vehicle-breadcrumbs li { min-height:38px; max-width:100%; padding:9px 24px 9px 27px; }
    .vehicle-breadcrumbs li:first-child { flex:0 0 52px; min-width:52px; padding-left:14px; padding-right:24px; }
    .vehicle-breadcrumbs li:nth-child(2) { flex:0 0 auto; }
    .vehicle-breadcrumbs li:last-child { flex:1 1 110px; min-width:0; padding-right:21px; }
    .vehicle-breadcrumbs a { min-width:0; max-width:100%; overflow:hidden; }
    .vehicle-breadcrumbs a span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .vehicle-breadcrumbs [aria-current=page] { max-width:none; overflow:visible; text-overflow:clip; white-space:normal; overflow-wrap:anywhere; }
    .vehicle-breadcrumbs--4-items li:nth-child(3) { flex:1 1 110px; min-width:0; }
    .vehicle-breadcrumbs--4-items li:last-child { flex:0 0 100%; margin-top:0; }
    .breadcrumb-home-icon { flex:0 0 auto; width:17px; height:17px; }
}

/* Footer legal information and author credit */
.footer-inner { align-items:flex-end; }
.footer-legal { display:flex; flex-direction:column; gap:6px; }
.footer-copyright { color:#969696; }
.footer-copyright strong { color:#fff; font-weight:500; }
.footer-policy { width:max-content; color:#737373; transition:color .2s ease; }
.footer-policy:hover { color:var(--red); }
.footer-credit { margin-left:auto; padding:8px 0 2px; }
.footer-credit [data-tooltip] { position:relative; z-index:2; display:block; cursor:pointer; }
.footer-credit [data-tooltip]:before,.footer-credit [data-tooltip]:after { position:absolute; left:50%; bottom:calc(100% + 12px); visibility:hidden; opacity:0; pointer-events:none; transition:opacity .2s ease,transform .2s ease,visibility .2s ease; }
.footer-credit [data-tooltip]:before { width:150px; margin-left:-75px; padding:8px 10px; color:#fff; background:var(--red); border-radius:3px; content:attr(data-tooltip); text-align:center; font:10px/1.3 var(--font-body); transform:translateY(4px); }
.footer-credit [data-tooltip]:after { bottom:calc(100% + 7px); margin-left:-5px; width:0; border-top:5px solid var(--red); border-right:5px solid transparent; border-left:5px solid transparent; content:''; transform:translateY(4px); }
.footer-credit [data-tooltip]:hover:before,.footer-credit [data-tooltip]:hover:after,.footer-credit [data-tooltip]:focus-visible:before,.footer-credit [data-tooltip]:focus-visible:after { visibility:visible; opacity:1; transform:translateY(0); }
.footer-credit img { display:block; width:18px; height:auto; opacity:.2; transition:opacity .2s ease,transform .2s ease; }
.footer-credit a:hover img,.footer-credit a:focus-visible img { opacity:.65; transform:translateY(-1px); }
@media (max-width:600px) { .footer-inner{align-items:flex-start}.footer-credit{margin-left:0}.footer-copyright{line-height:1.6} }

/* Service detail image accordion and final CTA */
.service-visual-section { position:relative; overflow:hidden; background:linear-gradient(180deg,#080808 0%,#0b0b0b 100%); border-top:1px solid rgba(255,255,255,.05); }
.service-visual-section:before { content:''; position:absolute; top:-180px; left:50%; width:820px; height:360px; background:radial-gradient(ellipse,rgba(227,38,46,.08) 0%,rgba(227,38,46,.025) 44%,transparent 72%); transform:translateX(-50%); pointer-events:none; }
.service-visual-heading { position:relative; z-index:1; }
.service-visual-heading h2 { max-width:760px; }
.service-visual-accordion { position:relative; z-index:1; display:flex; gap:10px; height:500px; }
.service-visual-panel { position:relative; min-width:0; flex:1 1 0; margin:0; overflow:hidden; background:#111; border:1px solid rgba(255,255,255,.08); outline:0; cursor:pointer; transition:flex-grow .58s cubic-bezier(.2,.72,.18,1),border-color .35s ease,box-shadow .35s ease; }
.service-visual-panel:before { content:''; position:absolute; z-index:1; inset:0; background:linear-gradient(180deg,transparent 46%,rgba(0,0,0,.9) 100%); pointer-events:none; }
.service-visual-panel img { width:100%; height:100%; object-fit:cover; transition:transform .72s cubic-bezier(.2,.72,.18,1),filter .45s ease; }
.service-visual-panel figcaption { position:absolute; z-index:2; left:24px; right:24px; bottom:23px; display:flex; align-items:flex-end; gap:12px; min-width:0; text-transform:uppercase; }
.service-visual-panel figcaption span { flex:0 0 auto; color:var(--red); font-size:11px; letter-spacing:.12em; }
.service-visual-panel figcaption strong { min-width:0; color:#fff; font-size:13px; font-weight:400; line-height:1.4; letter-spacing:.08em; opacity:.82; transition:opacity .3s ease,transform .4s cubic-bezier(.2,.72,.18,1); }
.service-visual-accordion:hover .service-visual-panel,.service-visual-accordion:focus-within .service-visual-panel { flex-grow:.58; }
.service-visual-accordion:hover .service-visual-panel figcaption strong,.service-visual-accordion:focus-within .service-visual-panel figcaption strong { opacity:0; transform:translateY(7px); }
.service-visual-accordion .service-visual-panel:hover,.service-visual-accordion .service-visual-panel:focus { z-index:2; flex-grow:3.35; border-color:rgba(227,38,46,.52); box-shadow:0 16px 38px rgba(0,0,0,.35),inset 0 0 0 1px rgba(227,38,46,.08); }
.service-visual-accordion .service-visual-panel:hover img,.service-visual-accordion .service-visual-panel:focus img { transform:scale(1.045); }
.service-visual-accordion .service-visual-panel:hover figcaption strong,.service-visual-accordion .service-visual-panel:focus figcaption strong { opacity:1; transform:translateY(0); }
.service-detail-cta { position:relative; overflow:hidden; padding:94px 0 104px; text-align:center; border-top:1px solid rgba(255,255,255,.05); }
.service-detail-cta:before { content:''; position:absolute; top:50%; left:50%; width:min(900px,90vw); height:360px; background:radial-gradient(ellipse,rgba(227,38,46,.23) 0%,rgba(227,38,46,.09) 32%,rgba(227,38,46,.025) 52%,transparent 72%); transform:translate(-50%,-50%); pointer-events:none; }
.service-detail-cta-inner { position:relative; z-index:1; display:flex; flex-direction:column; align-items:center; }
.service-detail-cta h2 { max-width:780px; margin:10px auto 0; font-size:clamp(28px,3vw,40px); font-weight:400; line-height:1.2; }
.service-detail-cta p { max-width:650px; margin:20px auto 28px; color:#aaa; font:15px/1.65 var(--font-body); letter-spacing:.02em; }
.service-detail-cta-button { margin:0; padding:16px 28px; border-radius:0; box-shadow:0 12px 38px rgba(227,38,46,.16); transition:background-color .25s ease,border-color .25s ease,transform .3s cubic-bezier(.2,.72,.18,1),box-shadow .3s ease; }
.service-detail-cta-button:hover,.service-detail-cta-button:focus-visible { transform:translateY(-3px); box-shadow:0 17px 48px rgba(227,38,46,.25); }

@media (max-width:900px) {
    .service-visual-accordion { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); height:auto; }
    .service-visual-panel { aspect-ratio:4 / 3; cursor:default; }
    .service-visual-accordion:hover .service-visual-panel,.service-visual-accordion:focus-within .service-visual-panel,.service-visual-accordion .service-visual-panel:hover,.service-visual-accordion .service-visual-panel:focus { flex-grow:1; }
    .service-visual-accordion:hover .service-visual-panel figcaption strong,.service-visual-accordion:focus-within .service-visual-panel figcaption strong { opacity:.9; transform:none; }
    .service-visual-panel figcaption { left:18px; right:18px; bottom:17px; }
    .service-detail-cta { padding:76px 0 82px; }
}
@media (max-width:600px) {
    .service-visual-accordion { display:flex; margin-right:-16px; padding-right:16px; overflow-x:auto; scroll-snap-type:x mandatory; scrollbar-width:none; }
    .service-visual-accordion::-webkit-scrollbar { display:none; }
    .service-visual-panel { flex:0 0 82vw; aspect-ratio:4 / 3; scroll-snap-align:start; }
    .service-detail-cta { padding:64px 0 70px; }
    .service-detail-cta h2 { font-size:28px; }
}
@media (prefers-reduced-motion:reduce) {
    .service-visual-panel,.service-visual-panel img,.service-visual-panel figcaption strong,.service-detail-cta-button { transition:none; }
}

/* Brand carousel shortcode: [srs_marki_karuzela] */
.brand-carousel-section { position:relative; overflow:hidden; background:#0a0a0a; border-top:1px solid rgba(255,255,255,.06); }
.brand-carousel-section:before { content:''; position:absolute; left:50%; bottom:-230px; width:780px; height:360px; background:radial-gradient(ellipse,rgba(227,38,46,.09),transparent 68%); transform:translateX(-50%); pointer-events:none; }
.brand-carousel { position:relative; z-index:1; min-width:0; }
.brand-carousel-header { display:flex; align-items:flex-end; justify-content:space-between; gap:28px; margin-bottom:26px; }
.brand-carousel-header .section-heading { margin-bottom:0; }
.brand-carousel-controls { display:flex; flex:0 0 auto; gap:8px; padding-bottom:30px; }
.brand-carousel-button { width:44px; height:44px; display:flex; align-items:center; justify-content:center; padding:0; color:#fff; background:#151515; border:1px solid #333; border-radius:0; cursor:pointer; transition:color .25s ease,background-color .25s ease,border-color .25s ease,transform .25s ease; }
.brand-carousel-button:hover,.brand-carousel-button:focus-visible { color:#fff; background:var(--red); border-color:var(--red); transform:translateY(-2px); outline:0; }
.brand-carousel-button svg { width:19px; height:19px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.brand-carousel-track { display:grid; grid-auto-flow:column; grid-auto-columns:calc((100% - 80px) / 6); gap:16px; min-width:0; margin-top:-6px; padding:6px 0 18px; overflow-x:auto; overscroll-behavior-inline:contain; scroll-behavior:smooth; scroll-snap-type:x mandatory; scrollbar-width:none; }
.brand-carousel-track::-webkit-scrollbar { display:none; }
.brand-carousel-card { min-width:0; min-height:122px; display:flex; align-items:center; justify-content:center; padding:18px; overflow:hidden; background:#111; border:1px solid rgba(255,255,255,.055); scroll-snap-align:start; transition:border-color .3s ease,background-color .3s ease,transform .3s ease,box-shadow .3s ease; }
.brand-carousel-card:hover,.brand-carousel-card:focus-visible { background:#151515; border-color:rgba(227,38,46,.46); box-shadow:0 12px 30px rgba(0,0,0,.22); transform:translateY(-3px); outline:0; }
.brand-carousel-card img { width:auto; height:auto; max-width:min(72%,150px); max-height:66px; object-fit:contain; transition:transform .35s cubic-bezier(.2,.72,.18,1); }
.brand-carousel-card:hover img,.brand-carousel-card:focus-visible img { transform:scale(1.055); }

@media (max-width:900px) {
    .brand-carousel-track { grid-auto-columns:calc((100% - 48px) / 4); }
}
@media (max-width:600px) {
    .brand-carousel-header { align-items:flex-end; gap:16px; }
    .brand-carousel-header .section-heading { min-width:0; }
    .brand-carousel-header h2 { font-size:25px; }
    .brand-carousel-controls { gap:6px; }
    .brand-carousel-button { width:40px; height:40px; }
    .brand-carousel-track { grid-auto-columns:calc((100% - 16px) / 2.15); }
    .brand-carousel-card { min-height:108px; padding:14px; }
    .brand-carousel-card img { max-width:76%; max-height:58px; }
}
@media (prefers-reduced-motion:reduce) {
    .brand-carousel-track { scroll-behavior:auto; }
    .brand-carousel-button,.brand-carousel-card,.brand-carousel-card img { transition:none; }
}

/* Homepage hero — mobile only */
@media (max-width:600px) {
    .hero { height:auto; min-height:760px; padding:92px 0 50px; align-items:center; }
    .hero:after { background:linear-gradient(180deg,rgba(3,3,3,.58) 0%,rgba(3,3,3,.64) 46%,rgba(3,3,3,.82) 100%); }
    .hero-visual { background-size:auto 100%; background-position:62% center; }
    .hero-copy { display:flex; flex-direction:column; align-items:center; padding-top:0; text-align:center; }
    .hero-copy > * { width:100%; max-width:100%; }
    .hero .eyebrow { font-size:10px; line-height:1.5; letter-spacing:.1em; }
    .hero h1 { margin:15px 0 22px; font-size:clamp(22px,6.4vw,25px); line-height:1.2; letter-spacing:.045em; }
    .hero h1 span { margin-top:4px; }
    .hero .accent { width:42px; margin:0 auto 23px; }
    .hero p { max-width:330px; margin:0 auto 28px; font-size:14px; line-height:1.65; }
    .hero .button { display:flex; width:min(100%,300px); min-height:54px; justify-content:center; margin:0 auto 14px; padding:14px 18px; }
    .hero .button:last-child { margin-bottom:0; }
}

/* ── FAQ accordion ── */
.faq-section { border-top:1px solid rgba(255,255,255,.06); position:relative; overflow:hidden; background:radial-gradient(circle at 91% 42%, rgba(227,38,46,.12), transparent 34%), radial-gradient(circle at 12% 16%, rgba(100,20,26,.16), transparent 30%), linear-gradient(115deg, #080808 0%, #0c0c0d 48%, #090909 100%); }
.faq-section:after { content:''; position:absolute; width:520px; height:520px; left:-210px; bottom:-310px; border-radius:50%; background:radial-gradient(circle, rgba(227,38,46,.11) 0%, rgba(227,38,46,.035) 34%, transparent 70%); pointer-events:none; }
.faq-section .container { position:relative; z-index:1; }
.faq-grid { display:grid; grid-template-columns:minmax(280px, .85fr) minmax(0, 1.15fr); gap:90px; align-items:start; }
.faq-heading h2 { max-width:420px; font-size:34px; line-height:1.2; font-weight:400; margin:10px 0 0; }
.faq-list { max-width:100%; }
.faq-item { border-bottom:1px solid var(--line); }
.faq-item:first-child { border-top:1px solid var(--line); }
.faq-question { list-style:none; display:flex; justify-content:space-between; align-items:center; gap:24px; padding:22px 0; font-size:16px; font-weight:500; line-height:1.4; cursor:pointer; color:var(--white); user-select:none; }
.faq-question::-webkit-details-marker { display:none; }
.faq-question::after { content:''; flex-shrink:0; width:22px; height:22px; border-radius:50%; border:1px solid var(--line); background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath stroke='%23f3f3f3' stroke-width='1.5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E") center/10px no-repeat; transition:transform .25s,border-color .2s; }
.faq-item[open] .faq-question::after { transform:rotate(180deg); border-color:var(--red); background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' fill='none'%3E%3Cpath stroke='%23e3262e' stroke-width='1.5' d='M1 1l4 4 4-4'/%3E%3C/svg%3E"); }
.faq-answer { padding:0 0 22px; color:var(--muted); font-size:15px; line-height:1.7; }
.faq-answer p { margin:0; }
@media (max-width:900px) { .faq-grid { grid-template-columns:1fr; gap:28px; } }
@media (max-width:600px) { .faq-question { font-size:15px; padding:18px 0; } .faq-answer { font-size:14px; } .faq-heading h2 { font-size:28px; } }

/* Uniform 4:3 grid for native WordPress gallery blocks. */
.entry-content .wp-block-gallery.has-nested-images {
  display:grid; grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px; margin-block:32px;
}
.entry-content .wp-block-gallery.has-nested-images > figure.wp-block-image {
  width:100% !important; height:auto; min-width:0; aspect-ratio:4 / 3; margin:0 !important; overflow:hidden;
  border:1px solid var(--line); background:var(--panel); position:relative;
}
.entry-content .wp-block-gallery.has-nested-images > figure.wp-block-image > a { display:block; width:100%; height:100%; overflow:hidden; }
.entry-content .wp-block-gallery.has-nested-images > figure.wp-block-image img {
  width:100%; height:100%; object-fit:cover; transition:transform .45s ease,filter .45s ease;
}
.entry-content .wp-block-gallery a[aria-haspopup="dialog"] { cursor:zoom-in; }
.entry-content .wp-block-gallery a[aria-haspopup="dialog"]:after {
  content:'+'; position:absolute; right:14px; bottom:14px; width:36px; height:36px;
  display:grid; place-items:center; background:var(--red); color:#fff; font:26px/1 var(--font-body); pointer-events:none;
}
.entry-content .wp-block-gallery figure.wp-block-image:hover img { transform:scale(1.045); filter:brightness(1.08); }
.entry-content .wp-block-gallery a:focus-visible { outline:3px solid var(--red); outline-offset:-4px; }
.entry-content .wp-block-gallery > figcaption { grid-column:1 / -1; }
.srs-lightbox {
  position:fixed; inset:0; width:100%; height:100%; max-width:none; max-height:none;
  margin:0; padding:72px 84px; border:0; background:rgba(8,8,8,.97); color:var(--white);
}
.srs-lightbox[open] { display:grid; place-items:center; animation:srs-lightbox-in .2s ease; }
.srs-lightbox::backdrop { background:rgba(0,0,0,.8); }
.srs-lightbox figure { margin:0; max-width:100%; text-align:center; }
.srs-lightbox img { margin:auto; max-width:100%; max-height:calc(100dvh - 190px); width:auto; object-fit:contain; }
.srs-lightbox figcaption { margin-top:18px; max-width:900px; color:#ccc; font:16px/1.5 var(--font-body); max-height:70px; overflow:auto; }
.srs-lightbox button {
  position:absolute; width:48px; height:48px; display:grid; place-items:center;
  border:1px solid #555; background:#161616; color:#fff; font:36px/1 var(--font-body); cursor:pointer;
}
.srs-lightbox button:hover { background:var(--red); border-color:var(--red); }
.srs-lightbox button:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.srs-lightbox-close { top:18px; right:20px; }
.srs-lightbox-prev { left:20px; top:calc(50% - 24px); }
.srs-lightbox-next { right:20px; top:calc(50% - 24px); }
.srs-lightbox [hidden] { display:none !important; }
.srs-lightbox-status { position:absolute; bottom:24px; left:20px; right:20px; text-align:center; font:16px/1.5 var(--font-body); pointer-events:none; }
@keyframes srs-lightbox-in { from { opacity:0; } to { opacity:1; } }
@media (max-width:900px) {
  .entry-content .wp-block-gallery.has-nested-images { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:700px) {
  .entry-content .wp-block-gallery.has-nested-images { gap:8px; }
  .srs-lightbox { padding:76px 16px 96px; }
  .srs-lightbox img { max-height:calc(100dvh - 250px); }
  .srs-lightbox-prev, .srs-lightbox-next { top:auto; bottom:24px; }
  .srs-lightbox-status { bottom:76px; }
}
@media (prefers-reduced-motion:reduce) {
  .entry-content .wp-block-gallery.has-nested-images > figure.wp-block-image img { transition:none; }
  .srs-lightbox[open] { animation:none; }
}
