
:root{
  --bg:#050611;--bg2:#090b18;--card:#0d1020;--soft:#15182a;--text:#f8f8fc;--muted:#a8adc2;
  --line:rgba(139,112,255,.18);--lime:#6738ff;--violet:#8e5cff;--cyan:#d9ddf2;--orange:#4924e8;
  --purple:#6738ff;--purple2:#8d54ff;--indigo:#3424d6;--silver:#d9ddf2;--navy:#07091a;
  --max:1200px;--radius:24px;--shadow:0 30px 90px rgba(0,0,0,.45)
}
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.55;overflow-x:hidden}
a{color:inherit;text-decoration:none} img{max-width:100%;display:block} button,input,textarea,select{font:inherit}
body:before{content:"";position:fixed;inset:-25vmax;background:radial-gradient(circle at 20% 10%,rgba(141,108,255,.15),transparent 28%),radial-gradient(circle at 75% 20%,rgba(66,215,255,.11),transparent 26%),radial-gradient(circle at 55% 90%,rgba(184,255,63,.08),transparent 24%);pointer-events:none;z-index:-2}
.container{width:min(var(--max),calc(100% - 40px));margin:auto}.section{padding:96px 0}.section-sm{padding:58px 0}.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.78rem;text-transform:uppercase;letter-spacing:.16em;font-weight:800;color:var(--lime)}.eyebrow:before{content:"";width:24px;height:1px;background:currentColor}.display{font-size:clamp(3.4rem,8vw,7.5rem);line-height:.88;letter-spacing:-.07em;margin:18px 0 26px;max-width:1080px}.h1{font-size:clamp(2.8rem,6vw,5.7rem);line-height:.96;letter-spacing:-.055em;margin:12px 0 22px}.h2{font-size:clamp(2.2rem,4vw,4.25rem);line-height:1;letter-spacing:-.045em;margin:12px 0 18px}.h3{font-size:1.4rem;line-height:1.15;letter-spacing:-.02em;margin:0 0 10px}.lead{font-size:clamp(1.05rem,1.5vw,1.32rem);color:#c9ced8;max-width:760px}.muted{color:var(--muted)}.gradient-text{background:linear-gradient(110deg,var(--lime),var(--cyan),var(--violet));-webkit-background-clip:text;background-clip:text;color:transparent}.kicker{font-size:clamp(1.2rem,2vw,1.55rem);color:#d7dbe4;max-width:720px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;border-radius:999px;border:1px solid var(--line);font-weight:800;transition:.25s ease;cursor:pointer;background:transparent;color:var(--text)}.btn:hover{transform:translateY(-2px);border-color:rgba(255,255,255,.28)}.btn-primary{background:var(--lime);color:#0a0c10;border-color:var(--lime);box-shadow:0 10px 40px rgba(184,255,63,.15)}.btn-primary:hover{box-shadow:0 16px 50px rgba(184,255,63,.25)}.btn-dark{background:#0c0f14}.btn-sm{padding:10px 15px;font-size:.9rem}.btn-row{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(9,11,16,.78);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,.07)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.04em;font-size:1.22rem}.brand-mark{width:34px;height:34px;border-radius:10px;background:conic-gradient(from 210deg,var(--lime),var(--cyan),var(--violet),var(--lime));position:relative}.brand-mark:after{content:"D";position:absolute;inset:4px;background:#0a0c10;border-radius:8px;display:grid;place-items:center;font-size:.9rem}.nav-links{display:flex;align-items:center;gap:7px}.nav-links>a,.dropdown-btn{padding:9px 11px;color:#cfd4de;font-size:.9rem;border-radius:10px}.nav-links>a:hover,.dropdown-btn:hover,.nav-links>a.active{background:rgba(255,255,255,.06);color:white}.nav-cta{display:flex;gap:10px;align-items:center}.dropdown{position:relative}.dropdown-btn{background:none;border:0;cursor:pointer}.dropdown-menu{position:absolute;top:44px;left:0;width:250px;background:#10141c;border:1px solid var(--line);border-radius:18px;padding:8px;opacity:0;visibility:hidden;transform:translateY(8px);transition:.2s;box-shadow:var(--shadow)}.dropdown:hover .dropdown-menu,.dropdown.open .dropdown-menu{opacity:1;visibility:visible;transform:none}.dropdown-menu a{display:block;padding:10px 12px;border-radius:11px;color:#cfd4de}.dropdown-menu a:hover{background:#1a202b;color:#fff}.menu-toggle{display:none;background:none;border:1px solid var(--line);color:#fff;border-radius:11px;padding:8px 10px}
.hero{padding:92px 0 74px;position:relative}.hero-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:center}.hero-art{aspect-ratio:1/1.04;position:relative;border:1px solid var(--line);border-radius:36px;background:linear-gradient(145deg,#131722,#0d1016);overflow:hidden;box-shadow:var(--shadow)}.hero-art .orb{position:absolute;border-radius:50%;filter:blur(0)}.orb.one{width:58%;aspect-ratio:1;background:radial-gradient(circle at 35% 30%,#fff 0 2%,var(--lime) 3% 23%,#3d6 38%,transparent 64%);top:6%;right:-4%;opacity:.95}.orb.two{width:58%;aspect-ratio:1;background:radial-gradient(circle at 35% 35%,#fff 0 2%,var(--violet) 3% 32%,#3f2f75 58%,transparent 69%);bottom:-8%;left:-12%}.mesh{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);background-size:36px 36px;mask-image:linear-gradient(to bottom,#000,transparent)}.float-card{position:absolute;background:rgba(14,17,24,.85);border:1px solid rgba(255,255,255,.12);backdrop-filter:blur(16px);border-radius:18px;padding:16px 18px;box-shadow:0 16px 40px rgba(0,0,0,.25)}.fc1{left:8%;top:18%;}.fc2{right:6%;bottom:12%}.float-card b{display:block;font-size:1.35rem}.float-card span{font-size:.82rem;color:var(--muted)}
.marquee{border-top:1px solid var(--line);border-bottom:1px solid var(--line);overflow:hidden}.marquee-track{display:flex;gap:44px;min-width:max-content;padding:18px 0;animation:marquee 24s linear infinite;color:#bcc3cf;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.78rem}@keyframes marquee{to{transform:translateX(-50%)}}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat{padding:24px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025)}.stat b{font-size:2.15rem;display:block;letter-spacing:-.04em}.stat span{color:var(--muted);font-size:.92rem}
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.card{border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.016));padding:28px;transition:.28s ease;position:relative;overflow:hidden}.card:hover{transform:translateY(-5px);border-color:rgba(255,255,255,.2)}.card-icon{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(184,255,63,.14),rgba(141,108,255,.16));border:1px solid rgba(255,255,255,.08);margin-bottom:22px;font-weight:900;color:var(--lime)}.card p{color:var(--muted)}.service-card{min-height:300px;display:flex;flex-direction:column;justify-content:space-between}.service-card .arrow{font-size:1.4rem;transition:.2s}.service-card:hover .arrow{transform:translateX(5px)}
.split{display:grid;grid-template-columns:.88fr 1.12fr;gap:56px;align-items:center}.visual{border:1px solid var(--line);border-radius:30px;overflow:hidden;min-height:460px;background:linear-gradient(145deg,#1b202b,#0d1016);position:relative}.visual:before,.visual:after{content:"";position:absolute;border-radius:40% 60% 55% 45%/45% 40% 60% 55%;filter:blur(0)}.visual:before{width:54%;aspect-ratio:1;background:linear-gradient(135deg,var(--violet),var(--cyan));top:10%;left:12%;transform:rotate(20deg)}.visual:after{width:42%;aspect-ratio:1;background:linear-gradient(135deg,var(--lime),var(--orange));bottom:4%;right:8%;transform:rotate(-24deg);mix-blend-mode:screen;opacity:.8}.visual-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px);background-size:32px 32px;mask-image:radial-gradient(circle at center,#000,transparent 78%)}
.checks{display:grid;gap:12px;margin:22px 0}.check{display:flex;gap:12px;color:#d8dce5}.check:before{content:"✓";color:#081008;background:var(--lime);width:21px;height:21px;border-radius:50%;display:grid;place-items:center;font-size:.75rem;font-weight:900;flex:0 0 21px;margin-top:2px}
.portfolio-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px}.work{grid-column:span 4;border-radius:24px;overflow:hidden;position:relative;border:1px solid var(--line);background:#10131a}.work.wide{grid-column:span 8}.work img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:.4s}.work.wide img{aspect-ratio:2.05/1}.work:hover img{transform:scale(1.035)}.work-meta{position:absolute;left:16px;right:16px;bottom:16px;padding:14px 16px;border-radius:16px;background:rgba(10,12,16,.78);backdrop-filter:blur(14px);display:flex;justify-content:space-between;gap:15px;align-items:end}.work-meta small{color:var(--muted);display:block}.filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:26px 0 30px}.filter-btn{padding:10px 14px;border:1px solid var(--line);background:#10131a;color:#cdd2db;border-radius:999px;cursor:pointer}.filter-btn.active{background:var(--lime);color:#0a0c10;border-color:var(--lime)}
.package-tabs{display:flex;gap:9px;flex-wrap:wrap;margin:30px 0}.package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.package{padding:26px;border:1px solid var(--line);border-radius:24px;background:#11151d;display:flex;flex-direction:column}.package .price{font-size:2.7rem;letter-spacing:-.055em;font-weight:900;margin:14px 0}.package .price span{font-size:.9rem;color:var(--muted);letter-spacing:0}.package ul{padding:0;list-style:none;margin:10px 0 26px;display:grid;gap:9px;flex:1}.package li{color:#cbd1dc;font-size:.92rem;padding-left:18px;position:relative}.package li:before{content:"•";position:absolute;left:0;color:var(--lime)}.package.featured{border-color:rgba(184,255,63,.38);background:linear-gradient(180deg,rgba(184,255,63,.07),#11151d)}.badge{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;color:#0b0e10;background:var(--lime);padding:6px 10px;border-radius:999px;font-weight:900;display:inline-flex;align-self:flex-start}
.timeline{display:grid;gap:14px;counter-reset:step}.step{display:grid;grid-template-columns:64px 1fr;gap:20px;align-items:start;padding:22px;border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.02);counter-increment:step}.step:before{content:"0" counter(step);font-size:1.2rem;font-weight:900;color:var(--lime)}
.testimonial{display:flex;flex-direction:column;justify-content:space-between;min-height:260px}.stars{color:var(--lime);letter-spacing:.14em}.quote{font-size:1.08rem;color:#e2e5ec}.person{display:flex;align-items:center;gap:12px;margin-top:26px}.avatar{width:42px;height:42px;border-radius:50%;background:linear-gradient(135deg,var(--violet),var(--cyan));display:grid;place-items:center;font-weight:900}.person small{display:block;color:var(--muted)}
.cta{border:1px solid rgba(184,255,63,.22);border-radius:34px;padding:55px;background:radial-gradient(circle at 80% 20%,rgba(184,255,63,.14),transparent 30%),linear-gradient(135deg,#12161d,#0b0d12);position:relative;overflow:hidden}.cta:after{content:"✦";position:absolute;right:5%;top:4%;font-size:9rem;color:rgba(255,255,255,.04)}
.page-hero{padding:94px 0 62px;border-bottom:1px solid var(--line)}.breadcrumbs{display:flex;gap:8px;color:var(--muted);font-size:.84rem}.breadcrumbs a:hover{color:#fff}
.service-list{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.service-point{padding:22px;border:1px solid var(--line);border-radius:20px;background:#11141b}.service-point p{color:var(--muted);margin-bottom:0}
.faq{max-width:900px}.faq-item{border-bottom:1px solid var(--line)}.faq-q{width:100%;background:none;border:0;color:#fff;padding:20px 0;text-align:left;font-weight:800;font-size:1.05rem;display:flex;justify-content:space-between;cursor:pointer}.faq-a{max-height:0;overflow:hidden;color:var(--muted);transition:max-height .3s}.faq-item.open .faq-a{max-height:260px;padding-bottom:20px}
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.blog-card{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#11141b}.blog-cover{height:210px;background:linear-gradient(135deg,rgba(141,108,255,.35),rgba(66,215,255,.14));position:relative}.blog-cover:before{content:"";position:absolute;inset:20px;border:1px solid rgba(255,255,255,.16);border-radius:20px;transform:rotate(-3deg)}.blog-body{padding:24px}.blog-body p{color:var(--muted)}
.form{display:grid;gap:16px}.field{display:grid;gap:8px}.field label{font-size:.86rem;color:#cfd4dd}.field input,.field textarea,.field select{width:100%;padding:14px 15px;background:#0e1117;border:1px solid var(--line);border-radius:14px;color:#fff;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:rgba(184,255,63,.55)}.field textarea{min-height:145px;resize:vertical}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:30px}.contact-card{padding:24px;border:1px solid var(--line);border-radius:22px;background:#11141b}.contact-card b{display:block;margin-bottom:4px}.contact-card p{margin:0;color:var(--muted)}
.legal{max-width:900px}.legal h2{margin-top:34px}.legal p,.legal li{color:#c5cad3}.legal li{margin:8px 0}
.footer{border-top:1px solid var(--line);padding:68px 0 24px;margin-top:72px}.footer-grid{display:grid;grid-template-columns:1.4fr .8fr .8fr 1fr;gap:35px}.footer h4{margin:0 0 15px}.footer a{display:block;color:var(--muted);margin:9px 0}.footer a:hover{color:#fff}.footer-bottom{border-top:1px solid var(--line);margin-top:50px;padding-top:20px;display:flex;justify-content:space-between;gap:20px;color:#7f8796;font-size:.82rem}.floating-actions{position:fixed;right:18px;bottom:18px;z-index:40;display:grid;gap:10px}.float-btn{width:50px;height:50px;border-radius:50%;display:grid;place-items:center;background:var(--lime);color:#0a0c10;font-weight:900;box-shadow:0 12px 30px rgba(0,0,0,.35)}.float-btn.secondary{background:#151922;color:#fff;border:1px solid var(--line)}
.reveal{opacity:0;transform:translateY(18px);transition:.65s ease}.reveal.visible{opacity:1;transform:none}.hide{display:none!important}
@media(max-width:1020px){.nav-links{display:none;position:absolute;top:76px;left:20px;right:20px;flex-direction:column;align-items:stretch;background:#0f131a;border:1px solid var(--line);border-radius:18px;padding:12px}.nav-links.open{display:flex}.dropdown-menu{position:static;width:auto;opacity:1;visibility:visible;transform:none;display:none;box-shadow:none;background:#0c0f14;margin-top:4px}.dropdown.open .dropdown-menu{display:block}.menu-toggle{display:block}.nav-cta .btn:not(.btn-primary){display:none}.hero-grid,.split,.contact-grid{grid-template-columns:1fr}.hero-art{max-width:620px}.grid-4{grid-template-columns:repeat(2,1fr)}.grid-3,.package-grid,.blog-grid{grid-template-columns:repeat(2,1fr)}.stats{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}.work{grid-column:span 6}.work.wide{grid-column:span 12}}
@media(max-width:680px){.container{width:min(var(--max),calc(100% - 28px))}.section{padding:72px 0}.nav{height:68px}.nav-links{top:68px}.nav-cta .btn-primary{display:none}.hero{padding-top:64px}.display{font-size:clamp(3rem,18vw,5rem)}.grid-2,.grid-3,.grid-4,.package-grid,.blog-grid,.service-list,.footer-grid{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.work,.work.wide{grid-column:span 12}.cta{padding:36px 24px}.footer-bottom{flex-direction:column}.page-hero{padding-top:72px}.hero-art{border-radius:24px}.floating-actions{right:12px;bottom:12px}.float-btn{width:46px;height:46px}}


/* Final concept-first conversion layer */
.offer-bar{background:linear-gradient(90deg,#b8ff3f,#d8ff93);color:#081008;font-size:.86rem;position:relative;z-index:60}.offer-bar-inner{min-height:40px;display:flex;align-items:center;justify-content:center;gap:20px;text-align:center}.offer-bar b{font-weight:950;letter-spacing:.08em;font-size:.72rem}.offer-bar a{font-weight:900;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}.site-header{top:0}.brand-image{padding:0!important}.brand-logo{height:42px;width:auto;object-fit:contain}.footer .brand-logo{height:50px}.btn-lg{padding:16px 24px;font-size:1rem}.concept-hero{padding-top:84px}.concept-hero-grid{grid-template-columns:1.08fr .92fr}.concept-display{font-size:clamp(3.2rem,6.9vw,6.7rem);max-width:920px}.hero-trust,.offer-points{display:flex;gap:10px 20px;flex-wrap:wrap;margin:22px 0;color:#dce2eb;font-size:.93rem}.hero-trust span,.offer-points span{display:inline-flex;align-items:center;gap:7px}.hero-trust span::first-letter,.offer-points span::first-letter{color:var(--lime)}.microcopy{color:var(--muted);font-size:.86rem;max-width:650px;margin-top:18px}.concept-collage{min-height:540px;position:relative}.browser-card{background:#10141b;border:1px solid rgba(255,255,255,.13);box-shadow:0 28px 90px rgba(0,0,0,.45);overflow:hidden}.browser-main{position:absolute;inset:7% 4% 9% 3%;border-radius:24px;transform:rotate(-2deg)}.browser-main img{width:100%;height:calc(100% - 36px);object-fit:cover;object-position:top}.browser-top{height:36px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:7px;padding:0 12px;color:var(--muted);font-size:.7rem}.browser-top i{width:8px;height:8px;border-radius:50%;background:#444}.browser-top i:first-child{background:#ff6b6b}.browser-top i:nth-child(2){background:#ffd166}.browser-top i:nth-child(3){background:#7ee787}.browser-top span{margin-left:5px}.browser-small{position:absolute;width:36%;border-radius:18px;z-index:2}.browser-small img{width:100%;aspect-ratio:1/1;object-fit:cover}.browser-small.one{right:-3%;top:-1%;transform:rotate(6deg)}.browser-small.two{left:-5%;bottom:0;transform:rotate(-6deg)}.concept-badge{position:absolute;right:3%;bottom:3%;z-index:3;background:rgba(9,11,16,.92);border:1px solid rgba(184,255,63,.35);padding:15px 18px;border-radius:16px;max-width:235px;backdrop-filter:blur(14px)}.concept-badge b{display:block;color:var(--lime);font-size:1.02rem}.concept-badge span{font-size:.78rem;color:#cbd2dc}.concept-process{padding-top:76px}.concept-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:32px}.concept-step{border:1px solid var(--line);border-radius:24px;background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.015));padding:28px}.concept-step>span{color:var(--lime);font-weight:950;letter-spacing:.08em}.concept-step h3{font-size:1.45rem;line-height:1.1;margin:36px 0 10px}.concept-step p{color:var(--muted);margin:0}.section-head-row{display:flex;justify-content:space-between;gap:30px;align-items:end}.portfolio-real{cursor:zoom-in}.portfolio-note{text-align:center;color:var(--muted);font-size:.86rem;margin-top:22px}.mini-portfolio{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:22px}.mini-portfolio.logo-mini{grid-template-columns:repeat(4,1fr)}.mini-portfolio button{border:1px solid var(--line);padding:0;border-radius:22px;overflow:hidden;background:#10131a;cursor:zoom-in}.mini-portfolio img{width:100%;aspect-ratio:1/1;object-fit:cover;transition:.3s}.mini-portfolio button:hover img{transform:scale(1.04)}.concept-contact-hero{padding-bottom:48px}.contact-steps{display:grid;gap:16px;margin:28px 0}.contact-steps>div{display:grid;grid-template-columns:46px 1fr;gap:13px;align-items:start;padding:16px 0;border-bottom:1px solid var(--line)}.contact-steps b{color:var(--lime);font-size:.88rem}.contact-steps strong,.contact-steps small{display:block}.contact-steps small{color:var(--muted);margin-top:4px;line-height:1.5}.concept-contact-card{margin-top:24px}.concept-form-card{padding:32px}.form-badge{display:inline-flex;padding:7px 10px;border-radius:999px;background:rgba(184,255,63,.1);border:1px solid rgba(184,255,63,.25);color:var(--lime);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase;margin-bottom:16px}.form-assurance{display:grid;gap:7px;margin-top:16px;color:var(--muted);font-size:.82rem}.offer-cta{background:radial-gradient(circle at 85% 10%,rgba(184,255,63,.12),transparent 30%),radial-gradient(circle at 15% 90%,rgba(141,108,255,.15),transparent 34%),#11151c;border-color:rgba(184,255,63,.18)}
/* Popup */
.concept-popup-backdrop{position:fixed;inset:0;background:rgba(3,5,8,.72);backdrop-filter:blur(8px);z-index:1000;display:grid;place-items:center;padding:20px;opacity:0;visibility:hidden;transition:.25s}.concept-popup-backdrop.show{opacity:1;visibility:visible}.concept-popup{width:min(700px,100%);background:#0f131a;border:1px solid rgba(255,255,255,.14);border-radius:28px;box-shadow:0 40px 120px rgba(0,0,0,.65);overflow:hidden;position:relative;transform:translateY(18px) scale(.98);transition:.28s}.concept-popup-backdrop.show .concept-popup{transform:none}.popup-grid{display:grid;grid-template-columns:.9fr 1.1fr}.popup-art{min-height:420px;background:linear-gradient(145deg,#171d26,#0b0e13);position:relative;overflow:hidden}.popup-art img{position:absolute;width:76%;border-radius:14px;border:1px solid rgba(255,255,255,.15);box-shadow:0 20px 50px rgba(0,0,0,.4)}.popup-art img:first-child{top:12%;left:-8%;transform:rotate(-7deg)}.popup-art img:last-child{right:-10%;bottom:10%;transform:rotate(8deg)}.popup-art:after{content:'NO UPFRONT PAYMENT';position:absolute;left:18px;bottom:18px;background:var(--lime);color:#0a0c10;padding:7px 10px;border-radius:999px;font-size:.67rem;font-weight:950;letter-spacing:.07em}.popup-copy{padding:38px 34px;display:flex;flex-direction:column;justify-content:center}.popup-kicker{color:var(--lime);text-transform:uppercase;letter-spacing:.12em;font-weight:900;font-size:.7rem}.popup-copy h2{font-size:clamp(2rem,5vw,3rem);letter-spacing:-.045em;line-height:.98;margin:11px 0 16px}.popup-copy p{color:#c6ccd6;margin:0 0 15px}.popup-list{display:grid;gap:7px;color:#dbe0e8;font-size:.88rem;margin:4px 0 20px}.popup-actions{display:flex;gap:9px;flex-wrap:wrap}.popup-close{position:absolute;right:12px;top:12px;width:36px;height:36px;border-radius:50%;border:1px solid var(--line);background:rgba(0,0,0,.35);color:white;cursor:pointer;z-index:3;font-size:1.2rem}.lightbox{position:fixed;inset:0;z-index:1100;background:rgba(0,0,0,.9);display:grid;place-items:center;padding:28px;opacity:0;visibility:hidden;transition:.2s}.lightbox.show{opacity:1;visibility:visible}.lightbox img{max-width:min(1100px,92vw);max-height:86vh;border-radius:16px;box-shadow:0 30px 100px #000}.lightbox-close{position:fixed;right:22px;top:18px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.25);background:#111;color:#fff;font-size:1.4rem;cursor:pointer}.toast{position:fixed;left:50%;bottom:24px;transform:translate(-50%,20px);background:#131820;border:1px solid var(--line);color:#fff;padding:12px 16px;border-radius:999px;z-index:1200;opacity:0;visibility:hidden;transition:.2s;font-size:.85rem}.toast.show{opacity:1;visibility:visible;transform:translate(-50%,0)}
@media(max-width:900px){.concept-hero-grid{grid-template-columns:1fr}.concept-collage{min-height:470px}.concept-steps{grid-template-columns:1fr}.section-head-row{align-items:start;flex-direction:column}.mini-portfolio.logo-mini{grid-template-columns:repeat(2,1fr)}.popup-grid{grid-template-columns:1fr}.popup-art{display:none}.popup-copy{padding:38px 28px}.offer-bar-inner{padding:8px 0;flex-direction:column;gap:2px;line-height:1.3}.offer-bar a{font-size:.78rem}}
@media(max-width:680px){.brand-logo{height:35px}.concept-collage{min-height:400px}.browser-main{inset:8% 2% 10% 2%}.browser-small{width:40%}.concept-badge{right:1%;bottom:1%;max-width:200px}.hero-trust{display:grid;gap:6px}.mini-portfolio,.mini-portfolio.logo-mini{grid-template-columns:1fr 1fr}.popup-copy{padding:34px 22px}.concept-popup{border-radius:22px}.offer-bar{font-size:.76rem}.offer-bar b{display:block}.offer-points{display:grid;gap:7px}}


/* Portfolio, minimal pricing, verified reviews and complete blog update */
.portfolio-expanded{margin-top:28px}.portfolio-expanded .work{min-height:340px}.portfolio-expanded .work.wide{min-height:390px}.portfolio-expanded .work img{height:100%;min-height:340px}.portfolio-filter-row{margin-top:26px;flex-wrap:wrap}.portfolio-credibility{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:26px}.portfolio-credibility span{border:1px solid var(--line);border-radius:999px;padding:9px 13px;color:#cbd2dc;font-size:.8rem}.portfolio-editorial{padding:32px;border:1px solid var(--line);border-radius:26px;background:linear-gradient(135deg,rgba(184,255,63,.06),rgba(141,108,255,.07))}.portfolio-source-note{max-width:420px}
.minimal-packages-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:38px;align-items:end;margin-bottom:34px}.package-grid-minimal{grid-template-columns:repeat(6,1fr)}.package-grid-minimal .package{grid-column:span 2}.package-grid-minimal .package:nth-child(4),.package-grid-minimal .package:nth-child(5){grid-column:span 3}.price-period{font-size:.9rem;color:var(--muted);font-weight:700;margin-left:4px}.custom-scope-card{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:38px;border:1px solid rgba(184,255,63,.2);border-radius:28px;background:radial-gradient(circle at 90% 0,rgba(184,255,63,.1),transparent 35%),#11151c}.package-grid-service{grid-template-columns:repeat(2,minmax(0,1fr));max-width:950px}.package-grid-service:has(.package:nth-child(3)){grid-template-columns:repeat(3,minmax(0,1fr));max-width:none}
.review-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.review-summary{padding:22px 24px;border:1px solid var(--line);border-radius:20px;background:#11151c}.review-summary strong{display:block;font-size:2rem;color:var(--lime);line-height:1}.review-summary span{display:block;color:var(--muted);font-size:.85rem;margin-top:8px}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:30px}.review-card{min-height:330px}.review-source-row{display:flex;align-items:center;justify-content:space-between;gap:10px}.review-source{font-size:.7rem;color:#cbd2dc;border:1px solid var(--line);border-radius:999px;padding:6px 9px}.review-card .h3{margin-top:18px}.review-honesty{max-width:490px}.verification-note{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:36px;border-radius:26px;border:1px solid var(--line);background:#11151c}.verification-links{display:flex;gap:10px;flex-wrap:wrap}
.blog-grid-complete{grid-template-columns:repeat(3,1fr)}.blog-card{overflow:hidden}.blog-cover-link{position:relative;display:block;overflow:hidden;background:#11151c}.blog-cover-img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:.35s}.blog-card:hover .blog-cover-img{transform:scale(1.035)}.blog-category{position:absolute;left:14px;bottom:14px;background:rgba(8,10,14,.84);border:1px solid rgba(255,255,255,.15);backdrop-filter:blur(8px);padding:7px 10px;border-radius:999px;color:#fff;font-size:.68rem;font-weight:900;text-transform:uppercase;letter-spacing:.08em}.blog-card-featured{grid-column:span 2}.blog-card-featured .blog-cover-img{aspect-ratio:2/1}.blog-body .h3 a{color:inherit}.blog-body small{color:var(--lime);font-weight:800}.text-link{display:inline-block;margin-top:12px;font-weight:900;color:#fff}
.article-hero{padding:90px 0 42px}.article-hero h1{font-size:clamp(2.8rem,6vw,5.7rem);line-height:.98;letter-spacing:-.055em;max-width:1050px;margin:24px 0 18px}.article-meta{display:flex;gap:10px;flex-wrap:wrap;margin-top:34px}.article-meta span{border:1px solid var(--line);border-radius:999px;padding:7px 10px;color:#cbd2dc;font-size:.75rem}.article-deck{font-size:1.18rem;color:#c7ced8;line-height:1.7;max-width:850px}.article-layout{display:grid;grid-template-columns:minmax(0,760px) 320px;gap:60px;align-items:start;padding-bottom:80px}.article-cover{margin:0 0 34px;border-radius:26px;overflow:hidden;border:1px solid var(--line);background:#111}.article-cover img{width:100%;max-height:540px;object-fit:cover}.article-intro{font-size:1.15rem;line-height:1.8;color:#dbe0e7}.article-section{padding:23px 0;border-bottom:1px solid var(--line)}.article-section h2{font-size:1.75rem;letter-spacing:-.035em;margin:0 0 12px}.article-section p{color:#b9c1cc;line-height:1.85;margin:0}.article-conclusion{border-bottom:0}.article-source{display:flex;gap:10px;flex-wrap:wrap;border-top:1px solid var(--line);padding-top:22px;color:var(--muted);font-size:.85rem}.article-source a{color:var(--lime);font-weight:800}.article-sidebar{position:sticky;top:118px}.sidebar-card{padding:26px;border:1px solid var(--line);border-radius:24px;background:#11151c}.sidebar-card h3{font-size:1.55rem;line-height:1.1;margin:14px 0}.sidebar-card p{color:var(--muted);line-height:1.65}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:24px}.related-article{display:flex;flex-direction:column;gap:9px;padding:22px;border-radius:20px;border:1px solid var(--line);background:#11151c;min-height:170px}.related-article small{color:var(--lime);text-transform:uppercase;font-weight:900;letter-spacing:.08em}.related-article b{font-size:1rem;line-height:1.35}.related-article span{margin-top:auto;color:var(--muted);font-size:.8rem}
@media(max-width:1020px){.package-grid-minimal{grid-template-columns:repeat(2,1fr)}.package-grid-minimal .package,.package-grid-minimal .package:nth-child(4),.package-grid-minimal .package:nth-child(5){grid-column:auto}.reviews-grid{grid-template-columns:repeat(2,1fr)}.article-layout{grid-template-columns:1fr}.article-sidebar{position:static}.blog-card-featured{grid-column:span 2}.custom-scope-card,.verification-note{grid-template-columns:1fr}.package-grid-service:has(.package:nth-child(3)){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.minimal-packages-intro{grid-template-columns:1fr}.package-grid-minimal,.package-grid-service,.package-grid-service:has(.package:nth-child(3)),.reviews-grid,.review-summary-grid,.blog-grid-complete,.related-grid{grid-template-columns:1fr}.blog-card-featured{grid-column:auto}.portfolio-expanded .work,.portfolio-expanded .work.wide{min-height:300px}.portfolio-expanded .work img{min-height:300px}.article-hero{padding-top:68px}.article-layout{gap:28px}.article-hero h1{font-size:clamp(2.5rem,13vw,4rem)}.custom-scope-card,.verification-note{padding:26px}}


/* =========================================================
   Designvatives 2026 — Violet Fold identity system
   Built around the selected navy / violet / silver logo.
   ========================================================= */
body{background:
  radial-gradient(circle at 74% 8%,rgba(103,56,255,.14),transparent 27%),
  radial-gradient(circle at 14% 22%,rgba(142,92,255,.075),transparent 24%),
  linear-gradient(180deg,#050611 0%,#070918 48%,#050611 100%);}
body:before{inset:-20vmax;background:
  radial-gradient(circle at 16% 8%,rgba(103,56,255,.13),transparent 25%),
  radial-gradient(circle at 88% 26%,rgba(141,84,255,.11),transparent 25%),
  radial-gradient(circle at 55% 90%,rgba(217,221,242,.04),transparent 22%);}
body:after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;opacity:.16;background-image:linear-gradient(rgba(255,255,255,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.025) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,#000,transparent 80%)}
::selection{background:rgba(103,56,255,.55);color:white}
.gradient-text{background:linear-gradient(105deg,#f3f4fb 0%,#a68aff 35%,#6637ff 72%,#d7dbef 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{color:#a78dff}.eyebrow:before{height:2px;background:linear-gradient(90deg,#6b3dff,#c7c9dc)}
.lead,.kicker{color:#c6cadb}

/* Offer bar */
.offer-bar{background:linear-gradient(90deg,#2e1caa 0%,#6334ff 45%,#7d47ff 75%,#3420bd 100%);border-bottom:1px solid rgba(255,255,255,.14);box-shadow:0 10px 30px rgba(58,30,190,.18)}
.offer-bar b{color:#fff}.offer-bar a{background:rgba(5,6,17,.34);border:1px solid rgba(255,255,255,.18);padding:6px 11px;border-radius:999px}

/* Header / logo lockup */
.site-header{background:rgba(5,6,17,.82);border-bottom:1px solid rgba(142,92,255,.16);box-shadow:0 14px 50px rgba(0,0,0,.14)}
.nav{height:86px}.brand-image{padding:6px 10px;background:linear-gradient(145deg,rgba(255,255,255,.98),rgba(231,233,245,.93));border-radius:14px;border:1px solid rgba(255,255,255,.85);box-shadow:0 8px 30px rgba(0,0,0,.24),inset 0 1px 0 white}
.brand-logo{height:48px;width:auto;max-width:190px;object-fit:contain}.nav-links>a,.dropdown-btn{color:#c2c6d8}.nav-links>a:hover,.dropdown-btn:hover,.nav-links>a.active{background:rgba(103,56,255,.14);color:#fff}.dropdown-menu{background:rgba(9,11,27,.98);border-color:rgba(142,92,255,.22)}.dropdown-menu a:hover{background:rgba(103,56,255,.14)}

/* Buttons */
.btn{border-color:rgba(166,138,255,.22);background:rgba(255,255,255,.012)}.btn:hover{border-color:rgba(166,138,255,.58);box-shadow:0 12px 30px rgba(72,41,214,.13)}
.btn-primary{background:linear-gradient(135deg,#7141ff 0%,#5229ed 58%,#3723c3 100%);color:#fff;border-color:#784bff;box-shadow:0 14px 42px rgba(94,49,255,.27)}
.btn-primary:hover{box-shadow:0 18px 55px rgba(94,49,255,.40);border-color:#9674ff}

/* Hero becomes the identity statement */
.hero,.page-hero,.article-hero{position:relative;overflow:hidden}.concept-hero{min-height:700px;display:flex;align-items:center}.concept-hero:before,.page-hero:before,.article-hero:before{content:"";position:absolute;width:680px;height:680px;right:-220px;top:-240px;border:1px solid rgba(126,81,255,.15);border-radius:36% 64% 68% 32%/44% 38% 62% 56%;transform:rotate(22deg);box-shadow:inset 0 0 140px rgba(103,56,255,.07)}
.concept-hero:after,.page-hero:after{content:"";position:absolute;width:440px;height:440px;right:2%;top:9%;background:url('../img/designvatives-mark.png') center/contain no-repeat;opacity:.055;filter:saturate(1.15);pointer-events:none}
.concept-display{max-width:1000px}.hero-trust span{background:rgba(103,56,255,.08);border:1px solid rgba(140,101,255,.22);color:#d8d8e8;border-radius:999px;padding:8px 11px}
.concept-collage{border-color:rgba(142,92,255,.21);background:linear-gradient(145deg,rgba(22,24,48,.96),rgba(7,9,25,.95));box-shadow:0 50px 120px rgba(0,0,0,.44),0 0 0 1px rgba(112,67,255,.05)}
.concept-collage:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 80% 18%,rgba(111,62,255,.24),transparent 30%),linear-gradient(135deg,transparent 40%,rgba(217,221,242,.03));pointer-events:none;z-index:0}.concept-collage>*{z-index:1}
.browser-card{border-color:rgba(178,156,255,.22);box-shadow:0 22px 55px rgba(0,0,0,.40)}.concept-badge{background:linear-gradient(145deg,rgba(17,20,41,.96),rgba(9,11,25,.96));border-color:rgba(143,99,255,.34);box-shadow:0 20px 55px rgba(0,0,0,.35)}.concept-badge b{color:#a98fff}

/* Content surfaces */
.marquee{border-color:rgba(137,105,255,.14);background:rgba(11,12,28,.6)}.marquee-track{color:#b9bdd0}
.card,.package,.review-summary,.sidebar-card,.related-article,.contact-card{background:linear-gradient(165deg,rgba(19,22,42,.92),rgba(9,11,25,.94));border-color:rgba(139,112,255,.16)}
.card:hover,.package:hover,.work:hover{border-color:rgba(151,119,255,.42);box-shadow:0 24px 70px rgba(0,0,0,.28),0 0 0 1px rgba(105,58,255,.045)}
.card-icon{background:linear-gradient(145deg,rgba(105,56,255,.22),rgba(217,221,242,.06));border-color:rgba(148,112,255,.21);color:#aa92ff}
.stat{background:linear-gradient(160deg,rgba(18,21,41,.88),rgba(8,10,23,.9));border-color:rgba(139,112,255,.15)}.stat b{background:linear-gradient(110deg,#fff,#9b7cff,#d5d8e9);-webkit-background-clip:text;background-clip:text;color:transparent}
.visual{background:linear-gradient(145deg,#13162b,#070918);border-color:rgba(139,112,255,.18)}.visual:before{background:linear-gradient(135deg,#3b27d1,#7f4fff)}.visual:after{background:linear-gradient(135deg,#d7dbef,#6a3bff);opacity:.5;mix-blend-mode:screen}.check:before{color:white;background:linear-gradient(135deg,#7445ff,#4d28e5)}
.service-point,.step,.faq-item{border-color:rgba(139,112,255,.15)}

/* Portfolio */
.work{border-color:rgba(139,112,255,.18);background:#090b18}.work:after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.015);pointer-events:none}.work-meta{background:linear-gradient(135deg,rgba(8,9,20,.92),rgba(25,16,68,.84));border:1px solid rgba(149,116,255,.18)}
.filter-btn{background:#0a0c1c;border-color:rgba(142,92,255,.2)}.filter-btn.active{background:linear-gradient(135deg,#7644ff,#5129e7);color:white;border-color:#8f67ff}
.portfolio-editorial{background:linear-gradient(135deg,rgba(103,56,255,.10),rgba(217,221,242,.035));border-color:rgba(142,92,255,.22)}

/* Packages */
.package.featured{border-color:rgba(139,86,255,.55);background:radial-gradient(circle at 90% 0,rgba(107,61,255,.20),transparent 34%),linear-gradient(165deg,#15162d,#0b0d1d);box-shadow:0 30px 90px rgba(35,20,110,.26)}
.package li:before,.review-summary strong,.article-source a,.blog-body small,.related-article small{color:#a68aff}.badge{background:linear-gradient(135deg,#7849ff,#4e27df);color:#fff}.custom-scope-card{border-color:rgba(118,72,255,.28);background:radial-gradient(circle at 90% 0,rgba(103,56,255,.18),transparent 35%),#0d1020}

/* Forms */
input,textarea,select{background:#090b19!important;border-color:rgba(143,111,255,.22)!important;color:#fff!important}.field input:focus,.field textarea:focus,.field select:focus{border-color:#8058ff!important;box-shadow:0 0 0 4px rgba(105,56,255,.11)!important}.form-assurance span{color:#afb4c9}.concept-form-card{border-color:rgba(131,87,255,.28)}.form-badge{background:rgba(102,58,255,.15)!important;color:#b19dff!important;border-color:rgba(151,117,255,.28)!important}

/* Popup */
.concept-popup{background:linear-gradient(145deg,#101329,#070918);border-color:rgba(149,114,255,.25);box-shadow:0 40px 120px rgba(0,0,0,.72),0 0 80px rgba(70,37,220,.11)}.popup-art{background:radial-gradient(circle at 70% 20%,rgba(102,56,255,.30),transparent 38%),linear-gradient(145deg,#15182e,#070918)}.popup-art:after{background:linear-gradient(135deg,#7445ff,#4c27de);color:#fff}.popup-kicker{color:#a78dff}

/* Footer / floating actions */
.footer{background:linear-gradient(180deg,rgba(6,7,18,.4),#04050d 40%);border-top:1px solid rgba(139,112,255,.16)}.footer .brand-image{display:inline-flex}.footer-contact-note{font-size:.84rem;line-height:1.5;max-width:230px}.footer a:hover{color:#aa90ff}.float-btn{background:linear-gradient(135deg,#7140ff,#4d28e3);color:white;box-shadow:0 12px 40px rgba(63,35,195,.28)}.float-btn.secondary{background:#11152a;border:1px solid rgba(146,111,255,.25)}

/* Article details */
.article-meta span,.portfolio-credibility span{border-color:rgba(139,112,255,.20);background:rgba(105,56,255,.055)}.article-cover{border-color:rgba(139,112,255,.2)}

/* Micro details */
.breadcrumbs{color:#9298ad}.stars{color:#9a7aff}.microcopy{color:#8f95aa}.quote{color:#c4c9d8}.person small{color:#9096aa}

@media(max-width:1020px){.nav{height:78px}.brand-logo{height:44px}.nav-links{background:rgba(7,8,21,.98)!important;border-color:rgba(142,92,255,.22)!important}.concept-hero{min-height:auto}}
@media(max-width:680px){.brand-image{padding:5px 8px;border-radius:11px}.brand-logo{height:36px;max-width:150px}.concept-hero:after,.page-hero:after{width:250px;height:250px;right:-80px;top:8%;opacity:.04}.hero-trust span{border-radius:12px}.offer-bar a{padding:5px 9px}}
/* Horizontal lockup generated from the selected stacked logo for navigation usability. */
.brand-logo{height:43px;max-width:235px}
.footer .brand-logo{height:46px;max-width:250px}
@media(max-width:680px){.brand-logo{height:34px;max-width:185px}.footer .brand-logo{height:40px;max-width:215px}}


/* LOGO FIX — remove boxed treatment and normalize logo sizing sitewide */
.brand-image{
  padding:0 !important;
  background:none !important;
  border:0 !important;
  box-shadow:none !important;
  border-radius:0 !important;
}
.brand-logo{
  display:block;
  width:auto;
  height:38px;
  max-width:210px;
  object-fit:contain;
}
.site-header .brand{flex:0 0 auto}
.site-header .brand-logo{
  height:38px;
  max-width:210px;
}
.footer .brand-logo{
  height:42px;
  max-width:230px;
}
@media(max-width:1020px){
  .site-header .brand-logo{
    height:34px;
    max-width:190px;
  }
}
@media(max-width:680px){
  .site-header .brand-logo{
    height:30px;
    max-width:170px;
  }
  .footer .brand-logo{
    height:34px;
    max-width:190px;
  }
}


/* =========================================================
   LAYOUT QA FIXES — September 2026
   Fixes announcement contrast, process alignment and portfolio gaps.
   ========================================================= */
.offer-bar{
  color:#fff !important;
}
.offer-bar-inner,
.offer-bar-inner span{
  color:#fff !important;
}
.offer-bar b{
  color:#fff !important;
}
.offer-bar a{
  color:#fff !important;
  text-decoration:none !important;
  background:rgba(5,6,17,.30) !important;
  border:1px solid rgba(255,255,255,.24) !important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08);
}
.offer-bar a:hover{
  background:rgba(5,6,17,.48) !important;
  border-color:rgba(255,255,255,.42) !important;
}

/* Pack mixed-width portfolio cards into open grid cells instead of leaving holes. */
.portfolio-grid{
  grid-auto-flow:dense;
  align-items:stretch;
}
.portfolio-grid .work{
  min-width:0;
}

/* Process copy should begin with the first step, not be vertically centered beside a tall timeline. */
.process-split{
  align-items:start !important;
}
.process-split > :first-child{
  padding-top:10px;
}
.process-split .timeline{
  width:100%;
}

/* Keep editorial headings controlled at wide viewport/zoom combinations. */
.section-head-row > :first-child{
  min-width:0;
  max-width:820px;
}
.section-head-row .h2{
  overflow-wrap:normal;
  text-wrap:balance;
}

@media(min-width:1021px){
  .process-split > :first-child{
    position:sticky;
    top:130px;
  }
}

@media(max-width:1020px){
  .process-split > :first-child{
    position:static;
    padding-top:0;
  }
}

@media(max-width:680px){
  .offer-bar-inner{
    gap:7px !important;
    padding:9px 0 !important;
  }
  .offer-bar-inner span{
    max-width:100%;
  }
  .offer-bar a{
    white-space:normal !important;
  }
}

/* Home portfolio: balanced two-column showcase with no dead grid cells. */
.home-portfolio-grid{
  grid-template-columns:repeat(2,minmax(0,1fr));
  grid-auto-flow:row;
  gap:20px;
}
.home-portfolio-grid .work,
.home-portfolio-grid .work.wide{
  grid-column:auto;
  min-height:0;
}
.home-portfolio-grid .work img,
.home-portfolio-grid .work.wide img{
  width:100%;
  height:auto;
  aspect-ratio:16/10;
  object-fit:cover;
}

/* Expanded portfolio keeps feature sizing but fills every available cell. */
.portfolio-expanded{
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-flow:dense;
}
.portfolio-expanded .work{
  grid-column:span 1;
}
.portfolio-expanded .work.wide{
  grid-column:span 2;
}

@media(max-width:1020px){
  .home-portfolio-grid,
  .portfolio-expanded{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .portfolio-expanded .work{grid-column:span 1}
  .portfolio-expanded .work.wide{grid-column:span 2}
}

@media(max-width:680px){
  .home-portfolio-grid,
  .portfolio-expanded{
    grid-template-columns:1fr;
  }
  .home-portfolio-grid .work,
  .home-portfolio-grid .work.wide,
  .portfolio-expanded .work,
  .portfolio-expanded .work.wide{
    grid-column:auto;
  }
  .home-portfolio-grid .work img,
  .home-portfolio-grid .work.wide img{
    aspect-ratio:4/3;
  }
}

/* =========================================================
   MOBILE HEADER / FOOTER / OFFER BAR FIX — Sep 23 2026
   ========================================================= */
@media(max-width:680px){
  /* A more intentional mobile gutter across the site. */
  .container{
    width:calc(100% - 48px) !important;
    max-width:none;
  }

  /* Header: logo left, hamburger firmly right. */
  .nav{
    width:100%;
    height:72px;
    gap:16px;
    justify-content:flex-start;
  }
  .site-header .brand{
    flex:0 0 auto;
  }
  .site-header .brand-logo{
    height:31px;
    max-width:176px;
  }
  .nav-cta{
    display:none !important;
  }
  .menu-toggle{
    display:grid;
    place-items:center;
    margin-left:auto;
    flex:0 0 48px;
    width:48px;
    height:48px;
    padding:0;
    border-radius:14px;
    font-size:1.15rem;
    line-height:1;
  }
  .nav-links{
    top:72px;
    left:24px;
    right:24px;
    width:auto;
  }

  /* Compact promotional strip: remove the long sentence on mobile. */
  .offer-bar-inner{
    min-height:54px;
    padding:7px 0 !important;
    display:flex !important;
    flex-direction:row !important;
    align-items:center;
    justify-content:space-between;
    gap:12px !important;
    text-align:left;
  }
  .offer-bar-inner span{
    display:block;
    flex:1 1 auto;
    min-width:0;
    font-size:0 !important;
    line-height:1;
  }
  .offer-bar-inner span b{
    display:block;
    font-size:.72rem !important;
    line-height:1.2;
    letter-spacing:.10em;
    white-space:nowrap;
  }
  .offer-bar a{
    flex:0 0 auto;
    margin:0;
    padding:8px 12px !important;
    font-size:.72rem !important;
    line-height:1.1;
    white-space:nowrap !important;
  }

  /* Footer: visually align with mobile page content instead of hugging edge. */
  .footer{
    padding-top:52px;
  }
  .footer > .container{
    width:calc(100% - 48px) !important;
  }
  .footer-grid{
    gap:36px;
  }
  .footer .brand-logo{
    height:34px;
    max-width:195px;
  }
  .footer .muted{
    line-height:1.65;
  }
  .footer .btn-row{
    margin-top:24px;
  }
  .footer-bottom{
    margin-top:38px;
  }
}

@media(max-width:390px){
  .container,
  .footer > .container{
    width:calc(100% - 40px) !important;
  }
  .nav-links{
    left:20px;
    right:20px;
  }
  .site-header .brand-logo{
    max-width:162px;
  }
  .offer-bar-inner span b{
    font-size:.67rem !important;
  }
  .offer-bar a{
    padding:7px 10px !important;
    font-size:.68rem !important;
  }
}
