    :root {
      --red:#ff2b20;
      --red-soft:#ff453a;
      --white:#f5f5f7;
      --soft:#d2d2d7;
      --muted:#86868b;
      --tile:#161617;
      --tile-2:#1c1c1e;
      --line:rgba(255,255,255,.13);
      --max:1180px;
    }
    *{box-sizing:border-box}
    html{scroll-behavior:smooth;background:#000}
    body{margin:0;background:#000;color:var(--white);font-family:"SF Pro Text",-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",Arial,sans-serif;-webkit-font-smoothing:antialiased}
    a{color:inherit;text-decoration:none}
    img{display:block;max-width:100%}
    button{font:inherit}

    .nav{height:56px;position:sticky;top:0;z-index:30;background:rgba(0,0,0,.82);backdrop-filter:saturate(180%) blur(20px);border-bottom:1px solid rgba(255,255,255,.09)}
    .nav-in{width:min(var(--max),calc(100% - 48px));height:100%;margin:auto;display:flex;align-items:center}
    .nav-brand{width:116px;margin-right:auto}
    .nav-brand img{width:100%;height:auto}
    .nav-links{display:flex;align-items:center;gap:30px;color:#d6d6da;font-size:12px;line-height:1}
    .nav-links a{transition:color .15s ease}
    .nav-links a:hover{color:#fff}
    .pill{display:inline-flex;align-items:center;justify-content:center;min-height:40px;padding:10px 21px;border:1px solid var(--red);border-radius:999px;background:var(--red);color:#fff;font-size:15px;line-height:1.2;transition:transform .12s ease,filter .15s ease;cursor:pointer;font-family:inherit}
    .pill.small{min-height:32px;padding:8px 15px;font-size:12px}
    .pill.outline{background:transparent;color:var(--red-soft)}
    .pill:hover{filter:brightness(1.08)}
    .pill:active,.detail-link:active{transform:scale(.95)}
    .actions{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:28px}

    .hero{height:auto;min-height:0;padding:82px 24px 38px;display:flex;flex-direction:column;align-items:center;text-align:center;overflow:hidden}
    .hero-logo{width:236px;height:auto;margin:0 0 64px}
    h1,h2,h3{font-family:"SF Pro Display",-apple-system,BlinkMacSystemFont,"PingFang SC","Helvetica Neue",sans-serif}
    .hero h1{margin:0;font-size:56px;font-weight:600;line-height:1.07;letter-spacing:-.02em}
    .red-square{display:inline-block;width:.42em;height:.42em;margin-left:.18em;background:var(--red);vertical-align:.1em}
    .hero-tagline{margin:20px 0 0;font-size:28px;font-weight:400;line-height:1.2;letter-spacing:.007em}
    .hero-foot{margin-top:92px;color:#626267;font-size:11px;letter-spacing:.18em}
    .manifesto{min-height:560px;padding:110px 24px;display:flex;align-items:center;justify-content:center;text-align:center;background:#f5f5f7;color:#1d1d1f}
    .manifesto-in{width:min(900px,100%)}
    .manifesto h2{margin:0;font-size:44px;font-weight:600;line-height:1.12;letter-spacing:-.015em}
    .manifesto p{margin:24px 0 0;color:#6e6e73;font-size:24px;font-weight:400;line-height:1.52;letter-spacing:0}

    .section{padding:112px 24px}
    .section-in{width:min(var(--max),100%);margin:auto}
    .kicker{margin:0 0 12px;color:var(--red-soft);font-size:14px;font-weight:600;line-height:1.3;letter-spacing:-.01em}
    .section-title{margin:0;font-size:40px;font-weight:600;line-height:1.12;letter-spacing:-.012em}
    .section-lead{margin:17px 0 0;color:var(--muted);font-size:17px;line-height:1.47}

    .services{background:#0b0b0c;padding-bottom:12px}
    .services-head{text-align:center;margin-bottom:52px}
    .service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
    .service-card{min-height:590px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:54px 26px 0;border:1px solid rgba(255,255,255,.08);border-radius:22px;background:var(--tile);overflow:hidden}
    .service-card:nth-child(2){background:var(--tile-2)}
    .service-no{color:#66666b;font-size:12px;letter-spacing:.13em}
    .service-card h3{margin:18px 0 0;font-size:32px;font-weight:600;line-height:1.15;letter-spacing:-.018em}
    .service-card .promise{max-width:310px;margin:13px 0 0;color:var(--soft);font-size:17px;line-height:1.42}
    .detail-link{display:inline-flex;align-items:center;gap:5px;margin-top:22px;color:var(--red-soft);font-size:15px;transition:transform .12s ease}
    .detail-link::after{content:"›";font-size:20px;line-height:.8}
    .media{width:calc(100% + 52px);height:270px;margin-top:auto;overflow:hidden;border-top:1px solid rgba(255,255,255,.08);background:#0d0d0e}
    .media img{width:100%;height:100%;object-fit:cover;filter:saturate(.88)}

    .brands{padding:84px 0 92px;background:#000;overflow:hidden}
    .brands-head{width:min(var(--max),calc(100% - 48px));margin:0 auto 38px;text-align:center}
    .brands-title{margin:0;color:var(--muted);font-size:14px;font-weight:500;letter-spacing:.02em}
    .marquee{position:relative;display:flex;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent)}
    .track{display:flex;flex:none;align-items:center;gap:58px;width:max-content;animation:marquee 34s linear infinite}
    .logo-set{display:flex;flex:none;align-items:center;gap:58px}
    .logo-chip{width:112px;height:50px;display:grid;place-items:center;opacity:.66;filter:grayscale(1);transition:opacity .2s ease,filter .2s ease}
    .logo-chip:hover{opacity:1;filter:grayscale(0)}
    .logo-chip img{max-width:100%;max-height:42px;object-fit:contain}
    @keyframes marquee{to{transform:translateX(calc(-50% - 29px))}}

    .team{background:#f5f5f7;color:#1d1d1f}
    .team .kicker{color:#d72019}
    .team-head{display:grid;grid-template-columns:1.35fr .65fr;gap:80px;align-items:end;margin-bottom:48px}
    .team-head .section-lead{color:#6e6e73;margin:0;font-size:17px}
    .team-group-head{display:flex;align-items:center;gap:18px;margin-bottom:20px}
    .team-group-label{margin:0;color:#6e6e73;font-size:12px;font-weight:600;letter-spacing:.12em;line-height:1.4;white-space:nowrap}
    .team-group-rule{height:1px;flex:1;background:rgba(0,0,0,.12)}
    .team-group-partners{margin-top:48px}
    .team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
    .partners-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
    .partners-grid .person{grid-column:span 2}
    .partners-grid .person:first-child:nth-last-child(2){grid-column:2/span 2}
    .person{background:#fff;border-radius:22px;overflow:hidden;transition:transform .28s cubic-bezier(.16,1,.3,1),box-shadow .28s ease}
    .person-photo{height:370px;overflow:hidden;background:#e6e6e8}
    .person-photo img{width:100%;height:100%;object-fit:cover;object-position:center top}
    .person-photo img.portrait-raised{object-position:center 44%}
    .person-copy{padding:28px 27px 34px}
    .person-name{display:flex;align-items:baseline;gap:10px}
    .person-name h4{margin:0;font-size:26px;font-weight:600;line-height:1.1;letter-spacing:-.02em}
    .person-name span{color:#86868b;font-size:11px;letter-spacing:.13em}
    .person-domain{margin:0 0 11px;color:#d72019;font-size:11px;font-weight:600;letter-spacing:.1em;line-height:1.4}
    .person-role-row{display:flex;align-items:center;justify-content:space-between;gap:18px}
    .person-role{min-height:44px;margin:13px 0 0;color:#424245;font-size:14px;font-weight:600;line-height:1.5}
    .person-social{display:inline-flex;align-items:center;flex:none;margin-top:13px;padding:6px 12px;border:1px solid rgba(215,32,25,.34);border-radius:999px;background:transparent;color:#d72019;font-size:12px;font-weight:600;line-height:1.2;text-decoration:none;cursor:pointer;transition:background .2s ease,color .2s ease,transform .15s ease}
    .person-social:hover,.person-social:focus-visible{background:#d72019;color:#fff;outline:none}
    .person-social:active{transform:scale(.96)}
    .person-bio{margin:19px 0 0;padding-top:18px;border-top:1px solid rgba(0,0,0,.1);color:#6e6e73;font-size:14px;line-height:1.58}
    .team-action{text-align:center;margin-top:38px}
    .team-action .detail-link{color:#d72019}
    @media(hover:hover) and (pointer:fine){.person:hover,.person:focus-within{transform:translateY(-6px);box-shadow:0 18px 38px rgba(29,29,31,.08)}}

    .contact{min-height:650px;padding:110px 24px;display:flex;align-items:center;justify-content:center;text-align:center;background:#000}
    .contact-in{display:flex;flex-direction:column;align-items:center}
    .contact-logo{width:202px;margin-bottom:48px}
    .contact h2{margin:0;font-size:40px;font-weight:600;line-height:1.12;letter-spacing:-.012em}
    .contact-sub{margin:16px 0 0;color:var(--muted);font-size:17px;line-height:1.47}
    .qr-wrap{width:146px;margin-top:34px;padding:9px;background:#f0efeb;border-radius:4px}
    .qr-wrap img{width:100%}
    .contact-label{margin:14px 0 0;color:#d2d2d7;font-size:12px;letter-spacing:.02em}
    footer{padding:30px 24px;border-top:1px solid rgba(255,255,255,.11);color:#6e6e73;font-size:12px;line-height:1.6}
    .footer-in{width:min(var(--max),100%);margin:auto;display:flex;justify-content:space-between;gap:30px}


    .contact-modal[hidden]{display:none}
    .contact-modal{position:fixed;inset:0;z-index:80;display:grid;place-items:center;padding:24px;background:rgba(0,0,0,.68);backdrop-filter:blur(16px)}
    .contact-dialog{position:relative;width:min(420px,100%);padding:42px 34px 34px;border:1px solid rgba(255,255,255,.14);border-radius:22px;background:#171719;text-align:center;box-shadow:0 24px 70px rgba(0,0,0,.5)}
    .contact-dialog h2{margin:0;font-size:28px;line-height:1.2}
    .contact-dialog p{margin:12px 0 0;color:var(--muted);font-size:15px;line-height:1.55}
    .contact-dialog .qr-wrap{margin:28px auto 0}
    .social-dialog{width:min(460px,100%);padding:34px 30px 30px;background:#f5f5f7;color:#1d1d1f}
    .social-dialog .kicker{margin-bottom:8px;color:#d72019}
    .social-dialog p:not(.kicker){color:#6e6e73}
    .social-profile-card{width:min(100%,360px);max-height:68vh;margin:24px auto 0;border:1px solid rgba(0,0,0,.1);border-radius:14px;object-fit:contain;background:#fff}
    .social-dialog .modal-close{background:rgba(0,0,0,.08);color:#1d1d1f}
    .modal-close{position:absolute;top:14px;right:14px;width:34px;height:34px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:21px;line-height:1;cursor:pointer}
    body.modal-open{overflow:hidden}

    @media(max-width:900px){
      .service-grid,.team-grid{grid-template-columns:1fr}
      .partners-grid .person,.partners-grid .person:first-child:nth-last-child(2){grid-column:auto}
      .service-card{min-height:650px}
      .media{height:370px}
      .team-head{grid-template-columns:1fr;gap:24px}
      .person-photo{height:520px}
      .person-photo img.portrait-raised{object-position:center 18%}
    }
    @media(max-width:680px){
      .nav-in{width:calc(100% - 28px)}
      .nav-brand{width:104px}
      .nav-links a:not(.pill){display:none}
      .hero{height:auto;min-height:0;padding:68px 20px 36px}
      .hero-logo{width:196px;margin-bottom:50px}
      .hero h1{font-size:38px}
      .hero-tagline{font-size:23px}
      .manifesto{min-height:500px;padding:82px 20px}
      .manifesto h2{font-size:32px}
      .manifesto p{font-size:20px}
      .section{padding:84px 16px}
      .section-title,.contact h2{font-size:32px}
      .service-card{min-height:570px;padding-top:46px}
      .service-card h3{font-size:29px}
      .media{height:260px}
      .brands{padding:68px 0 74px}
      .logo-chip{width:94px}
      .team-grid{gap:12px}
      .team-group-partners{margin-top:40px}
      .person-photo{height:390px}
      .person-photo img.portrait-raised{object-position:center 17%}
      .social-dialog{padding:32px 18px 18px}
      .social-profile-card{max-height:62vh;margin-top:20px}
      .footer-in{display:block}
    }
    @media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.track{animation:none}.person{transition:none}.person:hover,.person:focus-within{transform:none}}
