@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-300.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-600.woff2") format("woff2");font-weight:600;font-style:normal;font-display:swap}
@font-face{font-family:"Manrope";src:url("assets/fonts/manrope-700.woff2") format("woff2");font-weight:700;font-style:normal;font-display:swap}

:root{
  --ink:#101014;
  --body:#3D3D47;
  --muted:#D0D1DB;
  --surface:#FAFAFA;
  --surface-blue:#E9ECF2;
  --line:#E6E6E6;
  --red:#FF2244;
}

*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:"Manrope",sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,p{margin:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,input,textarea{font-family:inherit}
:focus-visible{outline:2px solid #7A7A85;outline-offset:3px}
.contact-card :focus-visible{outline-color:#D0D1DB}
[hidden]{display:none!important}
.mob-only{display:none}

.container{width:100%;max-width:1440px;margin:0 auto;padding:0 80px}

.pill{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:50px;background:var(--ink);color:#fff;font-size:16px;font-weight:500;line-height:1;letter-spacing:.5px;white-space:nowrap}

.section-head{width:100%;max-width:640px;margin:0 auto;text-align:center}
.section-head h2{margin-top:7px;font-size:50px;line-height:55px;font-weight:500;letter-spacing:-.8px}
.section-head p{max-width:620px;margin:20px auto 0;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--body)}

.btn{display:inline-flex;align-items:center;gap:30px;height:60px;padding:0 12px 0 26px;border:0;border-radius:50px;font-size:16px;font-weight:500;line-height:1.3;white-space:nowrap;cursor:pointer;transition:background .25s ease}
.btn .arrow{flex:none;display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;transition:transform .3s ease}
.btn .arrow svg{width:20px;height:20px;transition:transform .3s ease}
.btn:hover .arrow svg{transform:translate(2px,-2px)}
.btn-hero{background:rgba(255,255,255,.1);color:#fff;margin-top:40px}
.btn-hero:hover{background:rgba(255,255,255,.17)}
.btn-hero .arrow{background:#fff;color:var(--ink)}
.btn-dark{background:rgba(16,16,20,.1);color:var(--ink);margin-top:40px}
.btn-dark:hover{background:rgba(16,16,20,.17)}
.btn-dark .arrow{background:var(--ink);color:#fff}

/* Header */
.site-header{position:absolute;top:45px;left:0;right:0;z-index:30;color:#fff}
.header-inner{width:100%;max-width:1440px;margin:0 auto;padding:0 80px;height:38px;display:flex;align-items:center;justify-content:space-between}
.logo img{width:64px;height:24px}
.desktop-nav{display:flex;align-items:center;gap:32px}
.desktop-nav a{padding:10px;font-size:18px;font-weight:500;line-height:1;color:#fff;transition:opacity .2s}
.desktop-nav a:hover{opacity:.65}
.mobile-header,.mobile-menu{display:none}

/* Hero */
.hero{background:var(--ink);color:#fff;overflow:hidden}
.hero-inner{position:relative;max-width:1440px;height:1000px;margin:0 auto}
.hero-media{position:absolute;top:30px;right:30px;width:43.125%;height:calc(100% - 60px);border-radius:10px;overflow:hidden;background:#1a1a1e}
.hero-media img{width:100%;height:100%;object-fit:cover}
.hero-media::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(180deg,rgba(8,8,10,.5) 0%,rgba(8,8,10,0) 25%,rgba(8,8,10,0) 68%,rgba(8,8,10,.42) 100%)}
.hero-content{position:absolute;left:80px;top:289px;width:576px}
.availability{display:inline-flex;align-items:center;gap:8px;height:30px;padding:0 13px;border-radius:50px;background:rgba(255,255,255,.08);font-size:14px;line-height:1;color:var(--muted)}
.availability .dot{width:6px;height:6px;border-radius:50%;background:var(--muted)}
.hero h1{margin-top:5px;font-size:58px;line-height:1.2;font-weight:500;letter-spacing:-1px}
.hero-content > p{max-width:476px;margin-top:29px;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--muted)}
.hero-review{position:absolute;right:50px;bottom:50px;width:280px;padding:20px 30px 30px;border-radius:10px;background:rgba(16,16,20,.35);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);display:flex;flex-direction:column;gap:10px}
.stars{display:flex;align-items:center;gap:4px;line-height:1;color:#fff}
.stars svg{width:20px;height:20px;fill:currentColor;flex:none}
.hero-review p{font-size:16px;line-height:20.8px;letter-spacing:-.1px;color:#fff}

/* About */
.about{margin-top:150px;overflow:hidden}
.about-intro{display:flex;align-items:flex-start;justify-content:space-between}
.about-title{width:384px;flex:none}
.about-title h2{margin-top:7px;font-size:50px;line-height:55px;font-weight:500;letter-spacing:-.8px}
.about-copy{width:768px}
.about-copy p{margin-top:2px;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--body)}

.ticker{margin-top:100px;margin-left:-10px;overflow:hidden}
.ticker-track{display:flex;width:max-content;animation:tickerMove 70s linear infinite}
.ticker-group{display:flex;gap:32px;padding-right:32px}
.ticker-group img{flex:none;width:400px;height:500px;object-fit:cover}
.ticker-group img.w-407{width:407px}
.ticker:hover .ticker-track{animation-play-state:paused}
@keyframes tickerMove{from{transform:translateX(0)}to{transform:translateX(-50%)}}

.stats{display:grid;grid-template-columns:repeat(4,230px);gap:120px;margin-top:100px}
.stat-number{font-size:72px;line-height:72px;font-weight:300;letter-spacing:-.8px}
.stat h3{margin-top:20px;font-size:20px;line-height:30px;font-weight:600;letter-spacing:-.2px}
.stat p{margin-top:4px;font-size:16px;line-height:20.8px;letter-spacing:-.1px;color:var(--body)}

/* Services */
.services{margin-top:150px;padding:100px 0;background:var(--surface)}
.section-head .pill + h2{margin-top:7px}
.service-body{display:flex;align-items:flex-start;gap:60px;margin-top:60px}
.service-media{position:relative;flex:none;width:610px;height:686px;border-radius:12px;overflow:hidden;background:#e6e2db}
.service-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .5s ease}
.service-media img.active{opacity:1}
.accordion{flex:none;width:610px;margin-top:20px}
.acc-item{border-bottom:1px solid #E4E4E7}
.acc-btn{display:flex;align-items:center;gap:20px;width:100%;height:80px;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}
.acc-icon{flex:none;width:40px;height:40px;object-fit:contain}
.acc-btn h3{flex:1;font-size:22px;line-height:30.8px;font-weight:500;letter-spacing:-.2px}
.plus{position:relative;flex:none;width:22px;height:22px;transition:transform .3s ease}
.plus::before,.plus::after{content:"";position:absolute;left:50%;top:50%;background:currentColor;transform:translate(-50%,-50%);border-radius:1px}
.plus::before{width:18px;height:1.5px}
.plus::after{width:1.5px;height:18px}
.acc-item.open .plus,.faq-item.open .plus{transform:rotate(45deg)}
.acc-panel{max-height:0;overflow:hidden;transition:max-height .45s ease}
.acc-item.open .acc-panel{max-height:500px}
.acc-panel p{max-width:550px;padding-bottom:30px;font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--body)}

/* Work */
.work{padding:150px 0 220px}
.work .section-head{margin-bottom:220px}
.project-card{display:flex;gap:70px;padding:30px 60px 30px 30px;background:var(--surface-blue);border-radius:12px;min-height:560px}
.project-card + .project-card{margin-top:440px}
.project-media{flex:none;width:400px;height:500px;border-radius:10px;overflow:hidden;background:#d9dde5}
.project-media img{width:100%;height:100%;object-fit:cover}
.project-content{width:720px;max-width:720px;padding-top:30px}
.project-content > h3{font-size:42px;line-height:46.2px;font-weight:500;letter-spacing:-1px;color:var(--ink)}
.project-desc{max-width:620px;margin-top:20px;font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--body)}
.tags{display:flex;gap:10px;margin-top:44px}
.tags span{display:inline-flex;align-items:center;height:30px;padding:0 12px;border-radius:50px;background:var(--ink);color:#fff;font-size:14px;line-height:1}
.project-quote{display:flex;gap:12px;margin-top:8px;max-width:720px}
.quote-mark{flex:none;font-family:Georgia,"Times New Roman",serif;font-size:40px;line-height:26px;color:var(--ink)}
.project-quote p{font-size:20px;line-height:28px;letter-spacing:-.2px;color:var(--body)}
.project-author{display:flex;align-items:center;gap:10px;margin-top:20px;font-size:16px;line-height:20.8px;letter-spacing:-.1px;color:var(--ink)}
.project-author img{width:40px;height:40px;border-radius:50%;object-fit:cover}
.project-card.dark{background:var(--ink)}
.project-card.dark .project-content > h3,.project-card.dark .project-author{color:#fff}
.project-card.dark .project-desc,.project-card.dark .project-quote p{color:var(--muted)}
.project-card.dark .quote-mark{color:#fff}
.project-card.dark .tags span{background:rgba(255,255,255,.1)}

/* Testimonials */
.testimonials{position:relative;margin-top:150px;padding:5px 0 0;overflow:hidden}
.testi-head{max-width:637px;margin:0 auto;text-align:center}
.testi-head h2{margin-top:2px;font-size:50px;line-height:55px;font-weight:500;letter-spacing:-.8px}
.testi-head p{max-width:620px;margin:20px auto 0;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--body)}
.testi-rows{display:flex;flex-direction:column;gap:32px;margin-top:60px}
.marquee{overflow:hidden}
.row-left{margin-left:-7px}
.row-right{margin-left:6px}
.marquee-track{display:flex;width:max-content}
.marquee-group{display:flex;gap:32px;padding-right:32px}
.row-left .marquee-track{animation:marqueeLeft 70s linear infinite}
.row-right .marquee-track{animation:marqueeRight 70s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
@keyframes marqueeLeft{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@keyframes marqueeRight{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.review-card{flex:none;width:400px;height:300px;padding:30px 40px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--ink);display:flex;flex-direction:column}
.review-card.blue{background:var(--surface-blue)}
.review-card .stars{color:var(--ink)}
.review-card > p{margin-top:10px;font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--body)}
.review-author{display:flex;align-items:center;gap:10px;margin-top:auto;font-size:18px;line-height:27px}
.review-author img{width:40px;height:40px;border-radius:50%;object-fit:cover;background:#ddd}
.testi-carousel,.testi-dots{display:none}

/* FAQ */
.faqs{margin-top:150px;padding:5px 0 0}
.faq-grid{display:grid;grid-template-columns:407px 812px;gap:61px;align-items:start}
.faq-intro .pill{height:30px}
.faq-intro h2{margin-top:2px;font-size:50px;line-height:55px;font-weight:500;letter-spacing:-.8px}
.faq-intro > p{max-width:407px;margin-top:10px;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--body)}
.faq-list{margin-top:-4px}
.faq-item{padding:19px 24px;background:var(--surface);border:1px solid var(--line);border-radius:10px;transition:background .25s}
.faq-item + .faq-item{margin-top:20px}
.faq-q{display:flex;align-items:center;justify-content:space-between;gap:20px;width:100%;padding:0;border:0;background:none;color:var(--ink);text-align:left;cursor:pointer}
.faq-q h3{font-size:22px;line-height:30.8px;font-weight:500;letter-spacing:-.2px}
.faq-q .plus{width:22px;height:22px}
.faq-a{max-height:0;overflow:hidden;transition:max-height .45s ease}
.faq-item.open .faq-a{max-height:260px}
.faq-a p{max-width:743px;margin-top:20px;margin-bottom:10px;font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--body)}

/* Contact */
.contact{margin-top:150px;padding:0 20px}
.contact-card{max-width:1400px;margin:0 auto;padding:53px 60px 57px;background:var(--ink);border-radius:20px;color:#fff;display:grid;grid-template-columns:590px 590px;justify-content:space-between;gap:100px}
.contact-info{padding-top:12px}
.contact-info .pill{background:rgba(255,255,255,.1)}
.contact-info h2{margin-top:2px;font-size:50px;line-height:55px;font-weight:500;letter-spacing:-.8px}
.contact-lead{max-width:590px;margin-top:20px;font-size:22px;line-height:33px;letter-spacing:-.3px;color:var(--muted)}
.contact-lines{margin-top:42px}
.contact-row{display:flex;align-items:flex-start;justify-content:space-between;gap:24px}
.contact-row + .contact-row{margin-top:20px}
.contact-label{font-size:18px;line-height:27px;font-weight:600;letter-spacing:-.1px;color:#fff}
.contact-value{font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--muted)}
a.contact-value{transition:color .2s}
a.contact-value:hover{color:#fff}
.contact-social{margin-top:45px;padding-top:24px;border-top:1px solid rgba(255,255,255,.12)}
.contact-social .contact-label{display:block}
.social-icons{display:flex;align-items:center;gap:16px;margin-top:12px}
.social-icons a{display:flex;align-items:center;justify-content:center;width:24px;height:24px;color:#fff;transition:opacity .2s}
.social-icons a:hover{opacity:.6}
.social-icons svg{width:24px;height:24px}

.contact-form{width:590px;padding:27px 30px 17px;background:#fff;border-radius:12px;color:var(--ink);align-self:start}
.contact-form label{display:flex;flex-direction:column;gap:24px;margin-bottom:8px;font-size:16px;line-height:16px;font-weight:500;letter-spacing:-.1px}
.contact-form label > span:first-child{height:16px}
.req{color:var(--red);margin-left:1px}
.contact-form input,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:6px;background:var(--surface);padding:11px 13px;font-size:16px;line-height:20.8px;color:var(--ink);outline:none;transition:border-color .2s,background .2s}
.contact-form input{height:46px}
.contact-form textarea{height:140px;resize:none}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#9A9AA1;opacity:1}
.contact-form input:focus,.contact-form textarea:focus{border-color:#b9b9c0;background:#fff}
.contact-form .invalid{border-color:var(--red)}
.contact-form button{width:100%;height:46px;margin-top:16px;border:0;border-radius:6px;background:rgba(16,16,20,.75);color:#fff;font-size:16px;font-weight:500;line-height:20.8px;cursor:pointer;transition:background .25s}
.contact-form button:hover{background:rgba(16,16,20,.9)}

/* Footer */
.footer{padding:10px 20px 0}
.footer-card{max-width:1400px;min-height:368px;margin:0 auto;padding:60px 60px 39px;background:var(--ink);border-radius:10px 10px 0 0;color:#fff;display:flex;flex-direction:column}
.footer-top{display:flex;align-items:flex-start;justify-content:space-between}
.footer-logo img{width:108px;height:40px}
.quick-links{width:320px}
.quick-links h3{font-size:24px;line-height:26.4px;font-weight:500;letter-spacing:-.4px}
.footer-links{display:grid;grid-template-columns:200px auto;row-gap:10px;margin-top:21px}
.footer-links a{font-size:18px;line-height:27px;letter-spacing:-.1px;color:var(--muted);transition:color .2s}
.footer-links a:hover{color:#fff}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:auto;padding-top:28px;border-top:1px solid rgba(255,255,255,.12);font-size:16px;line-height:20.8px;letter-spacing:-.1px}
.credit{color:#fff}

/* Reveal */
.reveal{opacity:0;transform:translateY(22px);transition:opacity .75s cubic-bezier(.22,.61,.36,1),transform .75s cubic-bezier(.22,.61,.36,1)}
.reveal.visible{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .ticker-track,.marquee-track{animation:none!important}
  .reveal{opacity:1;transform:none;transition:none}
}

/* Tablet */
@media (max-width:1199px){
  .container{padding:0 40px}
  .header-inner{padding:0 40px}
  .hero-content{left:40px;width:52%}
  .hero h1{font-size:50px;line-height:1.18}
  .hero-review{right:30px}
  .about-copy{width:58%}
  .about-title{width:36%}
  .stats{grid-template-columns:repeat(4,1fr);gap:40px}
  .service-media{width:46%;height:auto;aspect-ratio:610/686}
  .accordion{width:auto;flex:1;min-width:0}
  .project-card{gap:40px;padding:25px 40px 25px 25px}
  .project-media{width:34%;height:auto;aspect-ratio:400/500}
  .project-content{width:auto;flex:1;min-width:0}
  .project-card + .project-card{margin-top:120px}
  .work .section-head{margin-bottom:100px}
  .work{padding:120px 0 120px}
  .contact-card{grid-template-columns:1fr 1fr;gap:50px;padding:45px 40px}
  .contact-form{width:100%}
  .faq-grid{grid-template-columns:34% 1fr;gap:40px}
  .faq-intro h2{font-size:42px;line-height:48px}
  .footer-card{padding:50px 40px 30px}
}

/* Mobile */
@media (max-width:809px){
  .container{padding:0 40px}
  .site-header{display:none}
  .mob-only{display:inline}
  .desk-only{display:none}

  section[id]{scroll-margin-top:100px}
  .mobile-header{display:flex;position:fixed;z-index:100;top:30px;left:30px;right:30px;height:50px;padding:0 20px;align-items:center;justify-content:space-between;border-radius:10px;background:rgba(40,40,44,.72);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .mobile-header .logo img{width:50px;height:auto}
  .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;width:26px;height:26px;padding:0;border:0;background:none;cursor:pointer}
  .menu-toggle span{display:block;height:1.5px;width:24px;background:#fff;border-radius:2px}
  .mobile-menu{display:flex;position:fixed;z-index:110;inset:0;flex-direction:column;justify-content:center;padding:80px 40px;background:var(--ink);color:#fff;opacity:0;visibility:hidden;transition:opacity .35s ease,visibility .35s}
  .mobile-menu.open{opacity:1;visibility:visible;display:flex}
  .menu-close{position:absolute;top:30px;right:30px;width:48px;height:48px;border:0;border-radius:50%;background:rgba(255,255,255,.1);color:#fff;font-size:30px;line-height:1;cursor:pointer}
  .mobile-menu nav{display:flex;flex-direction:column;gap:10px}
  .mobile-menu nav a{font-size:38px;line-height:1.25;font-weight:500;letter-spacing:-.8px}
  .menu-footer{display:flex;flex-direction:column;gap:6px;margin-top:60px;color:var(--muted);font-size:16px}

  .hero{height:100svh;min-height:720px;max-height:900px}
  .hero-inner{height:100%}
  .hero-media{top:20px;right:20px;bottom:20px;left:20px;width:auto;height:auto;border-radius:12px}
  .hero-media::after{background:linear-gradient(180deg,rgba(8,8,10,.6) 0%,rgba(8,8,10,.1) 35%,rgba(8,8,10,.72) 100%)}
  .hero-content{left:40px;right:40px;top:auto;bottom:60px;width:auto}
  .availability{height:30px;font-size:14px}
  .hero h1{margin-top:5px;padding-right:10px;font-size:34px;line-height:40.8px;letter-spacing:-.8px}
  .hero-content > p{max-width:none;margin-top:22px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .btn-hero{margin-top:23px}
  .hero-review{display:none}

  .about{margin-top:100px}
  .about-intro{display:block}
  .about-title,.about-copy{width:auto}
  .about-title h2{font-size:38px;line-height:41.8px;letter-spacing:-.8px}
  .about-copy p{margin-top:30px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .ticker{margin:100px 20px 0;margin-left:20px}
  .ticker-group{gap:20px;padding-right:20px}
  .ticker-group img,.ticker-group img.w-407{width:350px;height:485px}
  .stats{display:flex;flex-direction:column;gap:40px;margin-top:150px}
  .stat-number{font-size:72px;line-height:72px}
  .stat h3{margin-top:20px}
  .stat p{margin-top:4px}

  .services{margin-top:100px;padding:100px 0}
  .section-head{max-width:100%}
  .section-head h2{font-size:38px;line-height:41.8px;letter-spacing:-.8px}
  .section-head p{max-width:310px;margin-top:20px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .service-body{display:flex;flex-direction:column;margin-top:60px}
  .accordion{order:1;width:100%;margin-top:0}
  .service-media{order:2;width:100%;height:auto;aspect-ratio:310/349;margin-top:0;border-radius:10px}
  .acc-btn{height:80px;gap:20px}
  .acc-icon{width:40px;height:40px}
  .acc-btn h3{font-size:16px;line-height:22.4px;letter-spacing:-.2px}
  .acc-panel p{max-width:none;padding:0 0 30px;font-size:20px;line-height:30px;letter-spacing:-.2px}

  .work{padding:100px 0 70px}
  .work .container{padding:0 20px}
  .work .section-head{margin-bottom:40px;max-width:350px}
  .work .section-head p{max-width:350px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .project-card{display:flex;flex-direction:column;gap:40px;padding:30px;min-height:0}
  .project-content{order:1;padding-top:0;width:100%;max-width:none}
  .project-media{order:2;width:100%;height:363px;aspect-ratio:auto}
  .project-content > h3{font-size:32px;line-height:35.2px;letter-spacing:-.8px}
  .project-desc{max-width:none;margin-top:20px;font-size:18px;line-height:27px}
  .tags{margin-top:20px}
  .project-quote{margin-top:20px;max-width:none;gap:10px}
  .quote-mark{min-width:28px}
  .project-quote p{font-size:20px;line-height:28px;letter-spacing:-.2px}
  .quote-mark{font-size:34px;line-height:24px}
  .project-author{margin-top:20px}
  .project-card + .project-card{margin-top:32px}

  .testimonials{margin-top:100px;padding-bottom:8px}
  .testi-head{max-width:100%;padding:0 52px}
  .testi-head h2{margin-top:7px;font-size:38px;line-height:41.8px;letter-spacing:-.8px}
  .testi-head p{max-width:300px;margin-top:20px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .testi-rows{display:none}
  .testi-carousel{display:flex;gap:100px;margin-top:60px;padding:0 60px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
  .testi-carousel::-webkit-scrollbar{display:none}
  .testi-carousel .review-card{width:270px;height:auto;min-height:300px;padding:30px;scroll-snap-align:center}
  .testi-carousel .review-card p{font-size:18px;line-height:27px;letter-spacing:-.1px}
  .testi-carousel .review-author{font-size:16px;line-height:24px}
  .testi-dots{display:flex;justify-content:center;gap:10px;margin-top:30px}
  .testi-dots button{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#C9C9CF;cursor:pointer;transition:background .2s}
  .testi-dots button.active{background:var(--ink)}

  .faqs{margin-top:100px;padding:5px 0 0}
  .faq-grid{display:block}
  .faq-intro{text-align:center}
  .faq-intro h2{margin-top:7px;font-size:38px;line-height:41.8px}
  .faq-intro > p{max-width:310px;margin:20px auto 0;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .btn-dark{margin-top:30px}
  .faq-list{margin-top:60px}
  .faq-item{padding:19px 20px}
  .faq-q h3{font-size:16px;line-height:22.4px}
  .faq-a p{margin-top:16px;margin-bottom:6px;font-size:18px;line-height:27px;letter-spacing:-.1px}
  .faq-item.open .faq-a{max-height:320px}

  .contact{margin-top:100px;padding:0 20px}
  .contact-card{display:flex;flex-direction:column;gap:40px;padding:65px 20px 60px;border-radius:20px}
  .contact-info{padding-top:0}
  .contact-info h2{font-size:38px;line-height:41.8px}
  .contact-lead{margin-top:32px;font-size:20px;line-height:30px;letter-spacing:-.3px}
  .contact-lines{margin-top:30px}
  .contact-row{flex-direction:column;gap:4px}
  .contact-row + .contact-row{margin-top:20px}
  .contact-label{font-size:18px;line-height:24px}
  .contact-value{font-size:18px;line-height:27px}
  .contact-social{margin-top:30px;padding-top:22px}
  .contact-form{width:100%;margin-top:51px;padding:20px}
  .contact-form label{gap:10px}
  .contact-form label > span:first-child{font-size:16px}
  .contact-form input,.contact-form textarea{font-size:16px}
  .contact-form textarea{height:150px}
  .contact-form button{font-size:16px}

  .footer{padding:20px 20px 0}
  .footer-card{min-height:453px;padding:30px 20px 25px;border-radius:10px 10px 0 0}
  .footer-top{flex-direction:column}
  .footer-logo img{width:80px;height:30px}
  .quick-links{width:100%;margin-top:40px}
  .quick-links h3{font-size:24px;line-height:26.4px}
  .footer-links{grid-template-columns:1fr 1fr;column-gap:20px;margin-top:30px}
  .footer-links a{font-size:18px;line-height:24px}
  .footer-bottom{flex-direction:column;align-items:flex-start;gap:10px;margin-top:40px;padding-top:24px;font-size:16px;line-height:22px}
}
