.elementor-7549 .elementor-element.elementor-element-2e23bec{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:80px;--padding-bottom:80px;--padding-left:10px;--padding-right:10px;}.elementor-7549 .elementor-element.elementor-element-2e23bec:not(.elementor-motion-effects-element-type-background), .elementor-7549 .elementor-element.elementor-element-2e23bec > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFEDD4;background-image:url("https://grokkingthesystemdesign.com/wp-content/uploads/2025/04/dots-background.png");background-repeat:repeat;background-size:contain;}.elementor-7549 .elementor-element.elementor-element-e7178e6{width:var( --container-widget-width, 632px );max-width:632px;--container-widget-width:632px;--container-widget-flex-grow:0;}.elementor-7549 .elementor-element.elementor-element-e7178e6 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:48px;font-weight:700;line-height:54px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-4aa08b0 img{width:500px;border-style:none;}.elementor-7549 .elementor-element.elementor-element-ceae0aa{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:flex-start;--padding-top:80px;--padding-bottom:80px;--padding-left:10px;--padding-right:10px;}.elementor-7549 .elementor-element.elementor-element-ceae0aa:not(.elementor-motion-effects-element-type-background), .elementor-7549 .elementor-element.elementor-element-ceae0aa > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#F6F6F6;}.elementor-7549 .elementor-element.elementor-element-e29445f{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-evenly;--align-items:flex-start;--gap:50px 50px;--row-gap:50px;--column-gap:50px;}.elementor-7549 .elementor-element.elementor-element-09d8c04{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0{--box-background-color:#FFFFFF;--box-border-color:#000000;--box-border-width:2px;--box-border-radius:18px;--separator-width:0px;--header-background-color:#FCC070;--header-color:#231F20;--toc-body-max-height:500px;--nested-list-indent:10px;--item-text-color:#000000;--item-text-hover-color:#000000;--item-text-hover-decoration:underline;--item-text-active-color:#000000;--marker-color:#000000;--marker-size:0px;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__spinner{color:#231F20;fill:#231F20;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__header-title{text-align:start;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__header, .elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__header-title{font-family:"Quicksand", Sans-serif;font-size:24px;font-weight:700;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__list-item{font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:700;line-height:28px;}.elementor-7549 .elementor-element.elementor-element-1b562df{--display:flex;}.elementor-7549 .elementor-element.elementor-element-c87ac67 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-e4b51c6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-e4b51c6{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-0dc6fc4 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-0dc6fc4 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b01c80b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b01c80b{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-86349a7 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-86349a7 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:20px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-496382f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-496382f{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-c946380 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-c946380 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-338d8d6 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-338d8d6{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-27c709b > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-27c709b .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-ce7ca5b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-ce7ca5b{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-bcd05ea > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-bcd05ea .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-d1987d4 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-d1987d4{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-28b6fc8 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-28b6fc8 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-ea51a02 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-ea51a02{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-f339446 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-f339446 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-fe66d7c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-fe66d7c{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-131bc63 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-131bc63 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-37bb21b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-37bb21b{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b9ba313 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b9ba313 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-6b737bc > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-6b737bc{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-382ec7d > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-382ec7d .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-14ce6a8 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-14ce6a8{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-56d9a6f > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-56d9a6f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-48e5221 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-48e5221{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-2176467 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-2176467 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-7a47f02 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-7a47f02{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-d5cb7f1 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-d5cb7f1 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-3568013 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-3568013{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-caa86e5 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-caa86e5 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-c2a7c87 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-c2a7c87{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-c3e0e59 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-c3e0e59 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-8b14f11 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-8b14f11{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b2b303f > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b2b303f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-45ed26f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-45ed26f{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-6c6aed3 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-6c6aed3 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-013dfc5 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-013dfc5{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b7ba3bb > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b7ba3bb .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-14de68f > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-14de68f{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-c69f0f3 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-c69f0f3 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-83b5505 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-83b5505{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-8aa9de7 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-8aa9de7 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-8dc78dd > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-8dc78dd{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-3664cca > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-3664cca .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-afa6569 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-afa6569{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-e68344f > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-e68344f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-65f7345 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-65f7345{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-5fc59e5 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-5fc59e5 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-bb20c97 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-bb20c97{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-080131d > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-080131d .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-a2d7fc2 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-a2d7fc2{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-d45240f > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-d45240f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-24c020a > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-24c020a{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-656c652 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-656c652 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-af20a3d > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-af20a3d{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b215f2f > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b215f2f .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-44a990b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-44a990b{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-ffd9b61 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-ffd9b61 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-9508e45 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-9508e45{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-4a5c7b6 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-4a5c7b6 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-162175b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-162175b{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-c4a7833 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-c4a7833 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-7f0fcd5 > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-7f0fcd5{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-29d0332 > .elementor-widget-container{margin:30px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-29d0332 .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-b5a6e7c > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-b5a6e7c{font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:500;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-afcc2fe{--display:flex;}.elementor-7549 .elementor-element.elementor-element-2f89ce2{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--justify-content:space-between;--align-items:center;--padding-top:80px;--padding-bottom:80px;--padding-left:10px;--padding-right:10px;}.elementor-7549 .elementor-element.elementor-element-2f89ce2:not(.elementor-motion-effects-element-type-background), .elementor-7549 .elementor-element.elementor-element-2f89ce2 > .elementor-motion-effects-container > .elementor-motion-effects-layer{background-color:#FFEDD4;background-image:url("https://grokkingthesystemdesign.com/wp-content/uploads/2025/04/dots-background.png");background-repeat:repeat;background-size:contain;}.elementor-7549 .elementor-element.elementor-element-337f431 img{width:410px;border-style:none;}.elementor-7549 .elementor-element.elementor-element-2890d46{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:flex-start;--gap:30px 30px;--row-gap:30px;--column-gap:30px;}.elementor-7549 .elementor-element.elementor-element-cb56d5a{width:var( --container-widget-width, 550px );max-width:550px;--container-widget-width:550px;--container-widget-flex-grow:0;}.elementor-7549 .elementor-element.elementor-element-cb56d5a .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:48px;font-weight:700;line-height:54px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-bc2774b > .elementor-widget-container{margin:0px 0px 0px 0px;}.elementor-7549 .elementor-element.elementor-element-bc2774b .elementor-heading-title{font-family:"Quicksand", Sans-serif;font-size:21px;font-weight:500;line-height:28px;color:#231F20;}.elementor-7549 .elementor-element.elementor-element-95ca1dc .elementor-button{background-color:#D8D8D8;font-family:"Quicksand", Sans-serif;font-size:16px;font-weight:700;fill:#231F20;color:#231F20;border-style:solid;border-width:2px 2px 2px 2px;border-color:#231F20;border-radius:4px 4px 4px 4px;padding:6px 24px 6px 24px;}:root{--page-title-display:none;}@media(max-width:1600px){.elementor-7549 .elementor-element.elementor-element-2e23bec{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-7549 .elementor-element.elementor-element-ceae0aa{--justify-content:center;--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__list-item{font-size:18px;line-height:26px;}.elementor-7549 .elementor-element.elementor-element-2f89ce2{--padding-top:80px;--padding-bottom:80px;--padding-left:20px;--padding-right:20px;}}@media(max-width:1024px){.elementor-7549 .elementor-element.elementor-element-2e23bec{--padding-top:60px;--padding-bottom:60px;--padding-left:30px;--padding-right:30px;}.elementor-7549 .elementor-element.elementor-element-e7178e6 .elementor-heading-title{font-size:36px;line-height:42px;}.elementor-7549 .elementor-element.elementor-element-ceae0aa{--padding-top:60px;--padding-bottom:60px;--padding-left:30px;--padding-right:30px;}.elementor-7549 .elementor-element.elementor-element-e29445f{--flex-direction:column-reverse;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;}.elementor-7549 .elementor-element.elementor-element-2f89ce2{--padding-top:60px;--padding-bottom:60px;--padding-left:30px;--padding-right:30px;}.elementor-7549 .elementor-element.elementor-element-cb56d5a .elementor-heading-title{font-size:36px;line-height:42px;}}@media(max-width:767px){.elementor-7549 .elementor-element.elementor-element-2e23bec{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-7549 .elementor-element.elementor-element-e7178e6 .elementor-heading-title{font-size:32px;line-height:38px;}.elementor-7549 .elementor-element.elementor-element-ceae0aa{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-7549 .elementor-element.elementor-element-2f89ce2{--padding-top:40px;--padding-bottom:40px;--padding-left:20px;--padding-right:20px;}.elementor-7549 .elementor-element.elementor-element-cb56d5a .elementor-heading-title{font-size:32px;line-height:38px;}}@media(min-width:768px){.elementor-7549 .elementor-element.elementor-element-2e23bec{--content-width:1140px;}.elementor-7549 .elementor-element.elementor-element-09d8c04{--width:350px;}.elementor-7549 .elementor-element.elementor-element-1b562df{--width:calc(100% - 520px);}.elementor-7549 .elementor-element.elementor-element-afcc2fe{--width:200px;}.elementor-7549 .elementor-element.elementor-element-2f89ce2{--content-width:1140px;}.elementor-7549 .elementor-element.elementor-element-2890d46{--width:600px;}}@media(max-width:1024px) and (min-width:768px){.elementor-7549 .elementor-element.elementor-element-1b562df{--width:100%;}}@media(min-width:2400px){.elementor-7549 .elementor-element.elementor-element-c87ac67 .elementor-heading-title{font-size:24px;}.elementor-7549 .elementor-element.elementor-element-e4b51c6{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-0dc6fc4 .elementor-heading-title{font-size:24px;}.elementor-7549 .elementor-element.elementor-element-b01c80b{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-86349a7 .elementor-heading-title{font-size:24px;}.elementor-7549 .elementor-element.elementor-element-496382f{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-c946380 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-338d8d6{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-27c709b .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-ce7ca5b{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-bcd05ea .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-d1987d4{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-28b6fc8 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-ea51a02{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-f339446 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-fe66d7c{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-131bc63 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-37bb21b{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-b9ba313 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-6b737bc{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-382ec7d .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-14ce6a8{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-56d9a6f .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-48e5221{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-2176467 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-7a47f02{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-d5cb7f1 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-3568013{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-caa86e5 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-c2a7c87{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-c3e0e59 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-8b14f11{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-b2b303f .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-45ed26f{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-6c6aed3 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-013dfc5{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-b7ba3bb .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-14de68f{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-c69f0f3 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-83b5505{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-8aa9de7 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-8dc78dd{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-3664cca .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-afa6569{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-e68344f .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-65f7345{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-5fc59e5 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-bb20c97{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-080131d .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-a2d7fc2{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-d45240f .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-24c020a{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-656c652 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-af20a3d{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-b215f2f .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-44a990b{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-ffd9b61 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-9508e45{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-4a5c7b6 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-162175b{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-c4a7833 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-7f0fcd5{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-29d0332 .elementor-heading-title{font-size:20px;}.elementor-7549 .elementor-element.elementor-element-b5a6e7c{font-size:20px;}}/* Start custom CSS for heading, class: .elementor-element-e7178e6 */.elementor-7549 .elementor-element.elementor-element-e7178e6 h1 span{
    width: auto;
    height: auto;
    background-image: url(https://grokkingthesystemdesign.com/wp-content/uploads/2025/05/engineers-text-stroke.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    padding: 0 10px 0 10px;
    z-index: 1;
    opacity: 1;
    margin: 0 -10px;
}/* End custom CSS */
/* Start custom CSS for table-of-contents, class: .elementor-element-eb1b8e0 */.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__header{
    border-radius: 17px;
    box-shadow: 0px -0.5px 1px 2px #000;
    padding: 20px 40px;
}
.elementor-7549 .elementor-element.elementor-element-eb1b8e0 .elementor-toc__body{
    padding: 20px;
}
.elementor-7549 .elementor-element.elementor-element-eb1b8e0 li{
    margin-bottom: 20px;
}
.elementor-7549 .elementor-element.elementor-element-eb1b8e0 ul > li .e-fas-circle{
    display: none !important;
}
.elementor-7549 .elementor-element.elementor-element-eb1b8e0 ul > li ul li{
    list-style-type: disc;
    margin-left: 20px;

}
.elementor-7549 .elementor-element.elementor-element-eb1b8e0 ul > li ul li{
    margin-bottom: 20px;
    margin-top: 10px;
}

.elementor-7549 .elementor-element.elementor-element-eb1b8e0 ul > li ul:first-of-type{
    margin-top: 20px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-e4b51c6 */.elementor-7549 .elementor-element.elementor-element-e4b51c6 p:last-of-type{
    margin-bottom: 0;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-b01c80b */.elementor-7549 .elementor-element.elementor-element-b01c80b p:last-of-type{
    margin-bottom: 0;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-496382f */.elementor-7549 .elementor-element.elementor-element-496382f p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-496382f li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-338d8d6 */.elementor-7549 .elementor-element.elementor-element-338d8d6 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-338d8d6 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ce7ca5b */.elementor-7549 .elementor-element.elementor-element-ce7ca5b p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-ce7ca5b li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-d1987d4 */.elementor-7549 .elementor-element.elementor-element-d1987d4 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-d1987d4 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-ea51a02 */.elementor-7549 .elementor-element.elementor-element-ea51a02 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-ea51a02 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-fe66d7c */.elementor-7549 .elementor-element.elementor-element-fe66d7c p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-fe66d7c li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-37bb21b */.elementor-7549 .elementor-element.elementor-element-37bb21b p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-37bb21b li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-6b737bc */.elementor-7549 .elementor-element.elementor-element-6b737bc p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-6b737bc li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-14ce6a8 */.elementor-7549 .elementor-element.elementor-element-14ce6a8 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-14ce6a8 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-48e5221 */.elementor-7549 .elementor-element.elementor-element-48e5221 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-48e5221 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7a47f02 */.elementor-7549 .elementor-element.elementor-element-7a47f02 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-7a47f02 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-3568013 */.elementor-7549 .elementor-element.elementor-element-3568013 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-3568013 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-c2a7c87 */.elementor-7549 .elementor-element.elementor-element-c2a7c87 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-c2a7c87 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8b14f11 */.elementor-7549 .elementor-element.elementor-element-8b14f11 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-8b14f11 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-45ed26f */.elementor-7549 .elementor-element.elementor-element-45ed26f p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-45ed26f li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-013dfc5 */.elementor-7549 .elementor-element.elementor-element-013dfc5 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-013dfc5 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-14de68f */.elementor-7549 .elementor-element.elementor-element-14de68f p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-14de68f li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-83b5505 */.elementor-7549 .elementor-element.elementor-element-83b5505 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-83b5505 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-8dc78dd */.elementor-7549 .elementor-element.elementor-element-8dc78dd p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-8dc78dd li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-afa6569 */.elementor-7549 .elementor-element.elementor-element-afa6569 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-afa6569 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-65f7345 */.elementor-7549 .elementor-element.elementor-element-65f7345 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-65f7345 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-bb20c97 */.elementor-7549 .elementor-element.elementor-element-bb20c97 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-bb20c97 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-a2d7fc2 */.elementor-7549 .elementor-element.elementor-element-a2d7fc2 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-a2d7fc2 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-24c020a */.elementor-7549 .elementor-element.elementor-element-24c020a p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-24c020a li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-af20a3d */.elementor-7549 .elementor-element.elementor-element-af20a3d p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-af20a3d li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-44a990b */.elementor-7549 .elementor-element.elementor-element-44a990b p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-44a990b li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-9508e45 */.elementor-7549 .elementor-element.elementor-element-9508e45 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-9508e45 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-162175b */.elementor-7549 .elementor-element.elementor-element-162175b p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-162175b li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-7f0fcd5 */.elementor-7549 .elementor-element.elementor-element-7f0fcd5 p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-7f0fcd5 li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for text-editor, class: .elementor-element-b5a6e7c */.elementor-7549 .elementor-element.elementor-element-b5a6e7c p:last-of-type{
    margin-bottom: 0;
}

.elementor-7549 .elementor-element.elementor-element-b5a6e7c li{
    margin-top: 10px;
}/* End custom CSS */
/* Start custom CSS for heading, class: .elementor-element-cb56d5a */.elementor-7549 .elementor-element.elementor-element-cb56d5a h2 span{
    width: auto;
    height: auto;
    background-image: url(https://grokkingthesystemdesign.com/wp-content/uploads/2025/05/engineers-text-stroke.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center;
    padding: 0 10px 0 10px;
    z-index: 1;
    opacity: 1;
    margin: 0 -10px;
}/* End custom CSS */