/* Sample smooth periodic curves into compositor-only transform keyframes.
   Different harmonics and durations produce independent, asymmetric drift.
   Linear interpolation between dense samples preserves continuous movement;
   matching values and tangents at the seam prevent a restart jump.
   At rest and with reduced motion, the original Figma geometry is unchanged. */
@media (prefers-reduced-motion: no-preference) {
  #hero .hero-float-one,
  #hero .hero-float-two {
    will-change: transform;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
  }
  #hero .hero-float-one {
    animation-name: hero-float-one;
    animation-duration: 7.1s;
  }
  #hero .hero-float-two {
    animation-name: hero-float-two;
    animation-duration: 9.3s;
  }
}

@keyframes hero-float-one {
  0% { transform: translate3d(0px, 0px, 0) rotate(0deg) scale(1.0000); }
  0.6250% { transform: translate3d(3.6949px, 0.2321px, 0) rotate(0.1020deg) scale(1.0000); }
  1.2500% { transform: translate3d(7.3890px, 0.5396px, 0) rotate(0.2038deg) scale(1.0001); }
  1.8750% { transform: translate3d(11.0710px, 0.9277px, 0) rotate(0.3049deg) scale(1.0002); }
  2.5000% { transform: translate3d(14.7294px, 1.4003px, 0) rotate(0.4050deg) scale(1.0004); }
  3.1250% { transform: translate3d(18.3530px, 1.9606px, 0) rotate(0.5039deg) scale(1.0006); }
  3.7500% { transform: translate3d(21.9309px, 2.6103px, 0) rotate(0.6012deg) scale(1.0008); }
  4.3750% { transform: translate3d(25.4521px, 3.3505px, 0) rotate(0.6966deg) scale(1.0011); }
  5.0000% { transform: translate3d(28.9062px, 4.1809px, 0) rotate(0.7898deg) scale(1.0015); }
  5.6250% { transform: translate3d(32.2831px, 5.1004px, 0) rotate(0.8807deg) scale(1.0018); }
  6.2500% { transform: translate3d(35.5729px, 6.1069px, 0) rotate(0.9688deg) scale(1.0023); }
  6.8750% { transform: translate3d(38.7664px, 7.1975px, 0) rotate(1.0539deg) scale(1.0027); }
  7.5000% { transform: translate3d(41.8546px, 8.3681px, 0) rotate(1.1358deg) scale(1.0032); }
  8.1250% { transform: translate3d(44.8293px, 9.6143px, 0) rotate(1.2143deg) scale(1.0038); }
  8.7500% { transform: translate3d(47.6825px, 10.9306px, 0) rotate(1.2892deg) scale(1.0043); }
  9.3750% { transform: translate3d(50.4071px, 12.3113px, 0) rotate(1.3602deg) scale(1.0049); }
  10.0000% { transform: translate3d(52.9965px, 13.7498px, 0) rotate(1.4272deg) scale(1.0056); }
  10.6250% { transform: translate3d(55.4445px, 15.2393px, 0) rotate(1.4900deg) scale(1.0063); }
  11.2500% { transform: translate3d(57.7460px, 16.7727px, 0) rotate(1.5485deg) scale(1.0070); }
  11.8750% { transform: translate3d(59.8961px, 18.3425px, 0) rotate(1.6026deg) scale(1.0077); }
  12.5000% { transform: translate3d(61.8909px, 19.9411px, 0) rotate(1.6521deg) scale(1.0084); }
  13.1250% { transform: translate3d(63.7271px, 21.5610px, 0) rotate(1.6970deg) scale(1.0092); }
  13.7500% { transform: translate3d(65.4020px, 23.1946px, 0) rotate(1.7371deg) scale(1.0100); }
  14.3750% { transform: translate3d(66.9139px, 24.8343px, 0) rotate(1.7726deg) scale(1.0108); }
  15.0000% { transform: translate3d(68.2615px, 26.4729px, 0) rotate(1.8033deg) scale(1.0117); }
  15.6250% { transform: translate3d(69.4442px, 28.1034px, 0) rotate(1.8292deg) scale(1.0125); }
  16.2500% { transform: translate3d(70.4623px, 29.7190px, 0) rotate(1.8504deg) scale(1.0134); }
  16.8750% { transform: translate3d(71.3166px, 31.3133px, 0) rotate(1.8669deg) scale(1.0143); }
  17.5000% { transform: translate3d(72.0087px, 32.8804px, 0) rotate(1.8788deg) scale(1.0152); }
  18.1250% { transform: translate3d(72.5408px, 34.4147px, 0) rotate(1.8860deg) scale(1.0161); }
  18.7500% { transform: translate3d(72.9155px, 35.9112px, 0) rotate(1.8888deg) scale(1.0170); }
  19.3750% { transform: translate3d(73.1362px, 37.3652px, 0) rotate(1.8872deg) scale(1.0179); }
  20.0000% { transform: translate3d(73.2069px, 38.7726px, 0) rotate(1.8813deg) scale(1.0188); }
  20.6250% { transform: translate3d(73.1321px, 40.1297px, 0) rotate(1.8713deg) scale(1.0197); }
  21.2500% { transform: translate3d(72.9167px, 41.4333px, 0) rotate(1.8573deg) scale(1.0206); }
  21.8750% { transform: translate3d(72.5660px, 42.6806px, 0) rotate(1.8395deg) scale(1.0216); }
  22.5000% { transform: translate3d(72.0859px, 43.8692px, 0) rotate(1.8181deg) scale(1.0225); }
  23.1250% { transform: translate3d(71.4826px, 44.9971px, 0) rotate(1.7933deg) scale(1.0234); }
  23.7500% { transform: translate3d(70.7626px, 46.0624px, 0) rotate(1.7652deg) scale(1.0242); }
  24.3750% { transform: translate3d(69.9327px, 47.0638px, 0) rotate(1.7340deg) scale(1.0251); }
  25.0000% { transform: translate3d(69.0000px, 48.0000px, 0) rotate(1.7000deg) scale(1.0260); }
  25.6250% { transform: translate3d(67.9717px, 48.8699px, 0) rotate(1.6634deg) scale(1.0269); }
  26.2500% { transform: translate3d(66.8551px, 49.6725px, 0) rotate(1.6244deg) scale(1.0277); }
  26.8750% { transform: translate3d(65.6579px, 50.4068px, 0) rotate(1.5832deg) scale(1.0285); }
  27.5000% { transform: translate3d(64.3874px, 51.0720px, 0) rotate(1.5400deg) scale(1.0293); }
  28.1250% { transform: translate3d(63.0514px, 51.6669px, 0) rotate(1.4951deg) scale(1.0301); }
  28.7500% { transform: translate3d(61.6572px, 52.1905px, 0) rotate(1.4487deg) scale(1.0309); }
  29.3750% { transform: translate3d(60.2123px, 52.6414px, 0) rotate(1.4010deg) scale(1.0317); }
  30.0000% { transform: translate3d(58.7241px, 53.0183px, 0) rotate(1.3523deg) scale(1.0324); }
  30.6250% { transform: translate3d(57.1995px, 53.3193px, 0) rotate(1.3027deg) scale(1.0331); }
  31.2500% { transform: translate3d(55.6456px, 53.5425px, 0) rotate(1.2524deg) scale(1.0338); }
  31.8750% { transform: translate3d(54.0690px, 53.6856px, 0) rotate(1.2017deg) scale(1.0345); }
  32.5000% { transform: translate3d(52.4761px, 53.7462px, 0) rotate(1.1507deg) scale(1.0352); }
  33.1250% { transform: translate3d(50.8729px, 53.7213px, 0) rotate(1.0996deg) scale(1.0358); }
  33.7500% { transform: translate3d(49.2651px, 53.6081px, 0) rotate(1.0485deg) scale(1.0364); }
  34.3750% { transform: translate3d(47.6580px, 53.4030px, 0) rotate(0.9978deg) scale(1.0370); }
  35.0000% { transform: translate3d(46.0566px, 53.1025px, 0) rotate(0.9474deg) scale(1.0375); }
  35.6250% { transform: translate3d(44.4654px, 52.7029px, 0) rotate(0.8975deg) scale(1.0381); }
  36.2500% { transform: translate3d(42.8883px, 52.2003px, 0) rotate(0.8482deg) scale(1.0386); }
  36.8750% { transform: translate3d(41.3289px, 51.5907px, 0) rotate(0.7997deg) scale(1.0391); }
  37.5000% { transform: translate3d(39.7904px, 50.8701px, 0) rotate(0.7521deg) scale(1.0396); }
  38.1250% { transform: translate3d(38.2752px, 50.0344px, 0) rotate(0.7053deg) scale(1.0400); }
  38.7500% { transform: translate3d(36.7856px, 49.0799px, 0) rotate(0.6596deg) scale(1.0404); }
  39.3750% { transform: translate3d(35.3231px, 48.0028px, 0) rotate(0.6149deg) scale(1.0408); }
  40.0000% { transform: translate3d(33.8889px, 46.7998px, 0) rotate(0.5713deg) scale(1.0412); }
  40.6250% { transform: translate3d(32.4836px, 45.4678px, 0) rotate(0.5287deg) scale(1.0415); }
  41.2500% { transform: translate3d(31.1073px, 44.0043px, 0) rotate(0.4873deg) scale(1.0419); }
  41.8750% { transform: translate3d(29.7597px, 42.4072px, 0) rotate(0.4470deg) scale(1.0421); }
  42.5000% { transform: translate3d(28.4402px, 40.6751px, 0) rotate(0.4077deg) scale(1.0424); }
  43.1250% { transform: translate3d(27.1474px, 38.8073px, 0) rotate(0.3695deg) scale(1.0427); }
  43.7500% { transform: translate3d(25.8798px, 36.8038px, 0) rotate(0.3324deg) scale(1.0429); }
  44.3750% { transform: translate3d(24.6354px, 34.6657px, 0) rotate(0.2961deg) scale(1.0431); }
  45.0000% { transform: translate3d(23.4119px, 32.3946px, 0) rotate(0.2608deg) scale(1.0433); }
  45.6250% { transform: translate3d(22.2065px, 29.9934px, 0) rotate(0.2263deg) scale(1.0435); }
  46.2500% { transform: translate3d(21.0164px, 27.4660px, 0) rotate(0.1926deg) scale(1.0436); }
  46.8750% { transform: translate3d(19.8382px, 24.8172px, 0) rotate(0.1594deg) scale(1.0437); }
  47.5000% { transform: translate3d(18.6685px, 22.0530px, 0) rotate(0.1269deg) scale(1.0438); }
  48.1250% { transform: translate3d(17.5037px, 19.1805px, 0) rotate(0.0948deg) scale(1.0439); }
  48.7500% { transform: translate3d(16.3399px, 16.2078px, 0) rotate(0.0630deg) scale(1.0440); }
  49.3750% { transform: translate3d(15.1734px, 13.1442px, 0) rotate(0.0314deg) scale(1.0440); }
  50.0000% { transform: translate3d(14.0000px, 10.0000px, 0) rotate(0deg) scale(1.0440); }
  50.6250% { transform: translate3d(12.8158px, 6.7864px, 0) rotate(-0.0314deg) scale(1.0440); }
  51.2500% { transform: translate3d(11.6169px, 3.5159px, 0) rotate(-0.0630deg) scale(1.0440); }
  51.8750% { transform: translate3d(10.3993px, 0.2014px, 0) rotate(-0.0948deg) scale(1.0439); }
  52.5000% { transform: translate3d(9.1592px, -3.1430px, 0) rotate(-0.1269deg) scale(1.0438); }
  53.1250% { transform: translate3d(7.8928px, -6.5025px, 0) rotate(-0.1594deg) scale(1.0437); }
  53.7500% { transform: translate3d(6.5968px, -9.8619px, 0) rotate(-0.1926deg) scale(1.0436); }
  54.3750% { transform: translate3d(5.2679px, -13.2054px, 0) rotate(-0.2263deg) scale(1.0435); }
  55.0000% { transform: translate3d(3.9029px, -16.5167px, 0) rotate(-0.2608deg) scale(1.0433); }
  55.6250% { transform: translate3d(2.4993px, -19.7794px, 0) rotate(-0.2961deg) scale(1.0431); }
  56.2500% { transform: translate3d(1.0545px, -22.9770px, 0) rotate(-0.3324deg) scale(1.0429); }
  56.8750% { transform: translate3d(-0.4334px, -26.0929px, 0) rotate(-0.3695deg) scale(1.0427); }
  57.5000% { transform: translate3d(-1.9661px, -29.1107px, 0) rotate(-0.4077deg) scale(1.0424); }
  58.1250% { transform: translate3d(-3.5448px, -32.0146px, 0) rotate(-0.4470deg) scale(1.0421); }
  58.7500% { transform: translate3d(-5.1703px, -34.7889px, 0) rotate(-0.4873deg) scale(1.0419); }
  59.3750% { transform: translate3d(-6.8430px, -37.4187px, 0) rotate(-0.5287deg) scale(1.0415); }
  60.0000% { transform: translate3d(-8.5627px, -39.8899px, 0) rotate(-0.5713deg) scale(1.0412); }
  60.6250% { transform: translate3d(-10.3287px, -42.1894px, 0) rotate(-0.6149deg) scale(1.0408); }
  61.2500% { transform: translate3d(-12.1399px, -44.3048px, 0) rotate(-0.6596deg) scale(1.0404); }
  61.8750% { transform: translate3d(-13.9947px, -46.2253px, 0) rotate(-0.7053deg) scale(1.0400); }
  62.5000% { transform: translate3d(-15.8909px, -47.9411px, 0) rotate(-0.7521deg) scale(1.0396); }
  63.1250% { transform: translate3d(-17.8257px, -49.4439px, 0) rotate(-0.7997deg) scale(1.0391); }
  63.7500% { transform: translate3d(-19.7960px, -50.7267px, 0) rotate(-0.8482deg) scale(1.0386); }
  64.3750% { transform: translate3d(-21.7981px, -51.7844px, 0) rotate(-0.8975deg) scale(1.0381); }
  65.0000% { transform: translate3d(-23.8277px, -52.6131px, 0) rotate(-0.9474deg) scale(1.0375); }
  65.6250% { transform: translate3d(-25.8801px, -53.2108px, 0) rotate(-0.9978deg) scale(1.0370); }
  66.2500% { transform: translate3d(-27.9501px, -53.5772px, 0) rotate(-1.0485deg) scale(1.0364); }
  66.8750% { transform: translate3d(-30.0322px, -53.7136px, 0) rotate(-1.0996deg) scale(1.0358); }
  67.5000% { transform: translate3d(-32.1202px, -53.6230px, 0) rotate(-1.1507deg) scale(1.0352); }
  68.1250% { transform: translate3d(-34.2078px, -53.3101px, 0) rotate(-1.2017deg) scale(1.0345); }
  68.7500% { transform: translate3d(-36.2880px, -52.7812px, 0) rotate(-1.2524deg) scale(1.0338); }
  69.3750% { transform: translate3d(-38.3539px, -52.0442px, 0) rotate(-1.3027deg) scale(1.0331); }
  70.0000% { transform: translate3d(-40.3978px, -51.1084px, 0) rotate(-1.3523deg) scale(1.0324); }
  70.6250% { transform: translate3d(-42.4122px, -49.9847px, 0) rotate(-1.4010deg) scale(1.0317); }
  71.2500% { transform: translate3d(-44.3890px, -48.6850px, 0) rotate(-1.4487deg) scale(1.0309); }
  71.8750% { transform: translate3d(-46.3201px, -47.2226px, 0) rotate(-1.4951deg) scale(1.0301); }
  72.5000% { transform: translate3d(-48.1974px, -45.6119px, 0) rotate(-1.5400deg) scale(1.0293); }
  73.1250% { transform: translate3d(-50.0124px, -43.8680px, 0) rotate(-1.5832deg) scale(1.0285); }
  73.7500% { transform: translate3d(-51.7567px, -42.0069px, 0) rotate(-1.6244deg) scale(1.0277); }
  74.3750% { transform: translate3d(-53.4220px, -40.0453px, 0) rotate(-1.6634deg) scale(1.0269); }
  75.0000% { transform: translate3d(-55.0000px, -38.0000px, 0) rotate(-1.7000deg) scale(1.0260); }
  75.6250% { transform: translate3d(-56.4824px, -35.8884px, 0) rotate(-1.7340deg) scale(1.0251); }
  76.2500% { transform: translate3d(-57.8610px, -33.7280px, 0) rotate(-1.7652deg) scale(1.0242); }
  76.8750% { transform: translate3d(-59.1281px, -31.5359px, 0) rotate(-1.7933deg) scale(1.0234); }
  77.5000% { transform: translate3d(-60.2760px, -29.3293px, 0) rotate(-1.8181deg) scale(1.0225); }
  78.1250% { transform: translate3d(-61.2973px, -27.1249px, 0) rotate(-1.8395deg) scale(1.0216); }
  78.7500% { transform: translate3d(-62.1849px, -24.9388px, 0) rotate(-1.8573deg) scale(1.0206); }
  79.3750% { transform: translate3d(-62.9323px, -22.7865px, 0) rotate(-1.8713deg) scale(1.0197); }
  80.0000% { transform: translate3d(-63.5332px, -20.6824px, 0) rotate(-1.8813deg) scale(1.0188); }
  80.6250% { transform: translate3d(-63.9819px, -18.6402px, 0) rotate(-1.8872deg) scale(1.0179); }
  81.2500% { transform: translate3d(-64.2730px, -16.6724px, 0) rotate(-1.8888deg) scale(1.0170); }
  81.8750% { transform: translate3d(-64.4020px, -14.7902px, 0) rotate(-1.8860deg) scale(1.0161); }
  82.5000% { transform: translate3d(-64.3646px, -13.0035px, 0) rotate(-1.8788deg) scale(1.0152); }
  83.1250% { transform: translate3d(-64.1573px, -11.3210px, 0) rotate(-1.8669deg) scale(1.0143); }
  83.7500% { transform: translate3d(-63.7773px, -9.7498px, 0) rotate(-1.8504deg) scale(1.0134); }
  84.3750% { transform: translate3d(-63.2222px, -8.2956px, 0) rotate(-1.8292deg) scale(1.0125); }
  85.0000% { transform: translate3d(-62.4905px, -6.9624px, 0) rotate(-1.8033deg) scale(1.0117); }
  85.6250% { transform: translate3d(-61.5812px, -5.7529px, 0) rotate(-1.7726deg) scale(1.0108); }
  86.2500% { transform: translate3d(-60.4943px, -4.6682px, 0) rotate(-1.7371deg) scale(1.0100); }
  86.8750% { transform: translate3d(-59.2303px, -3.7079px, 0) rotate(-1.6970deg) scale(1.0092); }
  87.5000% { transform: translate3d(-57.7904px, -2.8701px, 0) rotate(-1.6521deg) scale(1.0084); }
  88.1250% { transform: translate3d(-56.1766px, -2.1515px, 0) rotate(-1.6026deg) scale(1.0077); }
  88.7500% { transform: translate3d(-54.3916px, -1.5477px, 0) rotate(-1.5485deg) scale(1.0070); }
  89.3750% { transform: translate3d(-52.4390px, -1.0527px, 0) rotate(-1.4900deg) scale(1.0063); }
  90.0000% { transform: translate3d(-50.3227px, -0.6596px, 0) rotate(-1.4272deg) scale(1.0056); }
  90.6250% { transform: translate3d(-48.0477px, -0.3604px, 0) rotate(-1.3602deg) scale(1.0049); }
  91.2500% { transform: translate3d(-45.6195px, -0.1460px, 0) rotate(-1.2892deg) scale(1.0043); }
  91.8750% { transform: translate3d(-43.0442px, -0.0068px, 0) rotate(-1.2143deg) scale(1.0038); }
  92.5000% { transform: translate3d(-40.3287px, 0.0676px, 0) rotate(-1.1358deg) scale(1.0032); }
  93.1250% { transform: translate3d(-37.4804px, 0.0881px, 0) rotate(-1.0539deg) scale(1.0027); }
  93.7500% { transform: translate3d(-34.5072px, 0.0662px, 0) rotate(-0.9688deg) scale(1.0023); }
  94.3750% { transform: translate3d(-31.4178px, 0.0134px, 0) rotate(-0.8807deg) scale(1.0018); }
  95.0000% { transform: translate3d(-28.2210px, -0.0587px, 0) rotate(-0.7898deg) scale(1.0015); }
  95.6250% { transform: translate3d(-24.9265px, -0.1385px, 0) rotate(-0.6966deg) scale(1.0011); }
  96.2500% { transform: translate3d(-21.5440px, -0.2144px, 0) rotate(-0.6012deg) scale(1.0008); }
  96.8750% { transform: translate3d(-18.0840px, -0.2752px, 0) rotate(-0.5039deg) scale(1.0006); }
  97.5000% { transform: translate3d(-14.5570px, -0.3104px, 0) rotate(-0.4050deg) scale(1.0004); }
  98.1250% { transform: translate3d(-10.9739px, -0.3096px, 0) rotate(-0.3049deg) scale(1.0002); }
  98.7500% { transform: translate3d(-7.3458px, -0.2633px, 0) rotate(-0.2038deg) scale(1.0001); }
  99.3750% { transform: translate3d(-3.6841px, -0.1628px, 0) rotate(-0.1020deg) scale(1.0000); }
  100.0000% { transform: translate3d(0px, 0px, 0) rotate(0deg) scale(1.0000); }
}

@keyframes hero-float-two {
  0% { transform: translate3d(0.0000px, 0px, 0) rotate(0deg) scale(1.0000); }
  0.6250% { transform: translate3d(-1.2770px, 3.1367px, 0) rotate(-0.0354deg) scale(1.0000); }
  1.2500% { transform: translate3d(-2.5337px, 6.2562px, 0) rotate(-0.0714deg) scale(1.0001); }
  1.8750% { transform: translate3d(-3.7844px, 9.3476px, 0) rotate(-0.1084deg) scale(1.0003); }
  2.5000% { transform: translate3d(-5.0434px, 12.4000px, 0) rotate(-0.1469deg) scale(1.0006); }
  3.1250% { transform: translate3d(-6.3241px, 15.4029px, 0) rotate(-0.1875deg) scale(1.0009); }
  3.7500% { transform: translate3d(-7.6397px, 18.3458px, 0) rotate(-0.2305deg) scale(1.0013); }
  4.3750% { transform: translate3d(-9.0016px, 21.2186px, 0) rotate(-0.2763deg) scale(1.0018); }
  5.0000% { transform: translate3d(-10.4209px, 24.0114px, 0) rotate(-0.3253deg) scale(1.0023); }
  5.6250% { transform: translate3d(-11.9068px, 26.7148px, 0) rotate(-0.3778deg) scale(1.0028); }
  6.2500% { transform: translate3d(-13.4670px, 29.3198px, 0) rotate(-0.4341deg) scale(1.0035); }
  6.8750% { transform: translate3d(-15.1078px, 31.8178px, 0) rotate(-0.4942deg) scale(1.0041); }
  7.5000% { transform: translate3d(-16.8333px, 34.2009px, 0) rotate(-0.5583deg) scale(1.0048); }
  8.1250% { transform: translate3d(-18.6462px, 36.4614px, 0) rotate(-0.6264deg) scale(1.0056); }
  8.7500% { transform: translate3d(-20.5468px, 38.5926px, 0) rotate(-0.6985deg) scale(1.0063); }
  9.3750% { transform: translate3d(-22.5339px, 40.5881px, 0) rotate(-0.7744deg) scale(1.0071); }
  10.0000% { transform: translate3d(-24.6037px, 42.4422px, 0) rotate(-0.8539deg) scale(1.0079); }
  10.6250% { transform: translate3d(-26.7511px, 44.1499px, 0) rotate(-0.9368deg) scale(1.0088); }
  11.2500% { transform: translate3d(-28.9686px, 45.7069px, 0) rotate(-1.0228deg) scale(1.0096); }
  11.8750% { transform: translate3d(-31.2473px, 47.1097px, 0) rotate(-1.1114deg) scale(1.0104); }
  12.5000% { transform: translate3d(-33.5761px, 48.3553px, 0) rotate(-1.2021deg) scale(1.0113); }
  13.1250% { transform: translate3d(-35.9428px, 49.4416px, 0) rotate(-1.2944deg) scale(1.0121); }
  13.7500% { transform: translate3d(-38.3334px, 50.3672px, 0) rotate(-1.3879deg) scale(1.0129); }
  14.3750% { transform: translate3d(-40.7329px, 51.1312px, 0) rotate(-1.4817deg) scale(1.0137); }
  15.0000% { transform: translate3d(-43.1252px, 51.7339px, 0) rotate(-1.5753deg) scale(1.0145); }
  15.6250% { transform: translate3d(-45.4934px, 52.1758px, 0) rotate(-1.6681deg) scale(1.0153); }
  16.2500% { transform: translate3d(-47.8197px, 52.4586px, 0) rotate(-1.7592deg) scale(1.0160); }
  16.8750% { transform: translate3d(-50.0863px, 52.5842px, 0) rotate(-1.8479deg) scale(1.0167); }
  17.5000% { transform: translate3d(-52.2753px, 52.5556px, 0) rotate(-1.9337deg) scale(1.0174); }
  18.1250% { transform: translate3d(-54.3685px, 52.3761px, 0) rotate(-2.0157deg) scale(1.0181); }
  18.7500% { transform: translate3d(-56.3483px, 52.0500px, 0) rotate(-2.0932deg) scale(1.0187); }
  19.3750% { transform: translate3d(-58.1978px, 51.5819px, 0) rotate(-2.1657deg) scale(1.0193); }
  20.0000% { transform: translate3d(-59.9008px, 50.9770px, 0) rotate(-2.2323deg) scale(1.0199); }
  20.6250% { transform: translate3d(-61.4423px, 50.2412px, 0) rotate(-2.2927deg) scale(1.0205); }
  21.2500% { transform: translate3d(-62.8081px, 49.3806px, 0) rotate(-2.3461deg) scale(1.0210); }
  21.8750% { transform: translate3d(-63.9859px, 48.4021px, 0) rotate(-2.3922deg) scale(1.0216); }
  22.5000% { transform: translate3d(-64.9649px, 47.3127px, 0) rotate(-2.4305deg) scale(1.0221); }
  23.1250% { transform: translate3d(-65.7360px, 46.1199px, 0) rotate(-2.4607deg) scale(1.0226); }
  23.7500% { transform: translate3d(-66.2920px, 44.8314px, 0) rotate(-2.4825deg) scale(1.0231); }
  24.3750% { transform: translate3d(-66.6278px, 43.4554px, 0) rotate(-2.4956deg) scale(1.0235); }
  25.0000% { transform: translate3d(-66.7400px, 42.0000px, 0) rotate(-2.5000deg) scale(1.0240); }
  25.6250% { transform: translate3d(-66.6278px, 40.4737px, 0) rotate(-2.4956deg) scale(1.0245); }
  26.2500% { transform: translate3d(-66.2920px, 38.8850px, 0) rotate(-2.4825deg) scale(1.0249); }
  26.8750% { transform: translate3d(-65.7360px, 37.2424px, 0) rotate(-2.4607deg) scale(1.0254); }
  27.5000% { transform: translate3d(-64.9649px, 35.5546px, 0) rotate(-2.4305deg) scale(1.0259); }
  28.1250% { transform: translate3d(-63.9859px, 33.8301px, 0) rotate(-2.3922deg) scale(1.0264); }
  28.7500% { transform: translate3d(-62.8081px, 32.0774px, 0) rotate(-2.3461deg) scale(1.0270); }
  29.3750% { transform: translate3d(-61.4423px, 30.3047px, 0) rotate(-2.2927deg) scale(1.0275); }
  30.0000% { transform: translate3d(-59.9008px, 28.5202px, 0) rotate(-2.2323deg) scale(1.0281); }
  30.6250% { transform: translate3d(-58.1978px, 26.7317px, 0) rotate(-2.1657deg) scale(1.0287); }
  31.2500% { transform: translate3d(-56.3483px, 24.9469px, 0) rotate(-2.0932deg) scale(1.0293); }
  31.8750% { transform: translate3d(-54.3685px, 23.1730px, 0) rotate(-2.0157deg) scale(1.0299); }
  32.5000% { transform: translate3d(-52.2753px, 21.4170px, 0) rotate(-1.9337deg) scale(1.0306); }
  33.1250% { transform: translate3d(-50.0863px, 19.6854px, 0) rotate(-1.8479deg) scale(1.0313); }
  33.7500% { transform: translate3d(-47.8197px, 17.9843px, 0) rotate(-1.7592deg) scale(1.0320); }
  34.3750% { transform: translate3d(-45.4934px, 16.3194px, 0) rotate(-1.6681deg) scale(1.0327); }
  35.0000% { transform: translate3d(-43.1252px, 14.6957px, 0) rotate(-1.5753deg) scale(1.0335); }
  35.6250% { transform: translate3d(-40.7329px, 13.1179px, 0) rotate(-1.4817deg) scale(1.0343); }
  36.2500% { transform: translate3d(-38.3334px, 11.5902px, 0) rotate(-1.3879deg) scale(1.0351); }
  36.8750% { transform: translate3d(-35.9428px, 10.1160px, 0) rotate(-1.2944deg) scale(1.0359); }
  37.5000% { transform: translate3d(-33.5761px, 8.6985px, 0) rotate(-1.2021deg) scale(1.0367); }
  38.1250% { transform: translate3d(-31.2473px, 7.3399px, 0) rotate(-1.1114deg) scale(1.0376); }
  38.7500% { transform: translate3d(-28.9686px, 6.0423px, 0) rotate(-1.0228deg) scale(1.0384); }
  39.3750% { transform: translate3d(-26.7511px, 4.8068px, 0) rotate(-0.9368deg) scale(1.0392); }
  40.0000% { transform: translate3d(-24.6037px, 3.6341px, 0) rotate(-0.8539deg) scale(1.0401); }
  40.6250% { transform: translate3d(-22.5339px, 2.5244px, 0) rotate(-0.7744deg) scale(1.0409); }
  41.2500% { transform: translate3d(-20.5468px, 1.4773px, 0) rotate(-0.6985deg) scale(1.0417); }
  41.8750% { transform: translate3d(-18.6462px, 0.4917px, 0) rotate(-0.6264deg) scale(1.0424); }
  42.5000% { transform: translate3d(-16.8333px, -0.4338px, 0) rotate(-0.5583deg) scale(1.0432); }
  43.1250% { transform: translate3d(-15.1078px, -1.3011px, 0) rotate(-0.4942deg) scale(1.0439); }
  43.7500% { transform: translate3d(-13.4670px, -2.1129px, 0) rotate(-0.4341deg) scale(1.0445); }
  44.3750% { transform: translate3d(-11.9068px, -2.8720px, 0) rotate(-0.3778deg) scale(1.0452); }
  45.0000% { transform: translate3d(-10.4209px, -3.5818px, 0) rotate(-0.3253deg) scale(1.0457); }
  45.6250% { transform: translate3d(-9.0016px, -4.2460px, 0) rotate(-0.2763deg) scale(1.0462); }
  46.2500% { transform: translate3d(-7.6397px, -4.8688px, 0) rotate(-0.2305deg) scale(1.0467); }
  46.8750% { transform: translate3d(-6.3241px, -5.4546px, 0) rotate(-0.1875deg) scale(1.0471); }
  47.5000% { transform: translate3d(-5.0434px, -6.0081px, 0) rotate(-0.1469deg) scale(1.0474); }
  48.1250% { transform: translate3d(-3.7844px, -6.5341px, 0) rotate(-0.1084deg) scale(1.0477); }
  48.7500% { transform: translate3d(-2.5337px, -7.0379px, 0) rotate(-0.0714deg) scale(1.0479); }
  49.3750% { transform: translate3d(-1.2770px, -7.5248px, 0) rotate(-0.0354deg) scale(1.0480); }
  50.0000% { transform: translate3d(0.0000px, -8.0000px, 0) rotate(0deg) scale(1.0480); }
  50.6250% { transform: translate3d(1.3118px, -8.4691px, 0) rotate(0.0354deg) scale(1.0480); }
  51.2500% { transform: translate3d(2.6725px, -8.9374px, 0) rotate(0.0714deg) scale(1.0479); }
  51.8750% { transform: translate3d(4.0960px, -9.4104px, 0) rotate(0.1084deg) scale(1.0477); }
  52.5000% { transform: translate3d(5.5954px, -9.8934px, 0) rotate(0.1469deg) scale(1.0474); }
  53.1250% { transform: translate3d(7.1828px, -10.3917px, 0) rotate(0.1875deg) scale(1.0471); }
  53.7500% { transform: translate3d(8.8691px, -10.9101px, 0) rotate(0.2305deg) scale(1.0467); }
  54.3750% { transform: translate3d(10.6639px, -11.4536px, 0) rotate(0.2763deg) scale(1.0462); }
  55.0000% { transform: translate3d(12.5752px, -12.0267px, 0) rotate(0.3253deg) scale(1.0457); }
  55.6250% { transform: translate3d(14.6094px, -12.6335px, 0) rotate(0.3778deg) scale(1.0452); }
  56.2500% { transform: translate3d(16.7708px, -13.2781px, 0) rotate(0.4341deg) scale(1.0445); }
  56.8750% { transform: translate3d(19.0620px, -13.9640px, 0) rotate(0.4942deg) scale(1.0439); }
  57.5000% { transform: translate3d(21.4831px, -14.6943px, 0) rotate(0.5583deg) scale(1.0432); }
  58.1250% { transform: translate3d(24.0324px, -15.4717px, 0) rotate(0.6264deg) scale(1.0424); }
  58.7500% { transform: translate3d(26.7058px, -16.2984px, 0) rotate(0.6985deg) scale(1.0417); }
  59.3750% { transform: translate3d(29.4972px, -17.1762px, 0) rotate(0.7744deg) scale(1.0409); }
  60.0000% { transform: translate3d(32.3980px, -18.1062px, 0) rotate(0.8539deg) scale(1.0401); }
  60.6250% { transform: translate3d(35.3979px, -19.0893px, 0) rotate(0.9368deg) scale(1.0392); }
  61.2500% { transform: translate3d(38.4841px, -20.1255px, 0) rotate(1.0228deg) scale(1.0384); }
  61.8750% { transform: translate3d(41.6423px, -21.2145px, 0) rotate(1.1114deg) scale(1.0376); }
  62.5000% { transform: translate3d(44.8561px, -22.3553px, 0) rotate(1.2021deg) scale(1.0367); }
  63.1250% { transform: translate3d(48.1078px, -23.5464px, 0) rotate(1.2944deg) scale(1.0359); }
  63.7500% { transform: translate3d(51.3780px, -24.7858px, 0) rotate(1.3879deg) scale(1.0351); }
  64.3750% { transform: translate3d(54.6462px, -26.0707px, 0) rotate(1.4817deg) scale(1.0343); }
  65.0000% { transform: translate3d(57.8909px, -27.3980px, 0) rotate(1.5753deg) scale(1.0335); }
  65.6250% { transform: translate3d(61.0900px, -28.7639px, 0) rotate(1.6681deg) scale(1.0327); }
  66.2500% { transform: translate3d(64.2207px, -30.1643px, 0) rotate(1.7592deg) scale(1.0320); }
  66.8750% { transform: translate3d(67.2601px, -31.5944px, 0) rotate(1.8479deg) scale(1.0313); }
  67.5000% { transform: translate3d(70.1855px, -33.0490px, 0) rotate(1.9337deg) scale(1.0306); }
  68.1250% { transform: translate3d(72.9742px, -34.5223px, 0) rotate(2.0157deg) scale(1.0299); }
  68.7500% { transform: translate3d(75.6045px, -36.0084px, 0) rotate(2.0932deg) scale(1.0293); }
  69.3750% { transform: translate3d(78.0552px, -37.5007px, 0) rotate(2.1657deg) scale(1.0287); }
  70.0000% { transform: translate3d(80.3066px, -38.9923px, 0) rotate(2.2323deg) scale(1.0281); }
  70.6250% { transform: translate3d(82.3401px, -40.4762px, 0) rotate(2.2927deg) scale(1.0275); }
  71.2500% { transform: translate3d(84.1386px, -41.9450px, 0) rotate(2.3461deg) scale(1.0270); }
  71.8750% { transform: translate3d(85.6873px, -43.3909px, 0) rotate(2.3922deg) scale(1.0264); }
  72.5000% { transform: translate3d(86.9728px, -44.8061px, 0) rotate(2.4305deg) scale(1.0259); }
  73.1250% { transform: translate3d(87.9844px, -46.1827px, 0) rotate(2.4607deg) scale(1.0254); }
  73.7500% { transform: translate3d(88.7132px, -47.5126px, 0) rotate(2.4825deg) scale(1.0249); }
  74.3750% { transform: translate3d(89.1530px, -48.7878px, 0) rotate(2.4956deg) scale(1.0245); }
  75.0000% { transform: translate3d(89.3000px, -50.0000px, 0) rotate(2.5000deg) scale(1.0240); }
  75.6250% { transform: translate3d(89.1530px, -51.1413px, 0) rotate(2.4956deg) scale(1.0235); }
  76.2500% { transform: translate3d(88.7132px, -52.2037px, 0) rotate(2.4825deg) scale(1.0231); }
  76.8750% { transform: translate3d(87.9844px, -53.1796px, 0) rotate(2.4607deg) scale(1.0226); }
  77.5000% { transform: translate3d(86.9728px, -54.0612px, 0) rotate(2.4305deg) scale(1.0221); }
  78.1250% { transform: translate3d(85.6873px, -54.8414px, 0) rotate(2.3922deg) scale(1.0216); }
  78.7500% { transform: translate3d(84.1386px, -55.5131px, 0) rotate(2.3461deg) scale(1.0210); }
  79.3750% { transform: translate3d(82.3401px, -56.0697px, 0) rotate(2.2927deg) scale(1.0205); }
  80.0000% { transform: translate3d(80.3066px, -56.5049px, 0) rotate(2.2323deg) scale(1.0199); }
  80.6250% { transform: translate3d(78.0552px, -56.8130px, 0) rotate(2.1657deg) scale(1.0193); }
  81.2500% { transform: translate3d(75.6045px, -56.9885px, 0) rotate(2.0932deg) scale(1.0187); }
  81.8750% { transform: translate3d(72.9742px, -57.0268px, 0) rotate(2.0157deg) scale(1.0181); }
  82.5000% { transform: translate3d(70.1855px, -56.9236px, 0) rotate(1.9337deg) scale(1.0174); }
  83.1250% { transform: translate3d(67.2601px, -56.6752px, 0) rotate(1.8479deg) scale(1.0167); }
  83.7500% { transform: translate3d(64.2207px, -56.2786px, 0) rotate(1.7592deg) scale(1.0160); }
  84.3750% { transform: translate3d(61.0900px, -55.7313px, 0) rotate(1.6681deg) scale(1.0153); }
  85.0000% { transform: translate3d(57.8909px, -55.0316px, 0) rotate(1.5753deg) scale(1.0145); }
  85.6250% { transform: translate3d(54.6462px, -54.1785px, 0) rotate(1.4817deg) scale(1.0137); }
  86.2500% { transform: translate3d(51.3780px, -53.1716px, 0) rotate(1.3879deg) scale(1.0129); }
  86.8750% { transform: translate3d(48.1078px, -52.0112px, 0) rotate(1.2944deg) scale(1.0121); }
  87.5000% { transform: translate3d(44.8561px, -50.6985px, 0) rotate(1.2021deg) scale(1.0113); }
  88.1250% { transform: translate3d(41.6423px, -49.2351px, 0) rotate(1.1114deg) scale(1.0104); }
  88.7500% { transform: translate3d(38.4841px, -47.6237px, 0) rotate(1.0228deg) scale(1.0096); }
  89.3750% { transform: translate3d(35.3979px, -45.8673px, 0) rotate(0.9368deg) scale(1.0088); }
  90.0000% { transform: translate3d(32.3980px, -43.9700px, 0) rotate(0.8539deg) scale(1.0079); }
  90.6250% { transform: translate3d(29.4972px, -41.9363px, 0) rotate(0.7744deg) scale(1.0071); }
  91.2500% { transform: translate3d(26.7058px, -39.7715px, 0) rotate(0.6985deg) scale(1.0063); }
  91.8750% { transform: translate3d(24.0324px, -37.4815px, 0) rotate(0.6264deg) scale(1.0056); }
  92.5000% { transform: translate3d(21.4831px, -35.0728px, 0) rotate(0.5583deg) scale(1.0048); }
  93.1250% { transform: translate3d(19.0620px, -32.5527px, 0) rotate(0.4942deg) scale(1.0041); }
  93.7500% { transform: translate3d(16.7708px, -29.9287px, 0) rotate(0.4341deg) scale(1.0035); }
  94.3750% { transform: translate3d(14.6094px, -27.2092px, 0) rotate(0.3778deg) scale(1.0028); }
  95.0000% { transform: translate3d(12.5752px, -24.4029px, 0) rotate(0.3253deg) scale(1.0023); }
  95.6250% { transform: translate3d(10.6639px, -21.5189px, 0) rotate(0.2763deg) scale(1.0018); }
  96.2500% { transform: translate3d(8.8691px, -18.5668px, 0) rotate(0.2305deg) scale(1.0013); }
  96.8750% { transform: translate3d(7.1828px, -15.5566px, 0) rotate(0.1875deg) scale(1.0009); }
  97.5000% { transform: translate3d(5.5954px, -12.4985px, 0) rotate(0.1469deg) scale(1.0006); }
  98.1250% { transform: translate3d(4.0960px, -9.4030px, 0) rotate(0.1084deg) scale(1.0003); }
  98.7500% { transform: translate3d(2.6725px, -6.2808px, 0) rotate(0.0714deg) scale(1.0001); }
  99.3750% { transform: translate3d(1.3118px, -3.1428px, 0) rotate(0.0354deg) scale(1.0000); }
  100.0000% { transform: translate3d(0.0000px, 0px, 0) rotate(0deg) scale(1.0000); }
}
.booking-dialog {
  position: fixed; inset: 0; margin: auto; width: min(1100px, calc(100vw - 32px));
  max-width: none; max-height: 90vh; max-height: 90svh; padding: 0;
  background: #111111; color: #E8E8E3; border: 1px solid #2A2A2A;
  border-radius: 8px; overflow: auto; font-family: 'Red Hat Display', sans-serif;
}
.booking-dialog::backdrop { background: rgba(0, 0, 0, .7); }
.booking-dialog-header { display: flex; align-items: center; justify-content: space-between; padding: 16px 20px; }
.booking-dialog-header h2 { margin: 0; font-size: 20px; font-weight: 500; }
.booking-dialog-header button { width: 36px; height: 36px; background: transparent; color: inherit; font-size: 28px; cursor: pointer; }
.booking-dialog-header button:focus-visible { outline: 2px solid #E8E8E3; outline-offset: 2px; }
.booking-dialog-content { min-height: 420px; padding: 0 16px 16px; }
.booking-dialog-content > [role='status'] { padding: 40px 8px; }
@media (max-width: 600px) { .booking-dialog { width: calc(100vw - 16px); } .booking-dialog-content { padding: 0 8px 8px; } }
.letter-3d-swap {
  position: relative;
  display: block;
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
}

.letter-3d-stage {
  position: absolute;
  perspective: 600px;
  perspective-origin: center;
  pointer-events: none;
}

.letter-3d-rotor {
  position: absolute;
  inset: 0;
  display: block;
  transform-style: preserve-3d;
}

.letter-3d-face {
  position: absolute;
  inset: 0;
  display: block;
  backface-visibility: hidden;
  background: #FFFFFF;
  font: inherit;
  color: inherit;
  letter-spacing: inherit;
  white-space: pre;
  text-align: left;
}
/* Scoped to the existing Hero CTA; the resting Figma styles remain intact. */
:is(#hero, .apex-header) .project-button {
  position: relative;
  overflow: hidden;
  isolation: isolate;
  /* Restore the resting background immediately on leave so the circle can
     uncover it using the existing reverse animation. */
  transition: background-color 0s linear 0s;
  --fill-x: 50%;
  --fill-y: 50%;
  --fill-diameter: 0px;
}

:is(#hero, .apex-header) .project-button-fill {
  position: absolute;
  left: var(--fill-x);
  top: var(--fill-y);
  width: var(--fill-diameter);
  height: var(--fill-diameter);
  border-radius: 50%;
  background: #1E1E1E;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 280ms cubic-bezier(0.16, 1, 0.3, 1);
  z-index: 0;
}

:is(#hero, .apex-header) .project-button > .f121 {
  z-index: 1;
  transition: color 280ms ease-out;
}

:is(#hero, .apex-header) .project-button[data-fill-active="true"] .project-button-fill,
:is(#hero, .apex-header) .project-button:focus-visible .project-button-fill {
  transform: translate(-50%, -50%) scale(1);
  transition-duration: 350ms;
}

/* Once the radial reveal has finished, give the clipping container the same
   background. This prevents its light resting color from showing through
   antialiased pixels along the rounded clipping edge. */
:is(#hero, .apex-header) .project-button[data-fill-active="true"],
:is(#hero, .apex-header) .project-button:focus-visible {
  background-color: #1E1E1E;
  transition: background-color 0s linear 350ms;
}

:is(#hero, .apex-header) .project-button[data-fill-active="true"] > .f121,
:is(#hero, .apex-header) .project-button:focus-visible > .f121 {
  color: #FFFFFF;
  transition-duration: 350ms;
}

@media (prefers-reduced-motion: reduce) {
  :is(#hero, .apex-header) .project-button-fill { display: none; }
  :is(#hero, .apex-header) .project-button,
  :is(#hero, .apex-header) .project-button[data-fill-active="true"],
  :is(#hero, .apex-header) .project-button:focus-visible {
    transition: background-color 100ms ease-out;
  }
  :is(#hero, .apex-header) .project-button > .f121,
  :is(#hero, .apex-header) .project-button[data-fill-active="true"] > .f121,
  :is(#hero, .apex-header) .project-button:focus-visible > .f121 { transition-duration: 100ms; }
  :is(#hero, .apex-header) .project-button[data-fill-active="true"],
  :is(#hero, .apex-header) .project-button:focus-visible { background-color: #1E1E1E; }
}

/* Preserve the Works CTA's absolute layout and use it as the clipping container. */
:is(#work .works-all-projects-cta, #contact .final-project-cta) {
  overflow: hidden;
  isolation: isolate;
  background-color: var(--radial-rest-background, #FAFAFC);
  transition: background-color 0s linear 0s;
  --fill-x: 50%;
  --fill-y: 50%;
  --fill-diameter: 0px;
}
:is(#work .works-all-projects-cta, #contact .final-project-cta) > .project-button-fill {
  position: absolute;
  left: var(--fill-x);
  top: var(--fill-y);
  width: var(--fill-diameter);
  height: var(--fill-diameter);
  border-radius: 50%;
  background: #1E1E1E;
  pointer-events: none;
  transform: translate(-50%, -50%) scale(0);
  transition: transform 280ms cubic-bezier(.22, 1, .36, 1);
  z-index: 0;
}
:is(#work .works-all-projects-cta, #contact .final-project-cta) > :is(.f64, .f139) { z-index: 1; }
:is(#work .works-all-projects-cta, #contact .final-project-cta) :is(.f65, .f140) { transition: color 280ms ease-out; }
:is(#work .works-all-projects-cta, #contact .final-project-cta) .f66 img { transition: filter 280ms ease-out; }
:is(#work .works-all-projects-cta, #contact .final-project-cta)[data-fill-active="true"],
:is(#work .works-all-projects-cta, #contact .final-project-cta):focus-visible {
  background-color: #1E1E1E;
  transition: background-color 0s linear 350ms;
}
:is(#work .works-all-projects-cta, #contact .final-project-cta)[data-fill-active="true"] > .project-button-fill,
:is(#work .works-all-projects-cta, #contact .final-project-cta):focus-visible > .project-button-fill {
  transform: translate(-50%, -50%) scale(1);
  transition-duration: 350ms;
}
:is(#work .works-all-projects-cta, #contact .final-project-cta)[data-fill-active="true"] :is(.f65, .f140),
:is(#work .works-all-projects-cta, #contact .final-project-cta):focus-visible :is(.f65, .f140) { color: #FFFFFF; transition-duration: 350ms; }
:is(#work .works-all-projects-cta, #contact .final-project-cta)[data-fill-active="true"] .f66 img,
:is(#work .works-all-projects-cta, #contact .final-project-cta):focus-visible .f66 img { filter: brightness(0) invert(1); transition-duration: 350ms; }
@media (prefers-reduced-motion: reduce) {
  :is(#work .works-all-projects-cta, #contact .final-project-cta) > .project-button-fill { display: none; }
  :is(#work .works-all-projects-cta, #contact .final-project-cta),
  :is(#work .works-all-projects-cta, #contact .final-project-cta)[data-fill-active="true"],
  :is(#work .works-all-projects-cta, #contact .final-project-cta):focus-visible { transition: background-color 100ms ease-out; }
  :is(#work .works-all-projects-cta, #contact .final-project-cta) :is(.f65, .f140),
  :is(#work .works-all-projects-cta, #contact .final-project-cta) .f66 img { transition-duration: 100ms !important; }
}

/* The existing menu swap overlays the radial fill without an opaque face backing. */
:is(#work .works-all-projects-cta, #contact .final-project-cta) .letter-3d-face { background: transparent; }
:is(#work .works-all-projects-cta, #contact .final-project-cta) .works-cta-arrow-swap,
:is(#work .works-all-projects-cta, #contact .final-project-cta) .works-cta-arrow-swap > [data-swap-native] {
  display: block;
  width: 100%;
  height: 100%;
}

#contact .final-project-cta { --radial-rest-background: #E8E8E3; }


/* Final CTA edge coverage: retain the resting divider and button geometry.
   Its section extends 5px below the 120px CTA; cover that tail from the first hover frame. */
#contact .final-project-cta {
  background-clip: border-box;
  transition: background-color 0s linear 0s, border-color 280ms ease-out, box-shadow 280ms ease-out;
}
#contact .final-project-cta[data-fill-active="true"],
#contact .final-project-cta:focus-visible {
  background-color: #1E1E1E;
  border-color: #1E1E1E;
  box-shadow: 0 5px 0 #1E1E1E;
  transition: none;
}
@media (prefers-reduced-motion: reduce) {
  #contact .final-project-cta,
  #contact .final-project-cta[data-fill-active="true"],
  #contact .final-project-cta:focus-visible {
    transition: background-color 100ms ease-out, border-color 100ms ease-out, box-shadow 100ms ease-out;
  }
}


/* No fallback delay, including reduced motion: radial/text transforms remain independent. */
#contact .final-project-cta[data-fill-active="true"],
#contact .final-project-cta:focus-visible { transition: none; }
@font-face {
  font-family: 'Poppins';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/poppins-medium.ttf) format('truetype');
}

:is(#hero, .apex-header) .hero-menu {
  position: relative;
  width: 38px;
  height: 38px;
  flex-shrink: 0;
  z-index: 20;
}

:is(#hero, .apex-header) .hero-menu-trigger {
  display: block;
  padding: 0;
  border: 0;
  cursor: pointer;
}

:is(#hero, .apex-header) .hero-menu-trigger[aria-expanded="true"] {
  background-color: #FFFFFF;
}

:is(#hero, .apex-header) .hero-menu-trigger[aria-expanded="true"] img {
  filter: brightness(0) invert(11.76470588%);
}

:is(#hero, .apex-header) .hero-menu-panel {
  position: absolute;
  right: 0;
  top: calc(100% + 12px);
  width: 380px;
  height: 432px;
  border-radius: 2px;
  overflow: hidden;
  background: #FFFFFF;
  color: #000000;
  backdrop-filter: blur(10px);
  text-align: left;
}

:is(#hero, .apex-header) .hero-menu-links {
  position: absolute;
  left: 24px;
  top: 52px;
  width: 248px;
  display: flex;
  flex-direction: column;
  gap: 20px;
  font-family: 'Red Hat Display', sans-serif;
  font-weight: 600;
  font-size: 28px;
  letter-spacing: -0.177px;
}

:is(#hero, .apex-header) .hero-menu-links a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 32px;
  line-height: 60px;
}

:is(#hero, .apex-header) .hero-menu-cta {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 380px;
  height: 57px;
  border-top: 1px solid #000000;
  padding: 12px 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

:is(#hero, .apex-header) .hero-menu-cta > span:not(.project-button-fill) {
  width: 223px;
  font-family: 'Poppins', sans-serif;
  font-weight: 500;
  font-size: 20px;
  line-height: 23.08px;
  letter-spacing: -0.177px;
}

:is(#hero, .apex-header) .hero-menu-cta {
  overflow: hidden;
  isolation: isolate;
  background-color: #FFFFFF;
  transition: background-color 0s linear 0s;
}

:is(#hero, .apex-header) .hero-menu-cta > span:not(.project-button-fill),
:is(#hero, .apex-header) .hero-menu-cta > img {
  position: relative;
  z-index: 1;
  transition: color 280ms ease-out, filter 280ms ease-out;
}

:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"] .project-button-fill,
:is(#hero, .apex-header) .hero-menu-cta:focus-visible .project-button-fill {
  transform: translate(-50%, -50%) scale(1);
  transition-duration: 350ms;
}

:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"],
:is(#hero, .apex-header) .hero-menu-cta:focus-visible {
  background-color: #1E1E1E;
  transition: background-color 0s linear 350ms;
}

:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"] > span:not(.project-button-fill),
:is(#hero, .apex-header) .hero-menu-cta:focus-visible > span:not(.project-button-fill) {
  color: #FFFFFF;
  transition-duration: 350ms;
}

:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"] > img,
:is(#hero, .apex-header) .hero-menu-cta:focus-visible > img {
  filter: brightness(0) invert(1);
  transition-duration: 350ms;
}

@media (prefers-reduced-motion: reduce) {
  :is(#hero, .apex-header) .hero-menu-cta .project-button-fill { display: none; }
  :is(#hero, .apex-header) .hero-menu-cta,
  :is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"],
  :is(#hero, .apex-header) .hero-menu-cta:focus-visible {
    transition: background-color 100ms ease-out;
  }
  :is(#hero, .apex-header) .hero-menu-cta > span:not(.project-button-fill),
  :is(#hero, .apex-header) .hero-menu-cta > img { transition-duration: 100ms !important; }
}

:is(#hero, .apex-header) .hero-menu-trigger:focus-visible,
:is(#hero, .apex-header) .hero-menu-panel a:focus-visible {
  outline: 2px solid currentColor;
  outline-offset: -4px;
}
:is(#hero, .apex-header) :is(.project-button, .hero-menu-cta) .letter-3d-face { background: transparent; }
:is(#hero, .apex-header) .hero-menu-arrow-swap {
  position: relative;
  z-index: 1;
  width: 32px;
  height: 32px;
  flex-shrink: 0;
}
:is(#hero, .apex-header) .hero-menu-arrow-swap .letter-3d-swap,
:is(#hero, .apex-header) .hero-menu-arrow-swap [data-swap-native] { display: block; width: 100%; height: 100%; }
:is(#hero, .apex-header) .hero-menu-arrow-swap img { transition: filter 280ms ease-out; }
:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"] .hero-menu-arrow-swap img,
:is(#hero, .apex-header) .hero-menu-cta:focus-visible .hero-menu-arrow-swap img {
  filter: brightness(0) invert(1);
  transition-duration: 350ms;
}
@media (prefers-reduced-motion: reduce) {
  :is(#hero, .apex-header) .hero-menu-arrow-swap img { transition-duration: 100ms; }
}
:is(#hero, .apex-header) .hero-menu-arrow-swap { transition: color 280ms ease-out; }
:is(#hero, .apex-header) .hero-menu-cta[data-fill-active="true"] .hero-menu-arrow-swap,
:is(#hero, .apex-header) .hero-menu-cta:focus-visible .hero-menu-arrow-swap { color: #FFFFFF; transition-duration: 350ms; }
.works-project-image { overflow: hidden; isolation: isolate; }
.works-project-hover { position: absolute; inset: 0; z-index: 1; opacity: 0; pointer-events: none; transition: opacity 400ms cubic-bezier(.22, 1, .36, 1); }
.works-project-hover-shade { position: absolute; inset: 0; background: rgba(0, 0, 0, .6); }
.works-project-hover-preview { position: absolute; left: 50%; top: 50%; width: 75.3424657534%; transform: translate(-50%, -50%) scale(1.015); transition: transform 400ms cubic-bezier(.22, 1, .36, 1); }
.works-project-hover-preview img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
@media (hover: hover) and (pointer: fine) {
  .works-project-image:hover .works-project-hover { opacity: 1; }
  .works-project-image:hover .works-project-hover-preview { transform: translate(-50%, -50%) scale(1); }
}
@media (prefers-reduced-motion: reduce) {
  .works-project-hover, .works-project-hover-preview { transition-duration: 0ms; }
}
#process .f28 { isolation: isolate; }
#process .process-step-video {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  object-fit: contain;
  object-position: center;
  pointer-events: none;
}
#process .process-step-indicator {
  position: absolute;
  left: 0;
  top: 0;
  width: 80px;
  height: 430px;
  background: #FFFFFF;
  pointer-events: none;
  z-index: 0;
  transform: translateY(0);
  transition: transform 550ms cubic-bezier(.22, 1, .36, 1);
}
#process [data-process-step] > .f30,
#process [data-process-step] > .f39 {
  background-color: transparent;
  z-index: 1;
}
#process [data-process-step] .f31,
#process [data-process-step] .f40 {
  color: #FFFFFF;
  transition: color 375ms cubic-bezier(.22, 1, .36, 1);
}
#process [data-step-active="true"] .f31,
#process [data-step-active="true"] .f40 {
  color: #1E1E1E;
  transition-delay: 75ms;
}
@media (prefers-reduced-motion: reduce) {
  #process .process-step-indicator,
  #process [data-process-step] .f31,
  #process [data-process-step] .f40 { transition-duration: 0ms; transition-delay: 0ms; }
}
:is(#footer, #apex-footer) .letter-3d-face { background: transparent; }
:is(#footer, #apex-footer) .footer-arrow-swap,
:is(#footer, #apex-footer) .footer-arrow-swap > [data-swap-native] {
  display: block;
  width: 100%;
  height: 100%;
}
:is(#footer, #apex-footer) .f7 > a {
  color: #5C5C5C;
  transition: color 300ms cubic-bezier(0.22, 1, 0.36, 1);
}
:is(#footer, #apex-footer) .f7 > a[data-footer-active="true"] { color: #FFFFFF; }
@media (prefers-reduced-motion: reduce) {
  :is(#footer, #apex-footer) .f7 > a { transition: none; }
}
.footer-wordmark-layer { position: absolute; inset: 0; pointer-events: none; }
.services-sequence-stage {
  position: relative;
  height: 500vh;
  height: calc(var(--section-viewport, 100svh) * 5);
}
.services-sequence-sticky { position: sticky; top: 0; }
#services [data-service-image-frame] {
  overflow: hidden;
  isolation: isolate;
  z-index: 1;
  pointer-events: none;
}
#services .f86,
#services .f90 { z-index: 2; }
#services .f93 { z-index: 3; }
#services .f93 > div { color: #4E4E4E; transition: color 450ms cubic-bezier(0.22, 1, 0.36, 1); }
#services .f93:not([data-active-service]) > div:first-child,
#services .f93[data-active-service="0"] > div:nth-child(1),
#services .f93[data-active-service="1"] > div:nth-child(2),
#services .f93[data-active-service="2"] > div:nth-child(3),
#services .f93[data-active-service="3"] > div:nth-child(4),
#services .f93[data-active-service="4"] > div:nth-child(5) { color: #FFFFFF; }
@media (prefers-reduced-motion: reduce) {
  .services-sequence-stage { height: auto; }
  .services-sequence-sticky { position: static; }
  #services .f93 > div { transition: none; }
}
.portfolio .section-hero,
.portfolio .section-about,
.portfolio .section-services {
  height: 100vh;
  height: var(--section-viewport, 100svh);
}
.portfolio .section-about { min-height: 800px; }
#hero > .f107,
#hero .f108,
#about > .f98,
#services > .f71 { height: 100%; }
#hero .f116 { top: 392px; }

.about-headline-shimmer { --base-color: #CFCFC9; --base-gradient-color: #FFFFFF; }
/* Clip the gradient on each word as well, so its blur filter has a valid paint layer. */
.about-headline-shimmer [data-about-word] {
  background-image: var(--shimmer-background);
  background-size: inherit;
  background-position: calc(var(--shimmer-position) - var(--word-offset, 0px)) center;
  background-repeat: no-repeat;
  background-clip: text;
  -webkit-background-clip: text;
}



/* Preserve the current headline base color after removing its shimmer gradient. */
#about .f101[data-response-stream] { color: #CFCFC9; }

.contact-highlight-text { --highlight-active: #E8E8E3; --highlight-muted: #5C5C5C; }

/* Keep the approved desktop portrait canvas separate from the stacked mobile image. */
@media (min-width: 1024px) {
  .portfolio #about > .f98 {
    position: absolute;
    left: 0;
    top: 0;
    width: 1440px;
    height: 100%;
    margin: 0;
    aspect-ratio: auto;
  }
  .portfolio #about > .f98 .f59 { position: absolute; inset: 0; }
  .portfolio #about > .f98 .f61 {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .portfolio #about > .f98 .f99 { display: block; position: absolute; inset: 0; }
}

/* The cursor-origin circle must never paint outside this existing CTA frame. */
.portfolio #work .works-all-projects-cta {
  display: block;
  overflow: hidden;
  isolation: isolate;
}
/* Homepage-only flow overrides; approved desktop composition starts at 1024px. */
@media(max-width:1023px){
 .portfolio.portfolio{width:100%;zoom:1;margin:0;--mobile-gutter:20px}
 .portfolio .section{width:100%;height:auto;min-height:0;overflow:clip}
 .portfolio :is(h2,h3){margin:0;font-weight:500}
 .portfolio #hero{min-height:740px;min-height:100svh;padding:140px var(--mobile-gutter) 100px;display:flex;align-items:center}
 .portfolio #hero>.f107,.portfolio #hero .f108{position:absolute;inset:0;width:100%;height:100%}
 .portfolio #hero .f116{position:relative;left:auto;top:auto;translate:none;width:100%;height:auto;padding:170px var(--mobile-gutter) 100px;gap:28px}
 .portfolio #hero :is(.f117,.f118){width:100%;flex:none;height:auto;line-height:1.3}
 .portfolio #hero .f117{font-size:clamp(25px,5.6vw,42px)}
 .portfolio #hero .f118{font-size:16px;max-width:480px}
 .portfolio #hero .f104{line-height:1.4}
 .portfolio #hero .f119{left:auto;right:var(--mobile-gutter);top:24px;gap:8px}
 .portfolio #hero .project-button{height:44px;width:148px}
 .portfolio #hero .f121{left:50%;top:50%}
 .portfolio #hero :is(.hero-menu,.hero-menu-trigger){width:44px;height:44px}
 .portfolio #hero .hero-menu-panel{width:min(380px,calc(100vw - 2 * var(--mobile-gutter)));height:420px;max-height:calc(100svh - 92px);overflow:auto}
 .portfolio #hero .hero-menu-links{top:32px;font-size:28px;gap:12px}
 .portfolio #hero .hero-menu-links a{min-height:44px}
 .portfolio #hero .hero-menu-cta{min-height:64px}
 .portfolio #hero .f109{inset:50% -30% -10% 10%}
 .portfolio #hero .f111{inset:-15% -15% 50% -25%}
 .portfolio #about{display:flex;flex-direction:column;gap:28px;padding:72px var(--mobile-gutter);background:#080807}
 .portfolio #about :is(.f98,.f100,.f102,.f103,.f105){position:relative;left:auto;top:auto;translate:none;width:100%;height:auto;transform:none}
 .portfolio #about .f102{order:1;justify-content:flex-start;align-items:center;gap:10px}
 .portfolio #about .f100{order:2}
 .portfolio #about .f103{order:3}
 .portfolio #about .f105{order:4}
 .portfolio #about .f98{order:5;aspect-ratio:1440/900;margin-top:12px}
 .portfolio #about .f99{display:none}
 .portfolio #about .f61{object-fit:contain}
 .portfolio #about .f101{font-size:clamp(28px,5vw,46px);line-height:1.18;width:100%;height:auto;white-space:normal}
 .portfolio #about :is(.f103,.f105){font-size:16px;line-height:1.5;letter-spacing:0}
 .portfolio #about :is(.f104,.f106){line-height:1.5}
 .portfolio .services-sequence-stage{height:auto!important}
 .portfolio .services-sequence-sticky{position:static}
 .portfolio #services{padding:64px var(--mobile-gutter);background:#151515}
 .portfolio #services>h2{font-size:clamp(32px,5vw,48px);line-height:1.15;margin-bottom:48px}
 .portfolio .mobile-service{display:flex;flex-direction:column;gap:18px;margin-bottom:48px}
 .portfolio .mobile-service:last-child{margin-bottom:0}
 .portfolio .mobile-service h3{font-size:26px;line-height:1.2}
 .portfolio .mobile-service p{font-size:16px;line-height:1.5;color:#cfcfc9;max-width:680px}
 .portfolio .mobile-service img{width:100%;height:auto;object-fit:contain;max-height:580px}
 .portfolio #work{padding:64px var(--mobile-gutter);color:#080807}
 .portfolio #work :is(.f42,.f44,.f63){position:relative;left:auto;top:auto;translate:none;width:100%;height:auto;transform:none}
 .portfolio #work .f43{font-size:clamp(42px,7vw,70px);width:100%;line-height:1.1;margin-bottom:40px}
 .portfolio #work .f43 .f5{line-height:1.1}
 .portfolio #work .f44{gap:64px}
 .portfolio #work .f45{display:flex;flex-direction:column;align-items:stretch;gap:24px}
 .portfolio #work :is(.f46,.f47){width:100%;height:auto;aspect-ratio:730/430}
 .portfolio #work :is(.f48,.f55,.f49,.f50,.f56,.f51,.f54,.f58,.f62){width:100%;height:auto;min-width:0;flex:none;gap:20px}
 .portfolio #work .f34{height:auto;font-size:28px;line-height:1.2}
 .portfolio #work .f34 .f9{line-height:1.2}
 .portfolio #work :is(.f50,.f56){font-size:16px;line-height:1.5}
 .portfolio #work :is(.f54,.f58,.f62){font-size:14px;line-height:1.5}
 .portfolio #work .f5{line-height:1.5}
 .portfolio #work .f63{margin-top:48px;min-height:64px}
 .portfolio #work .f64{position:relative;left:auto;top:auto;translate:none;justify-content:center;padding:12px;gap:12px}
 .portfolio #work .f65{width:auto;font-size:18px}
 .portfolio #process{padding:64px var(--mobile-gutter);gap:40px}
 .portfolio #process .f26{height:auto;width:100%}
 .portfolio #process .f27{font-size:clamp(40px,7vw,68px);width:100%;line-height:1.1}
 .portfolio #process .f27 .f5{line-height:1.1}
 .portfolio #process .f28{gap:48px}
 .portfolio #process .f29{display:flex;flex-direction:column;align-items:stretch;gap:20px}
 .portfolio #process :is(.f30,.f39){height:auto;width:100%;overflow:visible}
 .portfolio #process :is(.f31,.f40){position:relative;left:auto;top:auto;translate:none;font-size:14px;color:#e8e8e3}
 .portfolio #process .f32{line-height:1.4}
 .portfolio #process .f33{width:100%;height:auto;gap:16px}
 .portfolio #process .f34{height:auto;font-size:28px}
 .portfolio #process .f9{line-height:1.2}
 .portfolio #process .f35{height:auto;font-size:16px}
 .portfolio #process .f36{line-height:1.5}
 .portfolio #process .f37{width:100%;height:auto;aspect-ratio:16/9}
 .portfolio #process .process-step-indicator{display:none}
 .portfolio #contact{padding:100px var(--mobile-gutter) 0;margin:0}
 .portfolio #contact .f128{inset:0;width:100%;height:100%;translate:none}
 .portfolio #contact .f129{object-fit:cover;object-position:center}
 .portfolio #contact .f130{position:relative;display:flex;flex-direction:column;gap:18px}
 .portfolio #contact :is(.f131,.f132,.f134,.f136,.f137){position:relative;left:auto;top:auto;translate:none;width:100%;height:auto;font-size:clamp(32px,7vw,60px);line-height:1.1;letter-spacing:0}
 .portfolio #contact :is(.f133,.f135,.f5){line-height:1.1}
 .portfolio #contact .f130 p:not([data-text-animate-line]){display:none}
 .portfolio #contact .f136{font-size:clamp(64px,14vw,120px)}
 .portfolio #contact .f142{position:relative;left:auto;top:auto;translate:none;width:100%;font-size:18px;line-height:1.5;margin:64px 0 40px}
 .portfolio #contact .f143{line-height:1.5}
 .portfolio #contact{display:flex;flex-direction:column}
 .portfolio #contact .f142{order:2}
 .portfolio #contact .f138{order:3;position:relative;left:calc(-1 * var(--mobile-gutter));top:auto;translate:none;width:calc(100% + 2 * var(--mobile-gutter));height:88px;flex-shrink:0}
 .portfolio #contact .f140{width:220px;font-size:26px}
 .portfolio #footer{padding:64px var(--mobile-gutter) 24px}
 .portfolio #footer .f2{position:relative;left:auto;top:auto;translate:none;width:100%;gap:36px}
 .portfolio #footer .f3{height:auto;aspect-ratio:700/330;font-size:clamp(76px,22vw,180px);letter-spacing:-.04em;padding-block:4px}
 .portfolio #footer :is(.f4,.f6){position:relative;left:auto;top:auto;translate:none;width:100%;height:auto;text-align:center;line-height:.85}
 .portfolio #footer .f3 .f5{line-height:.85}
 .portfolio #footer .f7{gap:8px 24px;flex-wrap:wrap;justify-content:center;font-size:18px}
 .portfolio #footer .f7 a{width:auto;min-height:44px;height:auto}
 .portfolio #footer .f7 .f9{line-height:1.3}
 .portfolio #footer .f14{width:44px;height:44px}
 .portfolio #footer .f14 .f15{width:28px;height:28px;inset:8px}
 .portfolio #footer .f16{position:relative;left:auto;top:auto;translate:none;width:100%;margin:36px 0 24px}
 .portfolio #footer .f19{position:relative;left:auto;top:auto;width:100%;gap:24px;align-items:center}
 .portfolio #footer .f20{min-height:44px;justify-content:center}
 .portfolio #footer .f23{font-size:12px;width:auto;height:auto}
 body:has(.portfolio) .booking-dialog{width:calc(100vw - 16px);max-height:calc(100svh - 16px);overflow:auto}
 body:has(.portfolio) .booking-dialog-header{position:sticky;top:0;z-index:2;background:#111;padding:12px}
 body:has(.portfolio) .booking-dialog-header button{width:44px;height:44px}
 body:has(.portfolio) .booking-dialog-content{padding:0 8px 8px;min-height:360px}
}
@media(max-width:599px){
 .portfolio #hero .f116{
  height:100%;
  justify-content:center;
  padding-top:calc(100px + env(safe-area-inset-top, 0px));
  padding-bottom:calc(80px + env(safe-area-inset-bottom, 0px));
 }
}
@media(min-width:600px) and (max-width:1023px){.portfolio.portfolio{--mobile-gutter:32px}.portfolio #hero .f116{padding-top:220px}.portfolio #about .f98{max-width:704px;align-self:center}.portfolio #footer .f3{max-width:700px}}
@media(max-width:1023px) and (hover:none){.portfolio #work .works-project-hover{display:none}}
/* Native desktop layout: no page zoom or transform scaling. 1440px is the reference. */
@media(min-width:1024px){
 .portfolio.portfolio{width:100%;max-width:none;margin:0;zoom:1;--desktop-gutter:clamp(40px,calc(100vw / 22.5),96px);--card-gap:clamp(32px,3.611111vw,64px)}
 .portfolio .section{width:100%}
 .portfolio #hero>.f107,.portfolio #hero .f108{width:100%;left:0}
 .portfolio #hero .f108{left:-1px;width:100%}
 .portfolio #hero .f116{top:43.555556%;width:clamp(500px,38.541667vw,650px)}
 .portfolio #hero .f117{width:clamp(500px,39.097222vw,660px);font-size:clamp(24px,1.666667vw,28px)}
 .portfolio #hero .f118{width:clamp(380px,28.125vw,470px);font-size:clamp(18px,1.388889vw,22px)}
 .portfolio #hero .f119{left:auto;right:var(--desktop-gutter)}
 .portfolio #hero .hero-menu-panel{width:clamp(340px,26.388889vw,440px);height:clamp(432px,30vw,480px)}
 .portfolio #about>.f98{width:100%}
 .portfolio #about .f100{left:calc(25% + 16px);width:67.569444%;font-size:clamp(36px,3.333333vw,56px);top:18.944444%;height:auto;min-height:161px}
 .portfolio #about .f101{line-height:1.104166667}
 .portfolio #about .f102{left:calc(var(--desktop-gutter) + 36px);top:11.444444%}
 .portfolio #about .f103{left:calc(var(--desktop-gutter) + 36px);width:37.708333%;font-size:clamp(18px,1.388889vw,22px);top:82.888889%}
 .portfolio #about .f105{left:calc(66.67% + 53px);width:23.333333%;font-size:clamp(14px,1.111111vw,18px);top:35.055556%}
 .portfolio #about .f105{left:70.347222%}
 .portfolio #services .f71{width:100%}
 .portfolio #services .f72{left:calc(100% - var(--desktop-gutter))}
 .portfolio #services .f75{left:var(--desktop-gutter)}
 .portfolio #services .f76{left:63.75%}
 .portfolio #services :is(.f77,.f78){width:100%}
 .portfolio #services .f77{top:73.444444%;left:calc(50% - 8.194444%)}
 .portfolio #services .f78{top:16.666667%}
 .portfolio #services .f82{left:calc(63.75% - 6px);top:calc(16.666667% - 6px)}
 .portfolio #services .f83{left:calc(var(--desktop-gutter) - 6px);top:calc(16.666667% - 6px)}
 .portfolio #services .f84{left:calc(var(--desktop-gutter) - 6px);top:calc(73.444444% - 12px)}
 .portfolio #services .f85{left:calc(100% - var(--desktop-gutter) - 6px);top:calc(16.666667% - 6px)}
 .portfolio #services .f86{left:calc(var(--desktop-gutter) + 120px);top:12.111111%}
 .portfolio #services .f90{left:70.069444%;width:22.569444%;top:14.333333%;font-size:clamp(16px,1.388889vw,22px)}
 .portfolio #services .f92{left:29.236111%;top:29.222222%;width:52.777778%;height:44.444444%}
 .portfolio #services .f93{left:6.805556%;top:42.777778%;width:max-content;max-width:calc(100% - 6.805556% - var(--desktop-gutter));font-size:clamp(24px,2.222222vw,36px)}
 .portfolio #services .f93 .f95{white-space:nowrap}
 .portfolio #services .f95{line-height:1.125}
 .portfolio #work{height:auto;padding:290px var(--desktop-gutter) 246px}
 .portfolio #work .f42{left:var(--desktop-gutter);translate:none}
 .portfolio #work .f43{font-size:clamp(96px,8.888889vw,148px)}
 .portfolio #work .f44{position:relative;left:auto;top:auto;translate:none;width:100%;gap:clamp(120px,12.5vw,200px)}
 .portfolio #work .f45{gap:var(--card-gap)}
 .portfolio #work :is(.f46,.f47){width:100%;height:auto;aspect-ratio:730/430}
 .portfolio #work .f46{width:55.640244%;flex-shrink:0}
 .portfolio #work .f48{width:40.396341%;flex-shrink:1}
 .portfolio #work .f55{width:35.365854%;flex-shrink:1}
 .portfolio #work .f49{height:clamp(114px,calc(114px + (1440px - 100vw) * .2),240px)}
 .portfolio #work :is(.f50,.f56){height:clamp(75px,calc(75px + (1440px - 100vw) * .14),150px);font-size:clamp(18px,1.388889vw,22px)}
 .portfolio #work .f56{height:clamp(95px,calc(95px + (1440px - 100vw) * .14),170px)}
 .portfolio #work .f34{height:26px;font-size:clamp(28px,2.222222vw,36px)}
 .portfolio #work .f51{width:min(314px,100%);height:150px}
 .portfolio #work .f63{top:auto;bottom:0;width:100%}
 .portfolio #work .f64{left:calc(var(--desktop-gutter) + 144.5px)}
 .portfolio #process{height:auto;padding:100px calc(var(--desktop-gutter) - 6px) 100px calc(var(--desktop-gutter) + 6px)}
 .portfolio #process .f27{width:100%;font-size:clamp(96px,8.888889vw,148px)}
 .portfolio #process .f29{display:grid;width:calc(100% + var(--desktop-gutter) - 6px);padding-right:calc(var(--desktop-gutter) - 6px);grid-template-columns:max(64px,6.097561%) 35.365854% minmax(0,1fr);gap:clamp(24px,3.541667vw,60px);align-items:center}
 .portfolio #process :is(.f30,.f39){width:100%;height:auto;align-self:stretch}
 .portfolio #process .f33{width:100%;height:auto;min-height:114px}
 .portfolio #process .f34{height:auto;min-height:26px;font-size:clamp(28px,2.222222vw,36px)}
 .portfolio #process .f35{height:auto;min-height:68px;font-size:clamp(18px,1.388889vw,22px)}
 .portfolio #process .f37{width:100%;height:auto;aspect-ratio:666/430}
 .portfolio #process .process-step-indicator{width:max(64px,6.097561%)}
 .portfolio #contact{height:clamp(1200px,107.916667vw,1800px)}
 .portfolio #contact .f128{width:100%;height:calc(100% + 139px)}
 .portfolio #contact .f131{left:4.375%;top:29.343629%}
 .portfolio #contact .f132{width:73.888889vw;font-size:clamp(68px,6.666667vw,112px)}
 .portfolio #contact .f134{left:15.347222%;top:40.604891%;width:73.888889%;font-size:clamp(68px,6.666667vw,112px)}
 .portfolio #contact .f137{left:23.888889%;top:48.519949%;width:54.722222%;font-size:clamp(68px,6.666667vw,112px)}
 .portfolio #contact .f136{left:5.277778%;top:59.65251%;width:51.319444%;font-size:clamp(140px,13.888889vw,240px)}
 .portfolio #contact .f142{left:66.805556%;top:76.383526%;width:28.75%;font-size:clamp(20px,1.944444vw,32px)}
 .portfolio #contact .f138{top:auto;bottom:5px;width:100%}
 .portfolio #footer{height:clamp(600px,47.5vw,760px)}
 .portfolio #footer .f2{left:50%;translate:-50% -50%;width:clamp(600px,48.611111vw,840px)}
 .portfolio #footer .f3{font-size:clamp(170px,13.888889vw,240px);height:clamp(180px,14.027778vw,244px)}
 .portfolio #footer .f4{top:10.891089%;width:calc(180% - 1px)}
 .portfolio #footer .f6{top:95.544554%;width:calc(180% - 1px)}
 .portfolio #footer .f16{top:calc(100% - 87px);width:100%}
 .portfolio #footer .f19{left:var(--desktop-gutter);top:calc(100% - 59px);width:calc(100% - 2 * var(--desktop-gutter))}
}

@font-face {
  font-family: 'Red Hat Display';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(/fonts/red-hat-display-0.woff2) format('truetype');
}
@font-face {
  font-family: 'Red Hat Display';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(/fonts/red-hat-display-1.woff2) format('truetype');
}
@font-face {
  font-family: 'Red Hat Display';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(/fonts/red-hat-display-2.woff2) format('truetype');
}
@font-face {
  font-family: 'Red Hat Display';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(/fonts/red-hat-display-3.woff2) format('truetype');
}
@font-face {
  font-family: 'Red Hat Display';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(/fonts/red-hat-display-4.woff2) format('truetype');
}
:root{font-family:"Red Hat Display",sans-serif;color:#e8e8e3;background:#080807;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--color-dark:#080807;--color-light:#e8e8e3;--color-muted:#5c5c5c;--color-paper:#fafafc}
*{box-sizing:border-box;border-width:0}body{margin:0}p{margin:0}img{display:block}a{color:inherit;text-decoration:none}button{font:inherit}
.portfolio{width:1440px;margin-inline:auto}
.section{position:relative;width:1440px;isolation:isolate}
.section-hero{height:784px;overflow:clip;}
.section-about{height:900px;}
.section-services{height:813px;overflow:clip;}
.section-work{height:2796px;overflow:clip;background:#fafafc;}
.section-process{height:1677px;padding:100px 0 0 70px;display:flex;flex-direction:column;gap:100px;}
.section-contact{height:1554px;margin-bottom:105px;overflow:clip;}
.section-footer{height:684px;overflow:clip;}
.project-button{background:#e8e8e3;height:38px;width:140px;overflow:clip;position:relative;border-radius:2px;flex-shrink:0}
@media(max-width:1439px){.portfolio{margin:0;zoom:calc(100vw / 1440px)}}

.f0{background-color:#080807;position:relative;width:100%;height:100%;}
.f1{position:absolute;background-color:#080807;height:684px;left:50%;overflow:clip;top:8629px;width:1440px;translate:-50% 0;}
.f2{position:absolute;align-content:stretch;display:flex;flex-direction:column;gap:80px;align-items:center;left:370px;top:calc(50% - 42px);width:700px;translate:0 -50%;}
.f3{word-break:break-word;background-color:#080807;font-family:"Red Hat Display";font-weight:900;height:202px;line-height:0;overflow:clip;position:relative;flex-shrink:0;font-size:200px;color:#e8e8e3;text-align:center;letter-spacing:-8px;width:100%;}
.f4{position:absolute;display:flex;flex-direction:column;height:292px;justify-content:center;left:calc(50% + 6.5px);top:22px;width:1259px;translate:-50% -50%;}
.f5{line-height:23.08px;}
.f6{position:absolute;display:flex;flex-direction:column;height:292px;justify-content:center;left:calc(50% + 7.5px);top:193px;width:1259px;translate:-50% -50%;}
.f7{word-break:break-word;align-content:stretch;display:flex;font-family:"Red Hat Display";font-weight:500;gap:40px;align-items:center;line-height:0;position:relative;flex-shrink:0;font-size:24px;letter-spacing:-0.177px;}
.f8{display:flex;flex-direction:column;height:26px;justify-content:center;position:relative;flex-shrink:0;color:#e8e8e3;width:87px;}
.f9{line-height:60px;}
.f10{display:flex;flex-direction:column;height:26px;justify-content:center;position:relative;flex-shrink:0;color:#5c5c5c;width:76px;}
.f11{display:flex;flex-direction:column;height:26px;justify-content:center;position:relative;flex-shrink:0;color:#5c5c5c;width:110px;}
.f12{display:flex;flex-direction:column;height:20px;justify-content:center;position:relative;flex-shrink:0;color:#5c5c5c;width:114px;}
.f13{align-content:stretch;display:flex;gap:20px;align-items:center;position:relative;flex-shrink:0;}
.f14{position:relative;flex-shrink:0;width:28px;height:28px;}
.f15{position:absolute;display:block;inset:0;max-width:none;width:100%;height:100%;}
.f16{position:absolute;height:0;left:50%;top:597px;width:1440px;translate:-50% 0;}
.f17{position:absolute;inset:-1px 0 0 0;}
.f18{display:block;max-width:none;width:100%;height:100%;}
.f19{position:absolute;align-content:stretch;display:flex;align-items:center;justify-content:space-between;left:64px;top:625px;width:1312px;}
.f20{align-content:stretch;display:flex;flex-direction:column;align-items:center;position:relative;flex-shrink:0;width:70px;}
.f21{position:relative;flex-shrink:0;width:18px;height:18px;}
.f22{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;height:18px;justify-content:center;line-height:0;min-width:100%;position:relative;flex-shrink:0;font-size:14px;color:#e8e8e3;text-align:center;letter-spacing:-0.177px;width:min-content;}
.f23{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;height:15px;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:14px;color:#e8e8e3;text-align:center;letter-spacing:-0.157px;width:192px;}
.f24{line-height:17.33px;}
.f25{position:absolute;align-content:stretch;display:flex;flex-direction:column;gap:100px;align-items:flex-start;left:70px;top:5393px;width:1312px;}
.f26{align-content:stretch;display:flex;gap:8px;height:87px;align-items:center;position:relative;flex-shrink:0;}
.f27{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:128px;color:#e8e8e3;letter-spacing:-1px;width:1064px;}
.f28{align-content:stretch;display:flex;flex-direction:column;align-items:flex-start;position:relative;flex-shrink:0;width:100%;}
.f29{align-content:stretch;display:flex;gap:51px;align-items:center;position:relative;flex-shrink:0;width:100%;}
.f30{background-color:#e8e8e3;height:430px;overflow:clip;position:relative;flex-shrink:0;width:80px;}
.f31{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;left:11px;font-size:20px;color:#080807;top:23px;letter-spacing:-0.177px;white-space:nowrap;translate:0 -50%;}
.f32{line-height:66px;}
.f33{word-break:break-word;align-content:stretch;display:flex;flex-direction:column;gap:20px;height:114px;align-items:flex-start;line-height:0;position:relative;flex-shrink:0;color:#e8e8e3;letter-spacing:-0.177px;width:464px;}
.f34{display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;height:26px;justify-content:center;position:relative;flex-shrink:0;font-size:32px;width:100%;}
.f35{display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:300;height:68px;justify-content:center;position:relative;flex-shrink:0;font-size:20px;width:100%;}
.f36{line-height:27px;}
.f37{height:430px;position:relative;flex-shrink:0;width:666px;}
.f38{position:absolute;inset:0;max-width:none;object-fit:cover;pointer-events:none;width:100%;height:100%;}
.f39{height:430px;overflow:clip;position:relative;flex-shrink:0;width:80px;}
.f40{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;left:11px;font-size:20px;color:#e8e8e3;top:23px;letter-spacing:-0.177px;white-space:nowrap;translate:0 -50%;}
.f41{position:absolute;background-color:#fafafc;height:2796px;left:50%;overflow:clip;top:2497px;width:1440px;translate:-50% 0;}
.f42{position:absolute;align-content:stretch;display:flex;gap:8px;height:87px;align-items:center;left:calc(50% - 441.5px);top:93px;translate:-50% 0;}
.f43{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:128px;color:#080807;letter-spacing:-1px;width:429px;}
.f44{position:absolute;align-content:stretch;display:flex;flex-direction:column;gap:180px;align-items:flex-start;left:50%;top:calc(50% + 22px);width:1312px;translate:-50% -50%;}
.f45{align-content:stretch;display:flex;gap:52px;align-items:center;position:relative;flex-shrink:0;width:100%;}
.f46{height:430px;position:relative;flex-shrink:0;width:730px;}
.f47{position:absolute;height:430px;left:0;top:0;width:730px;}
.f48{align-content:stretch;display:flex;flex-direction:column;gap:100px;align-items:flex-start;position:relative;flex-shrink:0;width:530px;}
.f49{word-break:break-word;align-content:stretch;display:flex;flex-direction:column;gap:20px;height:114px;align-items:flex-start;line-height:0;position:relative;flex-shrink:0;color:#080807;letter-spacing:-0.177px;width:100%;}
.f50{display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:300;height:75px;justify-content:center;position:relative;flex-shrink:0;font-size:20px;width:100%;}
.f51{align-content:stretch;display:flex;flex-direction:column;gap:20px;height:150px;align-items:flex-start;position:relative;flex-shrink:0;width:314px;}
.f52{background-color:#080807;height:60px;overflow:clip;position:relative;flex-shrink:0;width:80px;}
.f53{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;left:calc(50% - 23px);font-size:24px;color:#e8e8e3;top:50%;letter-spacing:-0.177px;white-space:nowrap;translate:0 -50%;}
.f54{word-break:break-word;display:flex;flex:1 0 0;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;min-height:1px;min-width:100%;position:relative;font-size:16px;color:#080807;letter-spacing:-0.177px;width:min-content;}
.f55{align-content:stretch;display:flex;flex-direction:column;gap:100px;align-items:flex-start;position:relative;flex-shrink:0;width:464px;}
.f56{display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:300;height:95px;justify-content:center;position:relative;flex-shrink:0;font-size:20px;width:100%;}
.f57{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;justify-content:center;line-height:0;left:calc(50% - 20px);font-size:24px;color:#e8e8e3;top:50%;letter-spacing:-0.177px;white-space:nowrap;translate:0 -50%;}
.f58{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;min-width:100%;position:relative;flex-shrink:0;font-size:16px;color:#080807;letter-spacing:-0.177px;width:min-content;}
.f59{position:absolute;inset:0;pointer-events:none;}
.f60{position:absolute;background-color:white;inset:0;}
.f61{position:absolute;max-width:none;object-fit:cover;width:100%;height:100%;}
.f62{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;height:92px;justify-content:center;line-height:0;min-width:100%;position:relative;flex-shrink:0;font-size:16px;color:#080807;letter-spacing:-0.177px;width:min-content;}
.f63{position:absolute;border-color:#c9c9c9;border-style:solid;border-top-width:1px;height:120px;left:50%;overflow:clip;top:2676px;width:1440px;translate:-50% 0;}
.f64{position:absolute;align-content:stretch;display:flex;align-items:center;left:calc(50% - 511px);top:calc(50% - 0.5px);translate:-50% -50%;}
.f65{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:32px;color:#080807;letter-spacing:-0.177px;width:223px;}
.f66{overflow:clip;position:relative;border-radius:2.4px;flex-shrink:0;width:48px;height:48px;}
.f67{position:absolute;inset:0;border-radius:2.4px;}
.f68{position:absolute;left:50%;width:32px;height:32px;top:50%;translate:-50% -50%;}
.f69{position:absolute;left:-11.81px;width:15.75px;height:15.75px;top:19.69px;}
.f70{position:absolute;background-color:#080807;height:813px;left:50%;overflow:clip;top:1684px;width:1440px;translate:-50% 0;}
.f71{position:absolute;height:813px;left:50%;top:50%;width:1440px;translate:-50% -50%;}
.f72{position:absolute;display:flex;height:940px;align-items:center;justify-content:center;left:1376px;top:-100px;width:0;}
.f73{rotate:-90deg;flex:none;}
.f74{height:0;position:relative;width:940px;}
.f75{position:absolute;display:flex;height:940px;align-items:center;justify-content:center;left:64px;top:-100px;width:0;}
.f76{position:absolute;display:flex;height:940px;align-items:center;justify-content:center;left:918px;top:-100px;width:0;}
.f77{position:absolute;height:0;left:calc(50% - 118px);top:661px;width:1440px;translate:-50% 0;}
.f78{position:absolute;height:0;left:50%;top:150px;width:1440px;translate:-50% 0;}
.f79{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Inter";font-weight:600;justify-content:center;line-height:0;left:81px;font-style:normal;color:#e8e8e3;font-size:40px;top:537px;letter-spacing:-0.177px;white-space:nowrap;translate:0 -50%;}
.f80{line-height:66px;margin-bottom:0;white-space:pre;}
.f81{line-height:66px;white-space:pre;}
.f82{position:absolute;left:912px;width:12px;height:12px;top:144px;}
.f83{position:absolute;left:58px;width:12px;height:12px;top:144px;}
.f84{position:absolute;left:58px;width:12px;height:12px;top:649px;}
.f85{position:absolute;left:1370px;width:12px;height:12px;top:144px;}
.f86{position:absolute;align-content:stretch;display:flex;gap:8px;align-items:center;left:calc(50% - 536px);top:109px;translate:-50% 0;}
.f87{position:relative;flex-shrink:0;width:6px;height:6px;}
.f88{text-box-edge:cap alphabetic;text-box-trim:trim-both;word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:18px;color:white;letter-spacing:0.072px;white-space:nowrap;}
.f89{line-height:24px;}
.f90{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:300;justify-content:center;line-height:0;left:1009px;color:#e8e8e3;font-size:20px;top:129px;letter-spacing:-0.177px;width:325px;translate:0 -50%;}
.f91{line-height:23.08px;white-space:pre-wrap;}
.f92{position:absolute;height:400px;left:421px;top:263px;width:760px;}
.f93{word-break:break-word;position:absolute;text-transform:capitalize;align-content:stretch;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:600;gap:24px;align-items:flex-start;line-height:0;left:98px;font-size:32px;top:385px;letter-spacing:0.128px;width:391px;}
.f94{text-box-edge:cap alphabetic;text-box-trim:trim-both;display:flex;flex-direction:column;justify-content:center;position:relative;flex-shrink:0;color:#e8e8e3;width:100%;}
.f95{line-height:36px;}
.f96{text-box-edge:cap alphabetic;text-box-trim:trim-both;display:flex;flex-direction:column;justify-content:center;position:relative;flex-shrink:0;color:#4e4e4e;width:100%;}
.f97{position:absolute;height:900px;left:50%;top:784px;width:1440px;translate:-50% 0;}
.f98{position:absolute;height:900px;left:0;top:0;width:1440px;}
.f99{position:absolute;inset:0;}
.f100{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:600;height:161px;justify-content:center;line-height:0;left:calc(25% + 16px);color:#e8e8de;font-size:48px;top:170.5px;width:973px;translate:0 -50%;}
.f101{line-height:53px;white-space:pre-wrap;}
.f102{position:absolute;align-content:stretch;display:flex;gap:8px;align-items:center;left:100px;top:103px;}
.f103{text-box-edge:cap alphabetic;text-box-trim:trim-both;word-break:break-word;position:absolute;text-transform:capitalize;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:600;height:50px;justify-content:center;line-height:0;left:100px;color:#e8e8e3;font-size:20px;top:746px;letter-spacing:0.6px;width:543px;translate:0 -50%;}
.f104{line-height:26px;}
.f105{text-box-edge:cap alphabetic;text-box-trim:trim-both;word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;height:65px;justify-content:center;line-height:0;left:calc(66.67% + 53px);color:#e8e8e3;font-size:16px;top:315.5px;letter-spacing:0.7px;width:336px;translate:0 -50%;}
.f106{line-height:22px;}
.f107{position:absolute;background-color:#080807;height:784px;left:0;overflow:clip;top:0;width:1440px;}
.f108{position:absolute;background-color:#080807;height:784px;left:-1px;overflow:clip;top:0;width:1440px;}
.f109{position:absolute;inset:55.56% -16.12% -36.45% 29.03%;}
.f110{position:absolute;inset:-7.96% -9.42% -7.96% -5.13%;}
.f111{position:absolute;display:flex;inset:-38% 23.62% 35.07% -22.29%;align-items:center;justify-content:center;}
.f112{flex:none;height:hypot(53.9444cqw,43.5108cqh);width:hypot(46.0556cqw,-56.4892cqh);transform:rotate(-34.86deg) skewX(30.52deg);}
.f113{position:relative;width:100%;height:100%;}
.f114{position:absolute;inset:-23.72% -25.08%;}
.f115{position:absolute;inset:-2.44% -2.29%;mix-blend-mode:overlay;opacity:.5;}
.f116{word-break:break-word;position:absolute;align-content:stretch;display:flex;flex-direction:column;gap:10px;height:150px;align-items:center;line-height:0;left:calc(50% + 0.5px);color:#5c5c5c;text-align:center;top:50%;letter-spacing:-0.177px;width:555px;translate:-50% -50%;}
.f117{display:flex;flex:1 0 0;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;min-height:1px;position:relative;font-size:24px;width:563px;}
.f118{display:flex;flex:1 0 0;flex-direction:column;font-family:"Red Hat Display";font-weight:300;justify-content:center;min-height:1px;position:relative;font-size:20px;width:405px;}
.f119{position:absolute;align-content:stretch;display:flex;gap:4px;align-items:center;left:1194px;top:44px;}
.f120{background-color:#e8e8e3;height:38px;overflow:clip;position:relative;border-radius:2px;flex-shrink:0;width:140px;}
.f121{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:600;height:20px;justify-content:center;line-height:0;left:70px;font-size:13px;color:#080807;text-align:center;top:19px;letter-spacing:-0.177px;width:84px;translate:-50% -50%;}
.f122{background-color:#191919;overflow:clip;position:relative;border-radius:2px;flex-shrink:0;width:38px;height:38px;}
.f123{position:absolute;left:50%;overflow:clip;width:18px;height:18px;top:50%;translate:-50% -50%;}
.f124{position:absolute;display:contents;inset:27.78% 0 31.57% 0;}
.f125{position:absolute;inset:27.78% 0 63.65% 0;}
.f126{position:absolute;inset:59.85% 0 31.57% 0;}
.f127{position:absolute;height:1554px;left:50%;overflow:clip;top:6970px;width:1440px;translate:-50% 0;}
.f128{position:absolute;height:1693px;left:50%;top:-139px;width:1440px;translate:-50% 0;}
.f129{position:absolute;max-width:none;object-position:bottom;width:100%;height:100%;}
.f130{position:absolute;display:contents;left:63px;top:456px;}
.f131{position:absolute;align-content:stretch;display:flex;gap:8px;height:80px;align-items:center;left:63px;top:456px;}
.f132{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:96px;color:#e8e8e3;letter-spacing:1px;width:1064px;}
.f133{line-height:23.08px;margin-bottom:0;}
.f134{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Poppins";height:80px;justify-content:center;line-height:0;left:221px;font-style:normal;font-size:96px;color:#5c5c5c;top:631px;letter-spacing:1px;width:1064px;white-space:pre-wrap;translate:0 -50%;}
.f135{font-family:"Red Hat Display";font-weight:400;line-height:23.08px;margin-bottom:0;color:#5c5c5c;}
.f136{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:500;height:156px;justify-content:center;line-height:0;left:76px;font-size:200px;color:#e8e8e3;top:927px;letter-spacing:1px;width:739px;translate:0 -50%;}
.f137{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;height:80px;justify-content:center;line-height:0;left:344px;font-size:96px;color:#5c5c5c;top:754px;letter-spacing:1px;width:788px;translate:0 -50%;}
.f138{position:absolute;background-color:#e8e8e3;border-color:#c9c9c9;border-style:solid;border-top-width:1px;height:120px;left:50%;overflow:clip;top:1429px;width:1440px;translate:-50% 0;}
.f139{position:absolute;align-content:stretch;display:flex;align-items:center;left:50%;top:calc(50% - 0.5px);translate:-50% -50%;}
.f140{word-break:break-word;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;position:relative;flex-shrink:0;font-size:32px;color:#080807;text-align:center;letter-spacing:-0.177px;width:242px;}
.f141{position:absolute;left:50%;width:40px;height:40px;top:50%;translate:-50% -50%;}
.f142{word-break:break-word;position:absolute;display:flex;flex-direction:column;font-family:"Red Hat Display";font-weight:400;justify-content:center;line-height:0;left:calc(50% + 242px);font-size:28px;color:#5c5c5c;top:1187px;width:414px;translate:0 -50%;}
.f143{line-height:32px;}
