:root{--pink:#DB0A5B;--pink-dark:#A30046;--pink-deep:#7b0035;--ink:#22171c;--muted:#6b5b63;--taupe:#524149;--blush:#F0DCDC;--blush-soft:#fff4f7;--white:#fff;--line:rgba(219,10,91,.20);--shadow:0 30px 90px rgba(163,0,70,.24);--radius-large:34px;--radius-medium:22px;--max-width:1160px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:radial-gradient(circle at 18% 0%,rgba(219,10,91,.34),transparent 31rem),radial-gradient(circle at 100% 20%,rgba(163,0,70,.22),transparent 34rem),linear-gradient(180deg,#fff7fa 0%,#fff 34%,#fff1f6 68%,#fff 100%);line-height:1.6}body.menu-open{overflow:hidden}a{color:inherit}.site-header{position:sticky;top:0;z-index:40;width:min(var(--max-width),calc(100% - 40px));margin:0 auto;padding:22px 0;display:flex;align-items:center;justify-content:space-between;transition:padding .18s ease}.site-header.is-scrolled { padding:0; }.site-header:before{content:"";position:absolute;inset:8px -16px;z-index:-1;border:1px solid transparent;border-radius:999px;background:rgba(255,255,255,0);backdrop-filter:blur(0);transition:background .18s ease,border-color .18s ease,box-shadow .18s ease,backdrop-filter .18s ease}.site-header.is-scrolled:before{border-color:rgba(219,10,91,.18);background:rgba(255,247,250,.84);box-shadow:0 18px 50px rgba(163,0,70,.13);backdrop-filter:blur(18px)}.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none;font-size:1.08rem;font-weight:850;letter-spacing:-.04em}.brand-icon { width:80px;height:84px;object-fit:contain; }.site-nav{display:flex;align-items:center;gap:26px;color:var(--pink-dark);font-size:.95rem;font-weight:750}.site-nav a{position:relative;text-decoration:none}.site-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;border-radius:999px;background:var(--pink);transition:right .18s ease}.site-nav a:hover:after{right:0}.menu-button{display:none;border:1px solid var(--line);border-radius:999px;padding:10px 15px;color:var(--ink);background:rgba(255,255,255,.8);font:inherit;font-weight:750}.hero,.section,.site-footer{width:min(var(--max-width),calc(100% - 40px));margin:0 auto}.hero{min-height:82vh;padding:88px 0 80px;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(300px,.84fr);gap:48px;align-items:center}.eyebrow{margin:0 0 14px;color:var(--pink);font-size:.78rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1{max-width:860px;margin-bottom:24px;font-size:clamp(3.1rem,8vw,6.9rem);line-height:.93;letter-spacing:-.085em}h2{margin-bottom:18px;font-size:clamp(2.2rem,5vw,4.55rem);line-height:.98;letter-spacing:-.078em}h3{margin-bottom:12px;font-size:1.22rem;line-height:1.15;letter-spacing:-.045em}p{color:var(--muted)}.lead{max-width:720px;font-size:clamp(1.08rem,2vw,1.32rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:34px}.button{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:0 22px;border-radius:999px;text-decoration:none;font-weight:850;transition:transform .16s ease,background .16s ease,border-color .16s ease}.button:hover{transform:translateY(-2px)}.button-primary{color:var(--white);background:linear-gradient(135deg,var(--pink),var(--pink-dark));box-shadow:0 16px 46px rgba(219,10,91,.34)}.button-primary:hover{background:linear-gradient(135deg,var(--pink-dark),var(--pink-deep))}.button-secondary{color:var(--pink-dark);background:rgba(255,255,255,.74);border:1px solid rgba(219,10,91,.25)}.hero-visual{position:relative;min-height:430px;display:grid;place-items:center}.logo-stage{position:relative;z-index:2;width:min(82%,420px);aspect-ratio:1/1;display:grid;place-items:center;border:1px solid rgba(255,255,255,.44);border-radius:48px;background:linear-gradient(145deg,rgba(219,10,91,.94),rgba(163,0,70,.86)),radial-gradient(circle at 30% 20%,rgba(255,255,255,.22),transparent 18rem);box-shadow:var(--shadow);transform:rotate(-3deg)}.logo-stage img { width:64%;max-height:63%;object-fit:contain;filter:brightness(0) invert(1) drop-shadow(0 18px 30px rgba(56,0,26,.35)); }.orb{position:absolute;border-radius:50%;filter:blur(2px)}.orb-one{width:210px;height:210px;top:6%;right:8%;background:rgba(219,10,91,.14)}.orb-two{width:150px;height:150px;bottom:10%;left:6%;background:rgba(82,65,73,.10)}.section{padding:88px 0}.intro{max-width:var(--max-width);padding:56px;border-radius:var(--radius-large);background:linear-gradient(135deg,rgba(219,10,91,.12),rgba(240,220,220,.44)),rgba(255,255,255,.68);box-shadow:0 20px 70px rgba(163,0,70,.10)}.intro p{max-width:1000px;margin-bottom:0;color:var(--ink);font-size:clamp(1.55rem,3.4vw,3rem);line-height:1.16;letter-spacing:-.065em}.section-heading{max-width:760px;margin-bottom:34px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-card{min-height:330px;padding:26px;border:1px solid rgba(219,10,91,.22);border-radius:var(--radius-medium);background:linear-gradient(180deg,rgba(255,255,255,.88),rgba(255,244,247,.72));box-shadow:0 18px 60px rgba(163,0,70,.12);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.service-card:hover,.team-card:hover{transform:translateY(-6px);border-color:rgba(219,10,91,.42);box-shadow:0 28px 80px rgba(163,0,70,.20)}.card-number{display:inline-flex;margin-bottom:36px;color:var(--pink);font-size:.82rem;font-weight:900;letter-spacing:.1em}.competence{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:start}.competence-copy p{max-width:560px}.tag-panel{display:flex;flex-wrap:wrap;gap:10px;padding:28px;border:1px solid rgba(219,10,91,.30);border-radius:var(--radius-large);background:radial-gradient(circle at top left,rgba(255,255,255,.20),transparent 22rem),linear-gradient(145deg,var(--pink),var(--pink-dark));box-shadow:var(--shadow)}.tag-panel span{display:inline-flex;align-items:center;min-height:42px;padding:0 15px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:var(--white);background:rgba(255,255,255,.13);font-weight:800}.team-section{padding-top:96px}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.team-card{padding:28px;border:1px solid rgba(219,10,91,.24);border-radius:var(--radius-large);background:linear-gradient(180deg,rgba(255,255,255,.90),rgba(255,244,247,.82));box-shadow:0 18px 60px rgba(163,0,70,.12);transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}.team-initials{display:grid;place-items:center;width:58px;height:58px;margin-bottom:22px;border-radius:18px;color:var(--white);background:linear-gradient(135deg,var(--pink),var(--pink-dark));font-weight:950;letter-spacing:-.04em;box-shadow:0 14px 34px rgba(219,10,91,.30)}.team-role{margin-top:-6px;color:var(--pink-dark);font-weight:800}.team-card ul{display:grid;gap:9px;margin:22px 0 0;padding:0;list-style:none}.team-card li{position:relative;padding-left:20px;color:var(--taupe);font-size:.95rem}.team-card li:before{content:"";position:absolute;left:0;top:.68em;width:8px;height:8px;border-radius:50%;background:var(--pink)}.workstyle{padding-top:96px}.work-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.work-item{padding:30px;border-left:4px solid var(--pink);border-radius:0 var(--radius-medium) var(--radius-medium) 0;background:linear-gradient(180deg,rgba(219,10,91,.12),rgba(240,220,220,.46))}.proof-section{padding-top:40px}.proof-card{padding:52px;border-radius:var(--radius-large);color:var(--white);background:radial-gradient(circle at top right,rgba(219,10,91,.28),transparent 28rem),var(--taupe);box-shadow:var(--shadow)}.proof-card h2{color:var(--white);max-width:920px}.proof-card p{max-width:760px;color:var(--blush)}.final-cta{padding:62px;margin-bottom:64px;text-align:center;border-radius:var(--radius-large);background:radial-gradient(circle at top,rgba(255,255,255,.22),transparent 32rem),linear-gradient(135deg,var(--pink),var(--pink-dark));box-shadow:var(--shadow)}.final-cta h2{color:var(--white)}.final-cta p{max-width:680px;margin-left:auto;margin-right:auto;color:var(--blush)}.cta-icon { width:266px;height:auto;margin-bottom:-30px;filter:brightness(0) invert(1);opacity:.94; }.site-footer{display:flex;justify-content:space-between;gap:20px;padding:38px 0 52px;color:var(--pink-dark);font-size:.95rem;font-weight:700}.site-footer p{margin:0}.site-footer a{color:var(--pink-dark);text-decoration:none}.site-footer a:hover{color:var(--pink)}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.service-card,.team-card,.reveal{transition:none}.reveal{opacity:1;transform:none}}@media (max-width:1040px){.service-grid{grid-template-columns:1fr 1fr}}@media (max-width:980px){.hero,.competence{grid-template-columns:1fr}.hero{min-height:auto;padding-top:56px}.hero-visual{min-height:320px}.team-grid,.work-grid{grid-template-columns:1fr}.site-nav{gap:18px}}@media (max-width:720px){.site-header,.hero,.section,.site-footer{width:min(100% - 28px,var(--max-width))}.menu-button{display:inline-flex}.site-nav{position:fixed;inset:78px 14px auto;display:grid;gap:4px;padding:16px;border:1px solid var(--line);border-radius:24px;background:rgba(255,255,255,.96);box-shadow:0 24px 60px rgba(82,65,73,.18);transform:translateY(-12px);opacity:0;pointer-events:none;transition:opacity .16s ease,transform .16s ease}body.menu-open .site-nav{opacity:1;pointer-events:auto;transform:translateY(0)}.site-nav a{padding:12px}.site-nav a:after{display:none}h1{font-size:clamp(3rem,16vw,5rem)}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.card-number{margin-bottom:24px}.proof-card,.final-cta{padding:34px 24px}.site-footer{flex-direction:column}}

.hero-visual:before{content:"";position:absolute;width:min(92%,470px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(219,10,91,.42),rgba(219,10,91,.18) 42%,transparent 70%);filter:blur(5px)}
.service-card:nth-child(even){background:linear-gradient(180deg,rgba(219,10,91,.10),rgba(255,255,255,.80))}
.eyebrow.light{color:#ffd9e8}.button-light{color:var(--pink-dark);background:var(--white);box-shadow:0 16px 46px rgba(56,0,26,.20)}
.pink-band{width:100%;max-width:none;padding:96px 0;margin:48px 0 0;background:radial-gradient(circle at 12% 20%,rgba(255,255,255,.24),transparent 26rem),linear-gradient(135deg,var(--pink),var(--pink-dark))}.pink-band-inner{width:min(var(--max-width),calc(100% - 40px));margin:0 auto}.pink-band h2{max-width:820px;color:var(--white)}.pink-band p{max-width:680px;color:#ffe6f0;font-size:1.15rem}
@media(max-width:720px){.intro{padding:30px 24px}.pink-band-inner{width:min(100% - 28px,var(--max-width))}}



/* Company-oriented sections */
.competence-overview { padding-top: 96px; }

.competence-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.competence-card {
  min-height: 360px;
  padding: 26px;
  border: 1px solid rgba(219, 10, 91, 0.22);
  border-radius: var(--radius-medium);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(255, 244, 247, 0.72));
  box-shadow: 0 18px 60px rgba(163, 0, 70, 0.12);
  transition: transform 180ms ease, box-shadow 180ms ease, border-color 180ms ease;
}

.competence-card:nth-child(even) {
  background: linear-gradient(180deg, rgba(219, 10, 91, 0.10), rgba(255, 255, 255, 0.80));
}

.competence-card:hover {
  transform: translateY(-6px);
  border-color: rgba(219, 10, 91, 0.42);
  box-shadow: 0 28px 80px rgba(163, 0, 70, 0.20);
}

.mini-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 22px;
}

.mini-tags span {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  padding: 0 11px;
  border: 1px solid rgba(219, 10, 91, 0.22);
  border-radius: 999px;
  color: var(--pink-dark);
  background: rgba(255, 255, 255, 0.72);
  font-size: 0.86rem;
  font-weight: 800;
}

.contribution {
  display: grid;
  grid-template-columns: 0.95fr 1.05fr;
  gap: 48px;
  align-items: start;
}

.contribution-copy p { max-width: 560px; }
.contribution-list { display: grid; gap: 18px; }
.tech-section { padding-top: 96px; }

.grouped-tags {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 26px;
}

.grouped-tags div {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  align-content: start;
}

.grouped-tags h3 {
  flex-basis: 100%;
  margin: 0 0 4px;
  color: var(--white);
}

@media (max-width: 1040px) {
  .competence-grid,
  .grouped-tags { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 980px) {
  .contribution { grid-template-columns: 1fr; }
}

@media (max-width: 720px) {
  .competence-grid,
  .grouped-tags { grid-template-columns: 1fr; }
  .competence-card { min-height: auto; }
}
