/* Cyberpunk visual system. Layout and Bootstrap behaviour stay in site.css. */
:root{color-scheme:dark;--bg:#070914;--panel:#101528;--line:#2a3554;--muted:#aebbd4;--acid:#54f4ff;--white:#f2f6ff;--violet:#ed45cc;--yellow:#f8ed46}
body{background-color:var(--bg);background-image:radial-gradient(ellipse at 100% 20%,#57144926,transparent 45%),linear-gradient(#54f4ff05 1px,transparent 1px),linear-gradient(90deg,#54f4ff05 1px,transparent 1px);background-size:auto,64px 64px,64px 64px}
h1,h2,h3{font-weight:800;letter-spacing:-.035em}
h1,h2{font-family:Arial,Helvetica,sans-serif}
::selection{background:var(--violet);color:#fff}
.site-header{background:#070914f5;border-bottom:1px solid #54f4ff45;box-shadow:0 1px 24px #00c9ff0d;min-height:96px}
.brand-symbol{background:var(--acid);color:#070914;border-radius:0;clip-path:polygon(0 0,78% 0,100% 22%,100% 100%,22% 100%,0 78%);box-shadow:0 0 22px #54f4ff55}
.brand-sub{font-style:italic;letter-spacing:.12em}.brand-dot{color:var(--violet)}
#main-nav{gap:24px}#main-nav a{color:#c1cce2;position:relative;padding-block:10px}
#main-nav a.active:after{content:'';position:absolute;inset-inline:0;bottom:0;height:2px;background:var(--acid);box-shadow:0 0 12px var(--acid)}
.btn{border-radius:0;letter-spacing:.035em;position:relative}
.btn-acid{background:var(--yellow);border-color:var(--yellow);color:#0a0c18;clip-path:polygon(0 0,calc(100% - 10px) 0,100% 10px,100% 100%,10px 100%,0 calc(100% - 10px))}
.btn-acid:hover,.btn-acid:focus-visible{background:#fff783;border-color:#fff783;color:#070914;box-shadow:0 0 26px #f8ed4633}
.btn-ghost,.btn-outline-light{border-color:#58718d;background:#0b1020b3;color:var(--white)}
.btn-ghost:hover,.btn-outline-light:hover{background:#54f4ff17;border-color:var(--acid);color:var(--acid)}
#cart-count{background:#0a1625;color:var(--acid);border-radius:2px}
.hero.shell{width:100%;max-width:none;min-height:760px;display:flex;flex-direction:column;padding:84px max(56px,calc((100vw - 1488px)/2)) 0;isolation:isolate;border-bottom:1px solid #54f4ff66;overflow:hidden;gap:0}
.hero-copy{width:56%;max-width:780px;padding:16px 0 80px;z-index:2}
.hero h1{font-size:clamp(50px,5.35vw,86px);font-weight:900;font-style:italic;line-height:.99;text-transform:uppercase;letter-spacing:-.055em;text-shadow:3px 2px 0 #ed45cc42,0 2px 25px #000;overflow-wrap:anywhere}
.hero-description{max-width:510px;color:#c8d7ee;font-size:17px;text-shadow:0 2px 8px #000}
.hero .eyebrow{color:var(--acid);text-shadow:0 1px 6px #000}.eyebrow{letter-spacing:.18em;font-weight:700}
.hero-visual,[dir=rtl] .hero-visual{position:absolute;inset:0;margin:0;height:100%;border:0;border-radius:0;z-index:-1;background:#090e20}
.hero-visual>img{object-position:64% center;width:100%;height:100%}
.hero-visual:after{background:linear-gradient(90deg,#070914f5 0%,#070914d9 27%,#0709144d 55%,#0709140a 77%),linear-gradient(0deg,#070914fa 0%,transparent 32%)}
.visual-corner{top:30px;right:40px;color:var(--acid);background:#070914a6;border-inline-start:2px solid var(--violet);padding:8px 12px}
.hardware-label{left:auto;right:4%;bottom:105px;max-width:400px;background:#081323dd;border-color:#54f4ff70;border-radius:0;color:#dcefff;box-shadow:8px 8px 0 #ed45cc17}
.hero-base{position:relative;z-index:2;align-self:stretch;margin-top:auto;border-color:#54f4ff40;color:#99bad3;padding:24px 0}
.hero-tags{color:#b7d1e7;gap:24px}.hero-tags span{border-inline-start:2px solid var(--violet);padding-inline-start:10px}.hero-tags i{color:var(--acid)}
.live-dot{background:var(--acid);box-shadow:0 0 15px #54f4ffaa;border-radius:0;transform:rotate(45deg)}
.hero-no-image .hero-copy{width:100%}.hero-no-image{background:radial-gradient(ellipse at 80% 40%,#ed45cc30,transparent 60%)}
.section-heading h2{font-weight:800;text-transform:uppercase;font-style:italic}.section-intro{color:var(--muted)}
.section-heading .eyebrow:before{content:'//';color:var(--violet);font-weight:900}
.catalog-tabs{background:#111629;border:1px solid var(--line);border-radius:0;padding:4px}
.catalog-tabs button{border-radius:0;color:#b4c1dc}.catalog-tabs button.active{background:var(--acid);color:#06101c}
.catalog-search{background:#0c1121;border-color:#344b66;border-radius:0;color:var(--white)}
.catalog-search::placeholder{color:#91a3c1}.catalog-search:focus{outline:2px solid var(--acid);outline-offset:2px}
.catalog-card{border-radius:0;background:linear-gradient(145deg,#131b30,#0a0e1d);border-color:#2e4261;box-shadow:0 8px 30px #0003}
.catalog-card:after{content:'';position:absolute;top:0;right:0;width:26px;height:3px;background:var(--violet);pointer-events:none;box-shadow:0 0 14px #ed45cc88}
.catalog-card:hover{border-color:var(--acid);box-shadow:0 0 25px #54f4ff17,6px 6px 0 #ed45cc20;transform:translateY(-5px)}
.catalog-card .product-thumb{border-bottom:1px solid #54f4ff55;height:245px}
.card-number{color:#78a7c3}.card-icon{color:var(--acid);text-shadow:0 0 18px #54f4ff66}
.card-category{color:#df7bd1;letter-spacing:.14em}.catalog-card h3{font-weight:700;letter-spacing:-.025em}
.card-select{border-radius:0;border-color:#54f4ff70;background:#0a1524;transform:none;width:32px;height:32px}.card-select.selected{background:var(--acid);color:#07101b}
.card-bottom{border-color:#2c4161}.card-summary{color:#aebdd4}
.process-section{color:var(--white);background:radial-gradient(ellipse at 0 30%,#ad16752e,transparent 60%),#0d1022;border-top:1px solid #ed45cc70;border-bottom:1px solid #54f4ff40}
.process-section .eyebrow{color:var(--violet)}.process-section .section-intro{color:var(--muted)}
.process-grid article{border-top:2px solid #ed45cc80;background:linear-gradient(#17203970,transparent);padding:24px 18px}
.process-number{color:var(--acid);font-size:32px;font-weight:700}.process-grid p{color:var(--muted)}
.contact-box{background:linear-gradient(120deg,#101b31,#21112d);border:1px solid #54f4ff60;border-inline-start:4px solid var(--acid);border-radius:0;box-shadow:8px 8px 0 #ed45cc19}
.big-email{color:var(--white);overflow-wrap:anywhere}.contact-email{border-color:var(--violet)}
.site-footer{background:linear-gradient(#07091455,#070914);border-top:1px solid #ed45cc66}.footer-wordmark{font-style:italic;text-shadow:3px 2px 0 #ed45cc40}.footer-wordmark span{color:var(--acid)}
.footer-bottom{border-color:#2c3d58}.status-dot:before{color:var(--acid)}
.modal-content{background:#0d1326;color:var(--white);border-color:#54f4ff70;border-radius:0;box-shadow:0 0 70px #00d9ff17}
.modal-header,.modal-footer{border-color:#2e4261}.form-control,.form-select{background-color:#080e1c;border-color:#3b506e;color:var(--white);border-radius:0}
.form-control:focus,.form-select:focus{background-color:#0b1427;color:var(--white);border-color:var(--acid);box-shadow:0 0 0 3px #54f4ff22}
.form-control::placeholder{color:#8fa4c2}.form-select{--bs-form-select-bg-img:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%2354f4ff' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e")}
.language-option{border-radius:0}.language-option.active{background:#54f4ff10}.cookie-banner{background:#0d152bf5;border-color:#54f4ff66;border-radius:0;box-shadow:0 12px 60px #0009,4px 4px 0 #ed45cc33}.cookie-banner p{color:#bac9df}
.detail-cover,.wide-image{border-radius:0;border:1px solid #54f4ff55}.detail-cover>span{background:#090f25e6;border-inline-start:2px solid var(--violet)}
.detail-head h1{font-style:italic;text-transform:uppercase}.detail-block p{color:#b5c4da}.detail-aside{background:linear-gradient(145deg,#121c33,#1c102a);border-color:#42617c;border-radius:0;border-top:3px solid var(--violet)}
.gallery-photo button{border:1px solid #344b66;border-radius:0;background:#0b1020}.gallery-photo button:hover{border-color:var(--acid);box-shadow:0 0 20px #54f4ff22}.gallery-photo figcaption{color:#a9c2d8}
.works-filter{background-color:#0d1528;color:var(--white);border-color:#41617d}
#loading{background:radial-gradient(ellipse,#15203c,#070914 65%);color:var(--acid)}.loader-mark{font-style:italic;text-shadow:3px 2px 0 var(--violet)}
[dir=rtl] .hero-visual:after{background:linear-gradient(270deg,#070914f5 0%,#070914d9 27%,#0709144d 55%,#0709140a 77%),linear-gradient(0deg,#070914fa,transparent 32%)}
[dir=rtl] .hardware-label{right:auto;left:4%}
@media(max-width:1200px){#main-nav{gap:14px}.hero.shell{padding-inline:28px}.hero-copy{width:62%}.hero h1{font-size:clamp(48px,5.8vw,70px)}}
@media(max-width:800px){.site-header{min-height:86px}#main-nav{background:#0b1226}.hero.shell{padding:45px 28px 0;min-height:0}.hero-copy{width:100%;max-width:650px;padding-bottom:30px}.hero h1{font-size:clamp(44px,8vw,68px)}.hero-visual,[dir=rtl] .hero-visual{position:relative;inset:auto;height:400px;width:calc(100% + 56px);margin:0 -28px;z-index:0;flex:none}.hero-visual>img{object-position:64% center}.hero-visual:after,[dir=rtl] .hero-visual:after{background:linear-gradient(#070914 0%,transparent 18%,transparent 78%,#070914 100%)}.hardware-label,[dir=rtl] .hardware-label{inset-inline:28px;bottom:28px;max-width:none}.visual-corner{top:35px;right:28px}.hero-base{margin-top:0}.hero-description{max-width:570px}.hero-tags{flex-wrap:wrap}.catalog-card .product-thumb{height:230px}}
@media(max-width:480px){.hero.shell{padding-inline:18px}.hero-visual,[dir=rtl] .hero-visual{width:calc(100% + 36px);margin-inline:-18px;height:330px}.hero h1{font-size:44px;letter-spacing:-.05em}.hero-description{font-size:15px}.hero-tags{gap:10px;font-size:10px}.hero-tags span{padding-inline-start:6px}.hero-actions .btn{padding:14px 16px}.section-heading h2{font-size:34px}.catalog-card .product-thumb{height:240px}.process-grid{grid-template-columns:1fr}.process-grid article{padding:22px}.cookie-buttons{flex-wrap:wrap}.cookie-buttons .btn{min-width:110px}.hardware-label{font-size:11px}.visual-corner{font-size:9px}}

[dir=rtl] .hero h1,[dir=rtl] .section-heading h2,[dir=rtl] .detail-head h1{letter-spacing:0;font-style:normal;line-height:1.2}
:is([lang=ja],[lang=zh],[lang=ko],[lang=hi],[lang=bn],[lang=hy],[lang=ka]) .hero h1{line-height:1.2;letter-spacing:0}

.process-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.process-grid article{min-width:0;overflow-wrap:anywhere}
@media(max-width:1100px){.process-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.process-grid{grid-template-columns:1fr}}

.btn-acid:focus-visible{outline:2px solid #070914;outline-offset:-6px}

.detail-head h1{overflow-wrap:anywhere;hyphens:auto}

.owner-details{border-top:1px solid #54f4ff40;padding-block:1.5rem;color:#b4becf;font-size:.9rem}.owner-details p{line-height:1.8}.about-intro{max-width:1100px}.about-intro h1{font-size:clamp(2.5rem,6vw,6rem);line-height:1.04;overflow-wrap:anywhere}.about-intro .lead{max-width:820px;line-height:1.8}.about-story{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);align-items:center;gap:clamp(2rem,5vw,6rem);padding-block:3.5rem}.about-story:nth-of-type(even) figure{order:2}.about-story figure{margin:0}.about-story img{width:100%;height:auto;border:1px solid #54f4ff60;box-shadow:12px 12px 0 #ee35be10}.about-story figcaption{font-size:.72rem;color:#939cb2;padding-top:.6rem}.about-copy h2{font-size:clamp(1.8rem,3vw,3.2rem);overflow-wrap:anywhere}.about-copy p{font-size:1.1rem;line-height:1.95;color:#bac3d6}.footer-bottom>div{flex-wrap:wrap}
@media(max-width:800px){.about-story{grid-template-columns:minmax(0,1fr);gap:1.8rem;padding-block:2rem}.about-story:nth-of-type(even) figure{order:0}}

/* A lightweight image flies into the project request button. */
.cart-flight{position:fixed;z-index:2100;width:140px;height:104px;pointer-events:none;border:2px solid #54f4ff;background:#0b1226;box-shadow:0 0 24px #54f4ff88;will-change:transform,left,top;border-radius:8px;overflow:hidden;display:grid;place-items:center;color:#54f4ff}
.cart-flight img{width:100%;height:100%;object-fit:cover}.cart-flight b{position:absolute;right:3px;bottom:3px;background:#f8ed46;color:#070914;font-size:14px;padding:1px 6px;border-radius:3px}
#cart-feedback{position:fixed;inset-inline-end:20px;top:20px;z-index:1040;display:flex;align-items:center;gap:12px;max-width:calc(100vw - 40px);box-shadow:0 0 28px #54f4ff66}
.cart-arrived{animation:cart-arrival .48s ease-out}.cart-arrived #cart-count,.cart-arrived strong{background:#54f4ff;color:#070914}
@keyframes cart-arrival{0%,100%{transform:scale(1)}40%{transform:scale(1.12);filter:brightness(1.4)}}
@media(prefers-reduced-motion:reduce){.cart-arrived{animation:none}}
