/* Desktop layout — section positions follow the 1440px Figma artboard. */
html{scroll-behavior:smooth}
.desktop{height:auto;min-height:10018px;background:#ececec;border-radius:0;overflow:hidden}
.banner{inset:0 0 auto;height:1754px;background:var(--surface);border-radius:0 0 32px 32px;overflow:hidden}
h2,h3,p,figure,blockquote{margin:0}
button,input,textarea{font:inherit}
button{cursor:pointer}
button:disabled{cursor:default}
button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,.portfolio-scroll:focus-visible{outline:3px solid #0059ff;outline-offset:5px}
.section-title{font:700 50px/62px Unbounded,sans-serif;text-align:center;text-transform:uppercase;color:var(--ink)}
.section-copy{font:400 16px/24px Inter,sans-serif;letter-spacing:-.16px;text-align:center;color:var(--body)}
.section-badge{position:absolute;left:50%;transform:translateX(-50%);height:36px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 16px;border-radius:8px;background:#f5f5f5;color:#0059ff;font:600 16px/24px Urbanist,sans-serif;white-space:nowrap;box-shadow:inset 0 1px 0 #ffffffb3,inset 0 -3px 0 #e9e9e9,0 3px 1.5px #00000024}
.section-badge>span{width:6px;height:6px;border-radius:50%;background:currentColor}
.section-badge.red{color:#fd3a25}
.soft-card{background:#f4f4f5;border-radius:22px;box-shadow:inset 0 4px 0 #ffffff99,inset 0 -8px 0 #0000000d,0 3px 3px #0000001a,0 7.77px 16px #0000000f}
.ribbons{position:relative;margin-top:1680px;height:415px;pointer-events:none}
.ribbon{position:absolute;top:171px;left:50%;display:flex;align-items:center;gap:32px;padding:16px;white-space:nowrap;color:#fff;font:400 32px/40px 'Cal Sans',sans-serif}
.ribbon img{flex:none;width:16px;height:16px}
.ribbon.back{background:black;filter:blur(3px);transform:translateX(-50%) rotate(-3deg)}
.ribbon.front{background:#0059ff;transform:translateX(-50%) rotate(6deg)}
.testimonials{position:relative;height:873px;margin-top:-187px}
.testimonials .eyebrow{position:absolute;top:112px;width:100%;text-align:center;font-size:14px;line-height:20px;letter-spacing:-.14px;color:var(--body)}
.art-heading{position:absolute;top:180px;left:156px;width:1128px;height:153px;mask-image:linear-gradient(#0006,transparent);overflow:visible}
.art-heading img{position:absolute;left:-24px;top:-8px;width:1176px;height:201px}
.testimonial-grid{position:absolute;top:301px;left:156px;display:grid;grid-template-columns:360px 744px;gap:24px}
.stats,.quote-card{height:460px;border-radius:24px;box-shadow:inset 0 4px 16px #ffffff29,inset 0 .5px .5px #ffffff3d,0 12px 12px -6px #1a1a1a1f,0 5px 5px -2px #1a1a1a0f,0 2px 2px -1px #1a1a1a14}
.stats{padding:32px;background:black;color:white;display:flex;flex-direction:column;gap:48px}
.stats strong{display:block;font:700 80px/80px Unbounded,sans-serif}
.stats span{display:block;font-size:14px;line-height:20px;letter-spacing:-.14px}
.quote-card{padding:40px;position:relative;background:#7a7a7a;color:white}
.quote-count{font-size:14px;line-height:20px;width:48px;white-space:nowrap;padding-bottom:16px;border-bottom:1px solid #ffffff33}
.quote-count span{color:#ffffffa3}
.quote-bottom{position:absolute;left:40px;right:40px;bottom:40px}
.quote-bottom blockquote{font:400 28px/36px 'Cal Sans',sans-serif;margin-bottom:40px}
.quote-footer{display:flex;align-items:flex-end;justify-content:space-between}
.quote-footer p{font-size:16px;line-height:24px;font-weight:500}
.quote-footer small{display:block;font-size:14px;line-height:20px;font-weight:400;color:#ffffffa3}
.quote-controls{display:flex;gap:8px}
.quote-controls button{display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:50%;background:#ffffff29;box-shadow:inset 0 4px 16px #ffffff29,inset 0 .5px .5px #ffffff3d}
.quote-controls img{width:16px;height:16px}
.portfolio{position:relative;height:1341px;margin-top:-22px}
.portfolio .section-badge{top:29px}
.portfolio .section-title{position:absolute;left:132px;top:98px;width:1176px}
.portfolio .section-title span{color:white}
.portfolio-highlight{position:absolute;left:172px;top:162px;width:452px;height:59px}
.portfolio .section-copy{position:absolute;left:291px;top:230px;width:848px}
.service-tags{position:absolute;top:322px;left:0;right:0;display:flex;justify-content:center;gap:18px;list-style:none;margin:0;padding:0}
.service-tags li{border:1px solid #b0b0b0;border-radius:200px;background:#fff;padding:17.239px 18.881px;font:500 18px/20.522px Poppins,sans-serif;white-space:nowrap;color:#000}
.service-tags li:nth-child(-n+2){min-width:161.761px;text-align:center}
.portfolio-scroll{position:absolute;top:430px;left:31.5px;right:0;height:864px;overflow-x:auto;overflow-y:hidden;scrollbar-width:thin;scrollbar-color:#b9b9c0 transparent}
.portfolio-grid{position:relative;width:1692px;height:850px}
.work-card{position:absolute;width:401px;border-radius:30px;overflow:hidden}
.work-card img{width:100%;height:100%;object-fit:cover}
.work-1{left:0;top:0}.work-2{left:0;top:481px}.work-3{left:430px;top:0}.work-4{left:430px;top:397px}.work-5{left:860.55px;top:0}.work-6{left:860.55px;top:481px}.work-7{left:1291px;top:0}.work-8{left:1291px;top:397px}
.work-3 img{position:absolute;top:-40.94%;height:153.69%;object-fit:fill}
.process{position:relative;width:1328px;height:812px;margin:63px auto 0}
.process .section-badge{top:38px;left:648.5px}
.process .section-title{position:absolute;left:69px;top:105px;width:1176px}
.process .section-title span{color:white}
.process-highlight{position:absolute;left:791px;top:109px;width:194px;height:59px}
.process-grid{position:absolute;top:272px;left:-8px;display:grid;grid-template-columns:repeat(4,324px);gap:16px}
.process-card{height:418px;position:relative;overflow:hidden;color:#09090b}
.process-icon{position:absolute;left:18px;top:14px;object-fit:cover}
.process-card:nth-child(2) .process-icon{left:15px;top:15px}.process-card:nth-child(3) .process-icon{left:17px;top:15px}.process-card:nth-child(4) .process-icon{left:18px;top:3px}
.process-card h3{position:absolute;left:32px;top:149px;font:600 22px/32px Unbounded,sans-serif;letter-spacing:-.22px;text-transform:uppercase}
.card-rule{position:absolute;left:32px;right:32px;top:233px;height:1px;background:linear-gradient(to right,transparent,#dcdcdc,transparent)}
.process-card p{position:absolute;left:32px;right:32px;top:253px;font-size:16px;line-height:24px;color:#5c5c5c}
.process-card:last-child p{width:223px}
.step-number{position:absolute;left:32px;top:333px;font:600 52px/72px Unbounded,sans-serif;letter-spacing:-1.56px;color:#a1a1aa;opacity:.5}
.pricing{position:relative;width:1408px;height:1215px;margin:0 auto;background:#09090b;overflow:hidden;border-radius:40px;color:white}
.pricing-light{position:absolute;top:0;left:0;width:1408px;height:350px}
.pricing .section-badge{top:120px;background:#18181b;box-shadow:inset 0 1px 0 #ffffff4d,inset 0 -3px 0 #080808,0 3px 1.5px #00000024}
.pricing h2{position:absolute;top:188px;left:0;width:100%;text-align:center;font:600 52px/72px Unbounded,sans-serif;letter-spacing:-1.56px;text-transform:uppercase;background:linear-gradient(116deg,#d2d2d2,#eaeaea);background-clip:text;color:transparent}
.plans{position:absolute;top:396px;left:56px;display:grid;grid-template-columns:repeat(3,416px);gap:24px}
.plan{position:relative;height:656px;border-radius:16px;overflow:hidden;background:radial-gradient(ellipse at 28% -10%,#ffffff1a,transparent 70%),#18181b;box-shadow:inset 0 4px 0 #ffffff1a,inset 0 -8px 0 #111,0 3px 3px #0000001a,0 7.77px 2.214px #0000000f}
.plan.featured{outline:2px solid #0059ff;outline-offset:-2px}
.plan-label{position:absolute;left:11px;top:9px;width:398px;height:60px;padding:20px;display:flex;align-items:center;justify-content:space-between;background:#151515;border-radius:12px}
.plan-label small{font:400 14px/20px Archivo,sans-serif}
.plan-label strong{font:700 14px/20px Unbounded,sans-serif;text-transform:uppercase}
.plan-label img{width:12px;height:12px}
.featured .plan-label{background:#0059ff}
.plan h3{position:absolute;left:24px;top:101px;font:700 32px/37px Unbounded,sans-serif;letter-spacing:-2px;text-transform:uppercase}
.plan-description{position:absolute;left:24px;top:187px;width:328px;font-size:16px;line-height:24px;color:#bbb}
.plan:first-child .plan-description{width:292px}
.plan-price{position:absolute;left:24px;top:258px;display:flex;align-items:baseline;gap:5px}
.plan-price strong{font:700 60px/72px Unbounded,sans-serif;letter-spacing:-3px}
.plan-price span{font-size:16px;line-height:24px;color:#bbb}
.plan ul{position:absolute;left:24px;top:348px;width:373px;margin:0;padding:17px 0 0 24px;border-top:1px solid #ffffff33;font-size:16px;line-height:24px;color:#bbb}
.plan-button{position:absolute;left:24px;top:565px;width:373px;height:58px;padding:4px 4px 4px 20px;display:flex;align-items:center;justify-content:space-between;border-radius:1000px;background:#151515;font:700 16px/24px Unbounded,sans-serif;text-transform:uppercase}
.plan-button>span{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:white}
.plan-button img{width:20px;height:20px}
.featured .plan-button{background:white;color:var(--ink)}
.featured .plan-button>span{background:#0059ff}
.plan-button:hover{outline:2px solid #0059ff}
.pricing-notch{position:absolute;left:369px;bottom:-34px;width:670px;height:67px}
.comparison{position:relative;width:1296px;height:1117px;margin:56px auto 0}
.comparison .section-badge{top:62px}
.comparison .section-title{position:absolute;top:115px;left:60px;width:1176px}
.comparison .section-copy{position:absolute;left:297px;top:254px;width:702px}
.comparison-table{position:absolute;left:147px;top:363px;width:995px}
.comparison-head{height:80px;display:grid;grid-template-columns:486px 486px;gap:23px;align-items:start}
.comparison-head h3{padding-top:6px;font:700 22px/62px Unbounded,sans-serif;text-transform:uppercase}
.comparison-row{display:grid;grid-template-columns:486px 486px;gap:23px;margin-bottom:30px}
.comparison-cell{height:50px;border-radius:12px;padding:0 22px;display:flex;align-items:center;gap:14px;font-size:16px;line-height:20px;font-weight:600;white-space:nowrap;box-shadow:inset 0 4px 0 #ffffff99,inset 0 -8px 0 #0000000d,0 3px 1.5px #0000001a,0 7.77px 8px #0000000f}
.comparison-cell.negative{color:#0d152ab3}
.check{position:relative;flex:none;width:22px;height:22px}
.check img{width:22px;height:22px}
.check b{position:absolute;inset:0;display:grid;place-items:center;color:white;font-size:11px;line-height:14px}
.comparison-cta{position:absolute;top:965px;left:478px;width:340px}
.faqs{position:relative;width:1364px;height:840px;margin:0 auto;display:grid;grid-template-columns:461px 778px;column-gap:0;padding:36px 0 0 56px}
.faq-sidebar{position:relative}
.faq-sidebar .section-badge{left:0;top:0;transform:none}
.faq-sidebar .section-title{position:absolute;left:0;top:70px;text-align:left;width:451px}
.faq-help{position:absolute;left:0;top:287px;width:409px;height:325px;overflow:hidden}
.faq-help>img{position:absolute;left:35px;top:17px;width:116px;height:125px;object-fit:cover}
.faq-help h3{position:absolute;left:32px;top:149px;font:600 22px/32px Unbounded,sans-serif;letter-spacing:-.22px;text-transform:uppercase;color:#09090b}
.faq-help .button{position:absolute;left:27px;top:233px;width:280px;box-shadow:inset 0 1px 0 #ffffff4d,inset 0 -3px 0 #003495,0 12.522px 5.009px #00000024,0 6.65px 2.66px #00000021,0 2.767px 1.107px #0000001f}
.faq-list{display:flex;flex-direction:column;gap:16px;padding-bottom:0;position:relative;z-index:1}
.faq-item{border-radius:24px;color:#09090b;min-height:80px}
.faq-item summary{list-style:none;display:flex;justify-content:space-between;align-items:center;gap:18px;padding:24px 40px;font:600 18px/28px Inter,sans-serif;cursor:pointer}
.faq-item:first-child summary{font-family:Urbanist,sans-serif}
.faq-item summary::-webkit-details-marker{display:none}
.faq-toggle{display:grid;place-items:center;width:32px;height:32px;flex:none;border-radius:50%;background:radial-gradient(ellipse at 28% -10%,#ffffff33,transparent 70%),#272727;box-shadow:inset 0 1px 0 #ffffff4d,inset 0 -3px 0 #080808,0 3px 1.5px #00000024}
.faq-toggle img{width:16px;height:16px}
.faq-toggle .minus,.faq-item[open] .plus{display:none}
.faq-item[open] .minus{display:block}
.faq-answer{margin:0 40px;padding:15px 0 24px;border-top:1px solid #e5e5e5;font:400 16px/24px Inter,sans-serif;max-width:698px}
.faq-answer>a{color:#0059ff;text-decoration:underline}
.contact{position:relative;height:700px}
.contact-art{position:absolute;left:156px;top:112px;width:1128px;height:219px;mask-image:linear-gradient(#0006,transparent)}
.contact-art img{position:absolute;left:-24px;top:-8px;width:1176px;height:267px}
.contact-panel{position:absolute;top:267px;left:8px;width:1424px;height:700px;overflow:hidden;border-radius:32px;background:radial-gradient(ellipse 910px 468px at 50% 0,#ffffff1f,transparent),#0c0c0c;color:white}
.contact-content{position:absolute;left:148px;top:112px;width:1128px;display:flex;justify-content:space-between}
.contact-content>div{width:456px}
.contact-content h3{font:400 64px/68px 'Cal Sans',sans-serif}
.contact-content>div p{font-size:14px;line-height:20px;letter-spacing:-.14px;color:#ffffffa3;margin-top:16px}
#contact-form{width:456px}
#contact-form input,#contact-form textarea{display:block;width:100%;height:40px;margin:0 0 32px;padding:0 0 16px;background:transparent;border:0;border-bottom:1px solid #ffffff33;border-radius:0;color:white;font:500 16px/24px Inter,sans-serif;letter-spacing:-.16px;resize:none}
#contact-form input::placeholder,#contact-form textarea::placeholder{color:#ffffffa3;opacity:1}
#contact-form textarea{margin-bottom:64px}
.send-button{width:100%;height:44px;border:0;border-radius:999px;color:#ffffffcc;background:#353535;font:500 14px/20px Inter,sans-serif;box-shadow:inset 0 4px 16px #ffffff29,inset 0 .5px .5px #ffffff3d,0 12px 12px -6px #1a1a1a1f}
.send-button:hover{background:#454545}
.form-status{margin-top:16px;color:#fff;font-size:14px;line-height:20px}
.email-strip{position:absolute;left:148px;top:628px;width:1128px;height:40px;overflow:hidden;mask-image:linear-gradient(to right,transparent,#000 18%,#000 82%,transparent)}
.email-strip>div{position:absolute;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:32px;white-space:nowrap;font:400 32px/40px 'Cal Sans',sans-serif}
.email-strip>div>span>span{color:#ff4d00}
.email-strip img{width:16px;height:16px;flex:none}
.footer{position:relative;height:816px}
.footer-panel{position:absolute;left:8px;top:8px;width:1424px;height:800px;overflow:hidden;border-radius:32px;background:#191919;color:#fff}
.footer-columns{position:absolute;left:148px;top:112px;display:grid;grid-template-columns:repeat(3,264px);gap:24px;z-index:1}
.footer-columns h2{font:400 14px/20px Inter,sans-serif;letter-spacing:-.14px;color:#ffffffa3;margin-bottom:16px}
.footer-columns a,.footer-columns span{display:block;font:400 24px/32px 'Cal Sans',sans-serif;margin-bottom:8px}
.footer-columns a:hover{color:#8fb8ff}
.footer-meta{position:absolute;left:148px;top:468px;width:1128px;display:flex;align-items:center;justify-content:space-between;font-size:14px;line-height:20px;color:#ffffffa3;letter-spacing:-.14px;z-index:1}
.footer-meta>span:first-child,.footer-meta>a{width:264px}
.footer-meta>a{text-align:right}
.footer-wordmark{position:absolute;left:148px;top:504px;width:1128px;height:388px}
.footer-lights{position:absolute;left:168.4px;top:-1220px;width:2026px;height:1630px;pointer-events:none}
.footer-blur{position:absolute;left:0;right:0;bottom:0;height:100px;backdrop-filter:blur(24px);mask-image:linear-gradient(transparent,#000 70%);pointer-events:none}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.footer-wordmark{font:400 202px/388px "Cal Sans",sans-serif;letter-spacing:-7px;white-space:nowrap;background:linear-gradient(#e0e0e0,#8a8a8a);background-clip:text;color:transparent;text-align:center}

.faq-item[open] summary{padding-bottom:16px}
