
:root{--bg:#120019;--bg-deep:#0b0012;--bg-soft:#1f0930;--panel:rgba(255,255,255,.08);--panel-2:rgba(255,255,255,.12);--panel-dark:rgba(31,9,48,.82);--border:rgba(255,255,255,.14);--text:#f4effb;--muted:#d6c5e8;--dark:#281738;--dark-soft:#4b3565;--light:#f5effa;--light-2:#efe2f7;--violet:#8f4cf1;--violet-2:#be8cff;--violet-3:#6733c7;--accent:#aa68ff;--shadow:0 20px 60px rgba(8,0,12,.24);--radius:28px;--radius-sm:18px;--container:min(1180px,92%)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:'Exo',sans-serif;line-height:1.65;background:linear-gradient(135deg,#0a0010 0%,#160021 45%,#110017 100%);color:var(--text);overflow-x:hidden}a{text-decoration:none;color:inherit}img{display:block;max-width:100%}.container{width:var(--container);margin-inline:auto}.section{padding:92px 0;position:relative;overflow:hidden}.dark-section{background:radial-gradient(circle at top left,rgba(173,111,255,.16),transparent 30%),linear-gradient(135deg,#13001d 0%,#1c0427 45%,#15001f 100%)}.light-section{background:linear-gradient(180deg,var(--light) 0%, #f1e6f8 100%);color:var(--dark)}.light-soft{background:linear-gradient(180deg,#f3ecf8 0%, #ede1f6 100%);color:var(--dark)}.section-head{text-align:center;max-width:860px;margin:0 auto 34px}.section-head h1,.section-head h2{font-size:clamp(2rem,4vw,3.3rem);line-height:1.08;margin:8px 0 14px}.section-head p{color:inherit;opacity:.86}.eyebrow{display:inline-block;font-size:.86rem;text-transform:uppercase;letter-spacing:.18em;color:#d7b3ff;font-weight:800;margin-bottom:10px}.eyebrow-dark{color:var(--violet-3)}.site-header{position:sticky;top:0;z-index:1000;background:rgba(255,255,255,.92);backdrop-filter:blur(18px);box-shadow:0 10px 32px rgba(16,0,22,.08);border-bottom:1px solid rgba(80,58,112,.12)}.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:22px;padding:12px 0}.brand{display:flex;align-items:center;gap:16px;min-width:0}.logo-shell{width:80px;height:80px;border-radius:24px;background:linear-gradient(145deg,#f2e5fb,#e8d8f7);display:grid;place-items:center;flex-shrink:0;box-shadow:0 14px 35px rgba(117,82,162,.18)}.logo-shell img{width:68px;height:68px;object-fit:contain}.brand-copy strong{display:block;color:#2f1145;font-size:clamp(1rem,2vw,1.85rem);line-height:1.02;font-weight:800}.brand-copy small{display:block;color:var(--violet-3);text-transform:uppercase;letter-spacing:.22em;font-size:.84rem;font-weight:700}.main-nav{display:flex;align-items:center;gap:22px}.main-nav a{font-weight:700;color:#260e3c;transition:.28s ease;position:relative}.main-nav a:not(.btn)::after{content:'';position:absolute;left:0;bottom:-6px;width:0;height:2px;background:linear-gradient(90deg,var(--violet),var(--violet-2));transition:.28s ease}.main-nav a:hover{color:var(--violet)}.main-nav a:not(.btn):hover::after{width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 24px;border-radius:999px;font-weight:800;transition:.32s ease;position:relative;overflow:hidden;border:1px solid transparent;cursor:pointer;font-family:inherit}.btn::after{content:"";position:absolute;inset:auto -120% 0 auto;width:120%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:skewX(-24deg);transition:.6s ease}.btn:hover::after{right:120%}.btn-primary{background:linear-gradient(135deg,var(--violet),var(--violet-2));color:white;box-shadow:0 18px 36px rgba(143,76,241,.33)}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 24px 40px rgba(143,76,241,.4)}.btn-secondary{border:1px solid rgba(255,255,255,.25);background:rgba(255,255,255,.08);color:inherit;backdrop-filter:blur(10px)}.light-section .btn-secondary,.light-soft .btn-secondary,.dark-text{color:var(--dark);border-color:rgba(52,26,78,.18);background:rgba(255,255,255,.7)}.btn-secondary:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.45)}.btn-sm{padding:12px 18px}.center-btn{text-align:center;margin-top:32px}.menu-toggle{display:none;border:none;background:rgba(143,76,241,.1);color:#220e35;border-radius:14px;padding:10px 14px;font-size:1.25rem}.hero-section{position:relative;padding:88px 0 72px;overflow:hidden;background:radial-gradient(circle at 15% 15%,rgba(187,131,255,.22),transparent 24%),radial-gradient(circle at 80% 12%,rgba(255,255,255,.1),transparent 20%),linear-gradient(135deg,#0d0013 0%,#180024 45%,#110018 100%)}.hero-grid,.two-col,.quote-grid,.blog-hero-grid,.service-detail-grid,.middle-grid,.about-grid,.feature-panel{display:grid;grid-template-columns:1.02fr .98fr;gap:38px;align-items:center}.hero-home-grid{grid-template-columns:.95fr 1.05fr}.hero-copy h1,.inner-hero h1{font-size:clamp(2.3rem,5vw,4.3rem);line-height:1.04;margin-bottom:18px;max-width:760px}.hero-copy p{font-size:1.06rem;color:var(--muted);max-width:600px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:28px}.hero-points{display:flex;gap:20px;flex-wrap:wrap;margin-top:24px;color:#ead8ff;font-weight:600}.hero-points span{position:relative;padding-left:20px}.hero-points span::before{content:"";position:absolute;left:0;top:11px;width:8px;height:8px;border-radius:50%;background:var(--violet-2);box-shadow:0 0 0 6px rgba(190,140,255,.15)}.hero-visual{position:relative}.hero-image-shell,.image-card,.service-thumb,.blog-thumb,.portfolio-item,.quote-image,.portfolio-thumb{border-radius:34px;overflow:hidden;box-shadow:var(--shadow);background:rgba(255,255,255,.06)}.hero-image-shell img,.image-card img,.portfolio-item img,.quote-image img,.portfolio-thumb img{width:100%;height:100%;object-fit:cover}.hero-person-shell{min-height:720px;transform:perspective(1200px) rotateY(-4deg) rotateX(2deg);position:relative;border:1px solid rgba(255,255,255,.12)}.hero-person-shell::before,.quote-image::before,.portfolio-thumb::before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 45%,rgba(143,76,241,.2));z-index:1;pointer-events:none}.orb{position:absolute;border-radius:999px;filter:blur(18px);opacity:.8;pointer-events:none;animation:pulse 7s ease-in-out infinite}.orb-1{width:230px;height:230px;background:rgba(170,104,255,.28);left:-60px;top:130px}.orb-2{width:170px;height:170px;background:rgba(236,220,255,.18);right:8%;top:110px}@keyframes pulse{0%,100%{transform:scale(1);opacity:.75}50%{transform:scale(1.08);opacity:1}}.logo-stage{background:linear-gradient(145deg,#f6eefc,#eadcf5);border-radius:34px;padding:44px;display:grid;place-items:center;box-shadow:0 24px 45px rgba(83,53,121,.15)}.solo-logo-stage img{width:min(100%,420px);aspect-ratio:1/1;object-fit:contain}.glass-card{background:linear-gradient(160deg,rgba(55,23,84,.94),rgba(70,38,92,.86));border:1px solid rgba(255,255,255,.14);padding:30px;border-radius:32px;box-shadow:var(--shadow);color:#f8f3ff}.light-glass{background:rgba(255,255,255,.62);border:1px solid rgba(73,44,106,.12);color:var(--dark)}.about-card h2,.feature-copy h2{font-size:clamp(1.8rem,3vw,2.8rem);line-height:1.08;margin-bottom:14px}.about-card p,.feature-copy p,.content-block p,.article-shell p{margin-bottom:16px}.chip-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}.chip-row span,.detail-bullets span{padding:10px 16px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);font-weight:700}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service-grid-extended{grid-template-columns:repeat(4,1fr)}.service-card{display:flex;flex-direction:column;overflow:hidden;border-radius:30px;background:linear-gradient(180deg,rgba(255,255,255,.1),rgba(255,255,255,.06));border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow);transform:translateY(0);transition:transform .35s ease, box-shadow .35s ease, border-color .35s ease}.service-card:hover{transform:translateY(-10px);box-shadow:0 32px 50px rgba(11,0,18,.35);border-color:rgba(215,186,255,.42)}.service-thumb{aspect-ratio:16/10;position:relative}.service-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(12,0,18,.2) 40%,rgba(12,0,18,.55))}.service-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.service-card:hover .service-thumb img{transform:scale(1.05)}.service-card-body{padding:22px 22px 26px}.service-kicker{display:inline-block;margin-bottom:8px;color:#e2c8ff;font-size:.8rem;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.service-card h3{font-size:1.6rem;line-height:1.1;margin-bottom:10px}.service-card p{color:#dac7ea}.feature-panel{background:linear-gradient(145deg,#f1e6fa,#eee0f6);border-radius:34px;padding:28px;box-shadow:0 22px 48px rgba(71,39,112,.12)}.feature-visual img{border-radius:26px;box-shadow:var(--shadow)}.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.blog-card{border-radius:30px;overflow:hidden;background:#fff;color:var(--dark);box-shadow:0 24px 42px rgba(48,28,77,.14);display:flex;flex-direction:column;transition:.32s ease}.blog-card:hover{transform:translateY(-8px)}.blog-thumb{aspect-ratio:16/10;overflow:hidden}.blog-thumb img{width:100%;height:100%;object-fit:cover;transition:transform .45s ease}.blog-card:hover .blog-thumb img{transform:scale(1.04)}.blog-card-body{padding:22px}.tag{display:inline-block;padding:8px 12px;border-radius:999px;background:#efe2ff;color:var(--violet-3);font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;margin-bottom:12px}.blog-card h3{font-size:1.45rem;line-height:1.18;margin-bottom:10px}.blog-card p{color:#5d486f;margin-bottom:14px}.text-link{font-weight:800;color:var(--violet-3)}.quote-grid{align-items:center;position:relative;min-height:720px;padding:36px;border-radius:38px;overflow:hidden;background:linear-gradient(135deg,rgba(252,248,255,.92),rgba(247,238,252,.95)),url("../img/newin.png") left center/cover no-repeat;box-shadow:0 28px 54px rgba(64,38,92,.12)}.quote-grid::before{content:"";position:absolute;inset:0;background:url("../img/newin.png") left center/cover no-repeat;opacity:1}.quote-grid::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(249,243,252,.06) 0%,rgba(248,241,252,.12) 18%,rgba(246,238,251,.26) 38%,rgba(244,236,250,.76) 58%,rgba(243,235,249,.95) 76%,rgba(242,234,248,.98) 100%)}.quote-grid>*{position:relative;z-index:1}.quote-visual{display:none}.quote-image{display:none}.quote-form-wrap{grid-column:2;background:rgba(255,255,255,.78);backdrop-filter:blur(10px);border-radius:32px;padding:28px;box-shadow:0 24px 42px rgba(64,38,92,.12);border:1px solid rgba(85,58,118,.12)}.quote-form{display:grid;gap:18px;color:var(--dark)}.form-grid{display:grid;gap:16px}.form-grid.two{grid-template-columns:1fr 1fr}.quote-form label{display:grid;gap:9px;font-weight:700}.quote-form input,.quote-form select,.quote-form textarea{width:100%;padding:14px 16px;border-radius:16px;border:1px solid rgba(88,61,120,.2);font:inherit;background:#fff;color:#29173a}.quote-form textarea{resize:vertical}.check-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}.check-grid label{font-weight:600;display:flex;gap:10px;align-items:flex-start}.check-grid input{width:auto;margin-top:4px}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.portfolio-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.portfolio-page-grid{grid-template-columns:repeat(3,1fr)}.portfolio-card{display:flex;flex-direction:column;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12);border-radius:30px;overflow:hidden;box-shadow:var(--shadow);transition:.35s ease}.portfolio-card:hover{transform:translateY(-8px);border-color:rgba(205,163,255,.42);box-shadow:0 30px 48px rgba(8,0,12,.35)}.portfolio-thumb{aspect-ratio:16/10;position:relative}.portfolio-thumb img{transition:transform .45s ease}.portfolio-card:hover .portfolio-thumb img{transform:scale(1.04)}.portfolio-copy{padding:20px 22px 24px}.portfolio-copy h3{font-size:1.5rem;line-height:1.15;margin-bottom:8px}.portfolio-copy p{color:#d8c9e8;margin-bottom:10px}.portfolio-item{aspect-ratio:16/11;transition:.35s ease}.portfolio-item:hover{transform:translateY(-8px) scale(1.01)}.social-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.social-grid-extended .social-card{min-height:120px}.social-card{display:flex;gap:14px;align-items:center;background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.06));padding:18px;border-radius:24px;border:1px solid rgba(255,255,255,.12);box-shadow:var(--shadow);transition:.32s ease}.social-card:hover{transform:translateY(-6px);border-color:rgba(205,163,255,.45)}.social-card strong{display:block;font-size:1.1rem}.social-card small{color:#d6c3ea;font-size:.92rem}.social-icon{width:56px;height:56px;border-radius:18px;display:grid;place-items:center;background:rgba(255,255,255,.1);color:#fff;flex-shrink:0;font-size:1.65rem;font-weight:800}.circle-icon{background:linear-gradient(135deg,var(--violet),var(--violet-2));box-shadow:0 14px 30px rgba(143,76,241,.25)}.contact-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:26px}.meta-box{background:linear-gradient(160deg,rgba(255,255,255,.1),rgba(255,255,255,.06));padding:20px;border-radius:22px;border:1px solid rgba(255,255,255,.12)}.meta-box strong{display:block;margin-bottom:6px}.meta-box a,.meta-box span{color:#dbc9eb}.inner-hero{padding:96px 0 52px;background:radial-gradient(circle at top left,rgba(191,141,255,.18),transparent 24%),linear-gradient(135deg,#110018 0%,#1c0427 45%,#15001d 100%)}.small-hero{padding:86px 0 44px}.light-hero{background:linear-gradient(180deg,#f3ecf8,#ede1f6);color:var(--dark)}.service-page-hero .service-detail-copy p,.blog-hero p,.inner-hero p{color:var(--muted)}.light-hero p{color:#5a486d}.detail-bullets{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 26px}.image-card{height:100%;min-height:420px}.include-list{list-style:none;display:grid;gap:12px}.include-list li{padding:14px 16px;border-radius:18px;background:rgba(255,255,255,.7);border:1px solid rgba(93,68,128,.12);font-weight:700}.article-shell{max-width:860px;background:rgba(255,255,255,.72);padding:34px;border-radius:30px;box-shadow:0 20px 42px rgba(64,38,92,.12);margin-inline:auto}.article-shell p{color:#342147}.article-cta{margin-top:28px;padding-top:24px;border-top:1px solid rgba(88,61,120,.18);display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.footer-brand .logo-shell{width:62px;height:62px;border-radius:20px}.footer-brand .logo-shell img{width:54px;height:54px}.site-footer{background:#0c0011;padding-top:60px;border-top:1px solid rgba(255,255,255,.08)}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:30px;padding-bottom:26px}.footer-copy{color:#ffffff;max-width:540px;margin-top:14px;opacity:.88}.site-footer h4{margin-bottom:12px}.footer-links{list-style:none;display:grid;gap:10px}.footer-links a{color:#d8cae7}.footer-bottom{padding:18px 0 28px;border-top:1px solid rgba(255,255,255,.08);color:#bba8cf}.site-footer .brand-copy strong,.site-footer .brand-copy small{color:#ffffff}.reveal-up,.reveal-left,.reveal-right,.reveal-scale{opacity:0;transform:translateY(30px);transition:opacity .8s ease, transform .8s ease}.reveal-left{transform:translateX(-32px)}.reveal-right{transform:translateX(32px)}.reveal-scale{transform:scale(.95)}.is-visible{opacity:1!important;transform:none!important}.floaty{animation:floaty 6s ease-in-out infinite}@keyframes floaty{0%,100%{transform:translateY(0) perspective(1200px) rotateY(-4deg) rotateX(2deg)}50%{transform:translateY(-10px) perspective(1200px) rotateY(-3deg) rotateX(1deg)}}@media (max-width:1180px){.service-grid-extended{grid-template-columns:repeat(3,1fr)}}@media (max-width:1080px){.service-grid,.blog-grid,.portfolio-grid,.portfolio-card-grid{grid-template-columns:repeat(2,1fr)}.social-grid,.contact-meta{grid-template-columns:repeat(2,1fr)}}@media (max-width:920px){.hero-grid,.two-col,.quote-grid,.blog-hero-grid,.service-detail-grid,.middle-grid,.about-grid,.feature-panel,.footer-grid{grid-template-columns:1fr}.service-page-hero .service-detail-copy{order:2}.service-page-hero .service-detail-visual{order:1}.main-nav{position:absolute;right:4%;top:94px;background:rgba(255,255,255,.96);box-shadow:var(--shadow);border-radius:22px;padding:18px;display:none;flex-direction:column;align-items:flex-start;min-width:250px}.main-nav.open{display:flex}.menu-toggle{display:block}.quote-grid{min-height:auto;padding:22px;background-position:18% center}.quote-grid::after{background:linear-gradient(180deg,rgba(244,236,250,.55) 0%,rgba(244,236,250,.92) 48%,rgba(244,236,250,.98) 100%)}.quote-form-wrap{grid-column:auto}.image-card,.hero-person-shell{min-height:340px}}@media (max-width:920px){.hero-section{background:linear-gradient(180deg,rgba(9,0,15,.94) 0%,rgba(17,0,25,.84) 42%,rgba(20,0,29,.48) 72%,rgba(20,0,29,.18) 100%),url('../img/main_blend.png') 72% top/cover no-repeat,linear-gradient(135deg,#0d0013,#1c0228);padding:64px 0 56px;}}
@media (max-width:640px){.brand-copy strong{font-size:1.05rem}.brand-copy small{font-size:.66rem;letter-spacing:.17em}.logo-shell{width:62px;height:62px}.logo-shell img{width:54px;height:54px}.hero-copy h1,.inner-hero h1,.section-head h1,.section-head h2{font-size:2rem}.service-grid,.blog-grid,.portfolio-grid,.portfolio-card-grid,.social-grid,.contact-meta,.check-grid,.form-grid.two,.service-grid-extended{grid-template-columns:1fr}.section{padding:74px 0}.nav-wrap{padding:12px 0}}

/* ===== Final premium navigation + portfolio visibility update ===== */
.site-header{
  background:linear-gradient(135deg,rgba(18,0,26,.96),rgba(47,14,72,.94),rgba(24,0,36,.96));
  border-bottom:1px solid rgba(255,255,255,.12);
  box-shadow:0 18px 42px rgba(8,0,15,.28);
}
.nav-wrap{padding:10px 0;}
.site-header .brand{gap:14px;}
.site-header .logo-shell{
  width:68px;height:68px;border-radius:22px;
  background:linear-gradient(145deg,#fff,#f2e8fb);
  border:1px solid rgba(255,255,255,.55);
  box-shadow:0 16px 34px rgba(169,104,255,.25);
}
.site-header .logo-shell img{width:58px;height:58px;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(72,24,98,.18));}
.site-header .brand-copy strong,
.site-footer .brand-copy strong{color:#fff!important;text-shadow:0 1px 12px rgba(255,255,255,.12);}
.site-header .brand-copy small,
.site-footer .brand-copy small{color:#fff!important;opacity:.92;text-shadow:0 1px 12px rgba(190,140,255,.25);}
.main-nav{gap:24px;}
.main-nav a{color:#fff;font-size:.98rem;letter-spacing:.01em;}
.main-nav a:hover{color:#dfc5ff;}
.main-nav a:not(.btn)::after{background:linear-gradient(90deg,#fff,var(--violet-2));bottom:-8px;}
.main-nav .btn-sm{
  padding:10px 18px;
  border-radius:18px;
  background:linear-gradient(135deg,#8f4cf1,#b47aff);
  box-shadow:0 14px 28px rgba(143,76,241,.28);
  color:#fff;
}
.menu-toggle{background:rgba(255,255,255,.1);color:#fff;border:1px solid rgba(255,255,255,.14);}

/* Keep logo-only showcases clean inside purple sections */
.logo-stage{background:radial-gradient(circle at 50% 38%,rgba(190,140,255,.26),rgba(255,255,255,.08) 52%,rgba(255,255,255,.03));border:1px solid rgba(255,255,255,.16);}
.logo-stage img{filter:drop-shadow(0 20px 38px rgba(12,0,18,.35));}

/* Hero: cleaner, more premium single-interface look */
.hero-section{min-height:calc(100vh - 88px);display:flex;align-items:center;padding:72px 0;background:linear-gradient(90deg,rgba(9,0,15,.98) 0%,rgba(17,0,25,.96) 32%,rgba(20,0,29,.86) 50%,rgba(19,0,28,.58) 68%,rgba(16,0,24,.22) 100%),url('../img/main_blend.png') right bottom/auto 100% no-repeat,radial-gradient(circle at 80% 45%,rgba(154,73,255,.20),transparent 34%),linear-gradient(135deg,#0d0013,#1c0228);}
.hero-home-grid{grid-template-columns:minmax(310px,720px) 1fr;}
.hero-home-grid .hero-visual{display:none;}
.hero-copy h1{font-size:clamp(2.35rem,5.2vw,4.75rem);max-width:760px;}
.hero-copy p{max-width:650px;}

/* Service cards: image-led premium cards */
.service-grid-extended{grid-template-columns:repeat(4,minmax(0,1fr));}
.service-card{background:linear-gradient(180deg,rgba(255,255,255,.11),rgba(255,255,255,.045));}
.service-thumb{aspect-ratio:16/9;border-radius:28px 28px 0 0;}
.service-card-body{min-height:245px;display:flex;flex-direction:column;}
.service-card h3{margin-top:2px;}

/* Portfolio: prominent corporate presentation */
#portfolio.dark-section{background:radial-gradient(circle at 18% 12%,rgba(190,140,255,.23),transparent 28%),radial-gradient(circle at 82% 18%,rgba(255,255,255,.08),transparent 25%),linear-gradient(135deg,#100018 0%,#1d0429 48%,#100017 100%);}
#portfolio .section-head{max-width:980px;margin-bottom:46px;}
#portfolio .section-head h2{font-size:clamp(2.3rem,5vw,4.4rem);}
.portfolio-card-grid{gap:30px;}
#portfolio .portfolio-card-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.portfolio-card{
  background:linear-gradient(160deg,rgba(255,255,255,.13),rgba(255,255,255,.055));
  border-color:rgba(255,255,255,.16);
  min-height:100%;
}
.portfolio-thumb{aspect-ratio:16/11;border-radius:30px 30px 0 0;}
.portfolio-thumb::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,0,18,.05) 30%,rgba(11,0,18,.72));z-index:2;pointer-events:none;}
.portfolio-copy{padding:24px 25px 28px;}
.portfolio-copy h3{font-size:1.7rem;}
.portfolio-copy .tag{background:rgba(255,255,255,.12);color:#fff;border:1px solid rgba(255,255,255,.18);}
.portfolio-copy .text-link{color:#e5caff;}
.portfolio-page-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
.portfolio-page-grid .portfolio-card{background:#fff;color:var(--dark);box-shadow:0 22px 48px rgba(48,28,77,.14);}
.portfolio-page-grid .portfolio-copy p{color:#5d486f;}
.portfolio-page-grid .text-link{color:var(--violet-3);}

/* Portfolio detail pages: image right, details left, corporate split */
.inner-hero.service-page-hero{padding:90px 0;background:radial-gradient(circle at 82% 18%,rgba(190,140,255,.22),transparent 30%),linear-gradient(90deg,#120019 0%,#210735 48%,#100018 100%);}
.service-detail-grid{grid-template-columns:.82fr 1.18fr;gap:48px;}
.service-detail-visual .image-card{min-height:470px;border-radius:36px;border:1px solid rgba(255,255,255,.16);}
.service-detail-copy{align-self:center;}
.service-detail-copy h1{font-size:clamp(2.2rem,4.8vw,4rem);}

/* Contact/social interface */
.social-card{position:relative;overflow:hidden;}
.social-card::after{content:"";position:absolute;inset:-60% auto auto -30%;width:110px;height:110px;border-radius:50%;background:rgba(190,140,255,.16);transition:.4s ease;}
.social-card:hover::after{transform:scale(2.2);}
.social-card > *{position:relative;z-index:2;}

/* Buttons, animation polish */
.btn{letter-spacing:.01em;}
.reveal-up.is-visible,.reveal-left.is-visible,.reveal-right.is-visible,.reveal-scale.is-visible{transition-duration:.9s;}
.portfolio-card,.service-card,.blog-card,.social-card{will-change:transform;}

@media (max-width:1180px){
  .service-grid-extended{grid-template-columns:repeat(3,1fr);}
  #portfolio .portfolio-card-grid,.portfolio-page-grid{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:920px){
  .site-header .brand-copy strong{font-size:1.25rem;}
  .site-header .brand-copy small{font-size:.68rem;}
  .main-nav{top:86px;background:linear-gradient(160deg,rgba(18,0,26,.98),rgba(48,19,72,.98));border:1px solid rgba(255,255,255,.12);}
  .main-nav a{color:#fff;}
  .hero-section{background:linear-gradient(90deg,rgba(9,0,15,.98),rgba(20,0,30,.86)),url('../img/hero-main.png') center right/cover no-repeat;min-height:auto;}
  .hero-home-grid,.service-detail-grid{grid-template-columns:1fr;}
  .service-detail-grid .service-detail-visual{order:2;}
  .service-detail-grid .service-detail-copy{order:1;}
}
@media (max-width:640px){
  .site-header .logo-shell{width:58px;height:58px;border-radius:18px;}
  .site-header .logo-shell img{width:49px;height:49px;}
  .site-header .brand-copy strong{font-size:1rem;}
  .site-header .brand-copy small{font-size:.58rem;letter-spacing:.16em;}
  .service-grid-extended,#portfolio .portfolio-card-grid,.portfolio-page-grid{grid-template-columns:1fr;}
  .hero-section{padding:64px 0;}
  .hero-copy h1{font-size:2.15rem;}
}
