body {
  font-family: "Inter", sans-serif;
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading {
  font-family: "Rethink Sans", sans-serif;
}
@media (min-width: 901px) {
  h2 {
    font-family: "Rethink Sans", sans-serif !important;
    
    font-weight: 800 !important;
    
  }
}
:root{
  --ink:#09090b;--brown:#35150d;--brown2:#461b11;--orange:#ff7b3f;--orange2:#ff6f2b;--navy:#19182f;--navy2:#111126;--paper:#fff;--soft:#faf9f6;--line:#e9e7e2;--muted:#77736f;--yellow:#ffbd3f;
  --design-width:1365px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:Arial,Helvetica,sans-serif;overflow-x:hidden}a{color:inherit;text-decoration:none}button,input{font:inherit}img{display:block;width:100%;height:100%;object-fit:cover}.stage{position:relative;overflow:hidden}.progress{position:fixed;z-index:1000;left:0;top:0;width:100%;height:3px;pointer-events:none}.progress span{display:block;width:0;height:100%;background:var(--orange)}
.topbar{position:absolute;z-index:50;left:0;top:0;width:100%;height:90px;color:#fff;font-size:10px;font-weight:800;letter-spacing:.16em}.tiny-brand{position:absolute;left:89px;top:34px;opacity:.85}.mini-logo{position:absolute;left:50%;top:25px;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:0;font-size:7px;letter-spacing:.12em}.mini-logo span{font-size:28px;line-height:18px;color:var(--orange)}.top-link{position:absolute;right:94px;top:34px}.top-link i{font-style:normal;margin-left:5px}.menu-button{display:none}.mobile-menu{display:none}
.hero{height:1035px;background:linear-gradient(to bottom,var(--brown) 0 91.5%,#fff 91.5%);color:#fff}.hero::before{content:"";position:absolute;inset:0 0 90px 0;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:39px 39px;mask-image:linear-gradient(to right,transparent 2%,#000 25%,#000 98%);opacity:.7}.hero-copy{position:absolute;left:255px;top:116px;width:1165px;z-index:2}.hero-copy h1{margin:0;font-size:112px;line-height:.82;letter-spacing:-.07em;font-weight:950}.hero-copy .orange{color:var(--orange)}.hero-pill{display:inline-block;width:175px;height:70px;margin:0 0 10px 26px;border-radius:50px;background:url('assets/hero-pill.jpg') center/cover no-repeat;vertical-align:middle;filter:saturate(.8) contrast(1.1)}.blob{display:inline-block;width:90px;height:72px;margin:0 24px 0 3px;vertical-align:middle;border-radius:50% 50% 44% 56% / 65% 55% 45% 35%;background:linear-gradient(145deg,#f6f6ef 0 55%,#ffc13d 56%);transform:rotate(18deg)}.hero-copy p{width:720px;margin:34px 0 0 8px;font-size:14px;line-height:1.9;letter-spacing:.1em;color:#ddd0cb}.hero-nav{position:absolute;left:268px;top:708px;width:830px;display:flex;justify-content:space-between;gap:30px;z-index:2}.hero-nav a{font-size:16px;font-weight:800;letter-spacing:.08em;color:#fff;white-space:nowrap}.hero-office{position:absolute;left:8%;top:770px;width:1245px;height:565px;margin:0;z-index:3;box-shadow:0 12px 30px rgba(0,0,0,.08)}
.about{height:710px;background:#fff}.section-intro small,.service-heading small,.work-heading small,.pricing-heading small,.team-heading small,.ach-heading small,.test-head small,.cta-panel small{display:block;color:#c46d48;font-size:9px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.about-intro h2{font-size:42px;line-height:1.04;letter-spacing:-.055em;margin:12px 0 20px;font-weight:950; text-align:center}.about-intro h2 em{font-style:normal;color:#6f6f6f}.about-intro p{font-size:12px;line-height:1.8;color:#706e6b;width:465px}.about-photo{position:absolute;left:215px;top:300px;width:465px;height:315px;margin:0}.burst{position:absolute;left:150px;top:270px;width:80px;height:80px}.burst::before,.burst::after{content:"";position:absolute;left:39px;top:0;width:2px;height:80px;background:#111}.burst::after{transform:rotate(90deg)}.burst{background:linear-gradient(45deg,transparent 48.5%,#111 49%,#111 51%,transparent 51.5%),linear-gradient(-45deg,transparent 48.5%,#111 49%,#111 51%,transparent 51.5%)}.about-note{position:absolute;left:775px;top:315px;width:355px}.mini-avatars{display:flex}.mini-avatars span{width:34px;height:34px;border-radius:50%;border:2px solid white;margin-left:-7px;background:linear-gradient(145deg,#6a594c,#c5a58b)}.mini-avatars span:first-child{margin-left:0}.mini-avatars span:nth-child(2){background:linear-gradient(145deg,#2a3548,#8fa0aa)}.mini-avatars span:nth-child(3){background:linear-gradient(145deg,#724238,#d99970)}.about-note p{font-size:11px;line-height:1.7;color:#777;margin-top:14px}.about-stats{position:absolute;left:775px;top:470px;display:flex;gap:90px}.about-stats div{display:flex;flex-direction:column;gap:9px}.about-stats strong{font-size:36px;letter-spacing:-.05em}.about-stats span{font-size:9px;line-height:1.35;letter-spacing:.1em;color:#777}.gem{position:absolute;width:77px;height:77px;background:conic-gradient(from 15deg,#6b2109,#fd7a28,#8d330c,#ffb066,#4c1406,#f66b19,#6b2109);clip-path:polygon(48% 0,91% 22%,100% 66%,62% 100%,19% 88%,0 48%,18% 12%);filter:drop-shadow(0 10px 9px rgba(92,33,8,.18));transform:rotate(12deg)}.gem::before{content:"";position:absolute;inset:12px;background:linear-gradient(135deg,rgba(255,255,255,.55),transparent 45%,rgba(0,0,0,.35));clip-path:polygon(50% 0,100% 50%,50% 100%,0 50%)}.gem-about{right:-28px;top:330px}
.section-intro.about-intro.reveal.in {
  padding-top: 30px;
    text-align: center;
}
/* SERVICES — accordion layout */
.services{
  height:1000px;
  background:#fff;
}

.service-heading{
  position:absolute;
  left:215px;
  top:30px;
}

.service-heading h2{
  margin:8px 0 0;
  font-size:47px;
  line-height:.82;
  letter-spacing:-.06em;
  font-weight:950;
}

.service-lead{
  position:absolute;
  left:850px;
  top:52px;
  width:315px;
  font-size:11px;
  line-height:1.75;
  color:#777;
}

.service-list{
  position:absolute;
  left:215px;
  top:240px;
  width:940px;
  border-top:1px solid var(--line);
}

.service-list button{
  width:100%;
  min-height:82px;
  padding:0 22px 0 12px;
  display:grid;
  grid-template-columns:70px 1fr 40px;
  grid-template-areas:
    "number title icon"
    ". content content";
  align-items:center;
  column-gap:18px;
  text-align:left;
  border:0;
  border-bottom:1px solid var(--line);
  background:#fff;
  color:var(--ink);
  cursor:pointer;
  transition:
    background .3s ease,
    color .3s ease,
    padding .3s ease;
}

.service-list b{
  grid-area:number;
  align-self:center;
  font-size:12px;
}

.service-list strong{
  grid-area:title;
  align-self:center;
  padding:28px 0;
  font-size:16px;
  line-height:1.2;
  letter-spacing:.04em;
}

.service-list i{
  grid-area:icon;
  justify-self:end;
  align-self:center;
  font-style:normal;
  font-size:20px;
  transition:transform .3s ease;
}

.service-list span{
  grid-area:content;
  display:block;
  max-height:0;
  margin:0;
  padding:0;
  overflow:hidden;
  opacity:0;
  color:#777;
  font-size:11px;
  line-height:1.75;
  white-space:pre-line;
  transform:translateY(-6px);
  transition:
    max-height .45s ease,
    opacity .3s ease,
    transform .3s ease,
    padding .3s ease,
    margin .3s ease;
}

.service-list button.active{
  background:var(--orange);
  color:#fff;
}

.service-list button.active strong{
  padding-bottom:16px;
}

.service-list button.active span{
  max-height:560px;
  margin:-4px 0 26px;
  padding-right:55px;
  opacity:1;
  color:#fff;
  transform:translateY(0);
}

.service-list button.active i{
  transform:rotate(45deg);
}

.service-list button:hover:not(.active){
  padding-left:22px;
  background:#faf9f6;
}

.service-list button:focus-visible{
  outline:3px solid #111;
  outline-offset:-3px;
}
.work{height:1620px;background:#fff}.work-heading{position:absolute;left:600px;top:48px;width:400px}.work-heading h2{font-size:49px;line-height:.83;letter-spacing:-.06em;margin:9px 0 0;font-weight:950}.work-index{position:absolute;left:825px;top:345px;font-size:80px;font-weight:900;color:#dad8d3}.project{position:absolute;display:block}.project img{transition:transform .5s ease}.project:hover img{transform:scale(1.04)}.project span{display:block;margin-top:14px;font-size:9px;line-height:1.3;color:#d46d45;letter-spacing:.06em}.project.p1{left:265px;top:300px;width:325px;height:410px}.project.p2{left:840px;top:480px;width:320px;height:410px}.project.p3{left:270px;top:920px;width:410px;height:400px}.project.p4{left:840px;top:1040px;width:320px;height:410px}.project.p1 img,.project.p2 img,.project.p3 img,.project.p4 img{height:100%;object-fit:cover}.gem-left{left:-35px;top:150px}.gem-right{right:92px;top:1150px}.wire{position:absolute;width:480px;height:480px;border:1px solid #eee;border-radius:50%;opacity:.65}.wire::after{content:"";position:absolute;inset:28px;border:1px solid #f3f2ef;border-radius:50%}.work .wire{right:-360px;bottom:-130px}
.impact{height:600px;background:linear-gradient(135deg,#19172e,#141328);color:#fff;padding-top:125px}.impact-inner{width:1230px;margin:auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:22px}.impact-card{height:350px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.07);padding:45px 32px;position:relative}.community strong{display:block;font-size:60px;margin-top:55px;letter-spacing:-.06em}.community p,.industries p{font-size:9px;letter-spacing:.12em;color:#aaa8b7}.impact-people{display:flex;align-items:center}.impact-people span{width:38px;height:38px;border-radius:50%;margin-right:-10px;background:linear-gradient(135deg,#d0a080,#55403a);border:2px solid #2c2a41}.impact-people span:nth-child(2){background:linear-gradient(135deg,#57362c,#c6aa9a)}.impact-people span:nth-child(3){background:linear-gradient(135deg,#243246,#93877b)}.impact-people i{font-style:normal;margin-left:18px;width:34px;height:34px;border-radius:4px;background:#fff;color:var(--orange);display:grid;place-items:center;font-size:11px}.quote{display:flex;flex-direction:column;justify-content:center;text-align:center}.orange-dot{color:var(--orange);font-size:24px}.quote p{font-size:21px;line-height:1.25}.quote small{font-size:9px;color:#9c9aa9}.industries b{font-size:58px;position:absolute;left:30px;top:24px}.industries p{margin:5px 0 0 68px;line-height:1.4}.chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:100px}.chips span{background:#fff;color:#19172e;border-radius:20px;padding:7px 13px;font-size:9px;font-weight:800}.chips span:first-child{background:var(--orange);color:#fff}
.meeting{height:525px}.meeting img{object-fit:cover}
.pricing{height:860px;background:#fff}.pricing-heading{position:absolute;left:50%;top:130px;transform:translateX(-50%);text-align:left;width:510px}.pricing-heading h2{font-size:50px;line-height:.83;letter-spacing:-.06em;margin:9px 0 0;font-weight:950}.gem-price{left:-30px;top:190px}.plans{position:absolute;left:238px;top:375px;width:890px;display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.plan{padding:0 15px;min-height:390px;border-right:1px solid #eee}.plan:last-child{border-right:0}.plan small{font-size:9px;color:#8d8a86}.plan h3{font-size:13px;line-height:1.5;margin:10px 0 20px}.plan strong{display:block;font-size:12px;letter-spacing:.12em;color:#c6643c;margin-bottom:18px}.plan a{display:inline-block;font-size:9px;font-weight:900;border-bottom:1px solid #c9673f;padding-bottom:3px}.plan.featured a{background:#0d0d0d;color:#fff;padding:12px 22px;border:0}.plan ul{margin:30px 0 0;padding:18px 0 0 15px;border-top:1px solid #eee}.plan li{font-size:9px;color:#777;margin:10px 0}.pricing-wire{left:-390px;bottom:-340px;width:600px;height:600px}
.testimonials{height:720px;background:linear-gradient(135deg,#19172f,#131227);color:#fff;padding-top:105px}.test-head{position:relative;width:950px;height:100px;margin:0 auto}.test-head small{color:#9d99ae}.test-head h2{font-size:25px;letter-spacing:.02em;margin:10px 0 0}.test-arrows{position:absolute;right:0;top:18px;display:flex;gap:10px}.test-arrows button{width:36px;height:36px;border:0;background:transparent;color:#fff;cursor:pointer;font-size:19px}.test-viewport{overflow:hidden;width:100%;padding-top:10px}.test-track{width:max-content;display:flex;gap:50px;transform:translateX(-365px);transition:transform .55s cubic-bezier(.2,.75,.2,1)}.test-card{width:520px;height:300px;background:#fff;color:#111;padding:45px;display:flex;gap:30px}.test-card.main{width:640px}.test-card img{width:190px;height:210px;object-fit:cover;flex:none}.test-copy h3{font-size:22px;margin:0 0 22px}.test-copy p{font-size:12px;line-height:1.7;color:#777}.test-copy span{font-size:10px;font-weight:800;display:block;margin-top:24px}.test-copy small{font-size:8px;color:#888}.test-copy strong{display:block;margin-top:24px;font-size:11px;letter-spacing:.12em}.test-card:not(.main){opacity:.9}.test-card:not(.main) .test-copy{align-self:center}
.growth{height:900px;background:#fff}.growth-heading{position:absolute;left:215px;top:110px}.growth-heading h2{font-size:48px;line-height:.9;letter-spacing:-.055em;margin:0;font-weight:950}.gem-growth{right:-12px;top:80px}.growth-photo{position:absolute;left:225px;top:355px;width:630px;height:460px;margin:0}.growth-steps{position:absolute;left:920px;top:350px;width:265px}.growth-steps article{margin-bottom:30px}.growth-steps b{color:#c56d49;font-size:9px}.growth-steps h3{font-size:10px;margin:5px 0 6px;letter-spacing:.08em}.growth-steps p{font-size:9px;line-height:1.5;color:#73716e;margin:0}.growth-wire{right:-250px;bottom:-160px;width:420px;height:420px}
.team{height:735px;background:#fff}.team-heading{position:absolute;left:545px;top:35px}.team-heading h2{font-size:48px;line-height:.87;letter-spacing:-.06em;margin:9px 0 0;font-weight:950}.team-row{position:absolute;left:-18px;top:270px;width:1401px;display:grid;grid-template-columns:repeat(6,1fr);gap:18px}.member img{height:300px;object-fit:cover}.member h3{font-size:10px;color:#d0714d;margin:12px 0 4px 7px}.member p{font-size:8px;margin:0 0 0 7px;color:#777}.member.fade{opacity:.28}.member:not(.fade){transition:transform .35s ease}.member:not(.fade):hover{transform:translateY(-12px)}
.achievement{height:640px;background:#fff}.ach-heading{position:absolute;left:215px;top:40px}.ach-heading h2{font-size:50px;line-height:.88;letter-spacing:-.06em;margin:10px 0 0;font-weight:950}.ach-copy{position:absolute;left:850px;top:63px;width:320px;font-size:11px;line-height:1.75;color:#777}.gem-ach{left:-12px;top:295px}.stats-row{position:absolute;left:315px;top:295px;width:750px;display:flex;justify-content:space-between;align-items:center}.stats-row>div{width:150px;height:150px;border-radius:50%;border:1px solid #eee;display:grid;place-content:center;text-align:center}.stats-row .hot{width:190px;height:190px;background:var(--yellow);border-color:var(--yellow)}.stats-row strong{font-size:30px;letter-spacing:-.06em}.stats-row span{font-size:8px;line-height:1.4;color:#777;margin-top:6px}.stats-row .hot strong{font-size:34px}
.news{height:725px;background:#fff}.news-heading{position:absolute;left:175px;top:20px;width:1000px;display:flex;align-items:center;gap:30px}.news-heading h2{font-size:37px;letter-spacing:-.05em;margin:0}.news-heading span{height:1px;background:#eee;flex:1}.featured-news{position:absolute;left:180px;top:135px;width:665px;height:410px;overflow:hidden}.featured-news img{height:100%;object-fit:fill;transition:transform .45s ease}.featured-news:hover img{transform:scale(1.015)}.news-list{position:absolute;left:865px;top:145px;width:300px}.news-list article{padding:18px 0 28px;border-bottom:1px solid #eee;position:relative}.news-list small{font-size:8px;color:#888}.news-list h3{font-size:13px;line-height:1.35;margin:8px 35px 0 0}.news-list a{position:absolute;right:0;top:55px;color:var(--orange)}.news-wire{left:-370px;bottom:-315px;width:530px;height:530px}
.contact{height:565px;background:#fff;color:#fff;overflow:visible}.cta-panel{position:absolute;z-index:3;left:180px;top:-230px;width:1015px;height:360px;display:block;overflow:hidden;background:#ff681c}.cta-panel img{width:100%;height:100%;object-fit:fill;transition:transform .45s ease}.cta-panel:hover img{transform:scale(1.01)}.contact footer{position:absolute;left:0;right:0;bottom:0;height:440px;padding:140px 180px 35px;display:grid;grid-template-columns:2.1fr .7fr .7fr 1.25fr;gap:45px;background:#050505}.newsletter h3{font-size:24px;line-height:1.05;margin:0 0 30px}.newsletter form{display:flex;width:320px;border-bottom:1px solid #555}.newsletter input{width:100%;background:transparent;color:#fff;border:0;padding:12px 4px;outline:0;font-size:10px}.newsletter button{border:0;background:transparent;color:#fff;cursor:pointer}.newsletter>small{display:block;margin-top:8px;color:#ff9b6d;font-size:9px}.footer-col{display:flex;flex-direction:column;gap:10px;font-size:9px}.footer-col b{margin-bottom:6px}.footer-col a,.footer-col p{color:#aaa;margin:0;line-height:1.5}.socials{display:flex;gap:9px;margin-top:16px}.socials a{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;background:#ff6f2b;color:#fff}.back-top{position:fixed;right:22px;bottom:22px;width:44px;height:44px;border-radius:50%;border:0;background:#111;color:#fff;z-index:500;opacity:0;pointer-events:none;transform:translateY(10px);transition:.25s}.back-top.show{opacity:1;pointer-events:auto;transform:none}
/* animation: content stays visible without JS */
.js .reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1)}.js .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal{opacity:1!important;transform:none!important;transition:none!important}*{animation:none!important;transition:none!important}}

@media (max-width:900px){
  .topbar{position:fixed;height:64px;background:rgba(53,21,13,.92);backdrop-filter:blur(10px)}.tiny-brand,.mini-logo,.top-link{display:none}.menu-button{display:block;position:absolute;right:18px;top:17px;width:38px;height:30px;border:0;background:transparent}.menu-button span{display:block;height:2px;background:#fff;margin:6px}.mobile-menu{display:flex;position:absolute;right:14px;top:58px;width:220px;padding:16px;flex-direction:column;gap:8px;background:#fff;color:#111;box-shadow:0 12px 30px #0002;transform:scale(.96) translateY(-8px);opacity:0;pointer-events:none;transition:.2s;transform-origin:top right}.mobile-menu.open{opacity:1;pointer-events:auto;transform:none}.mobile-menu a{padding:10px 12px;font-size:13px}
  .stage{height:auto!important;min-height:0!important;overflow:hidden}.hero{background:var(--brown);padding:115px 20px 0}.hero::before{bottom:0}.hero-copy,.hero-nav,.hero-office,.about-intro,.about-photo,.about-note,.about-stats,.service-heading,.service-lead,.service-list,.work-heading,.project,.work-index,.pricing-heading,.plans,.growth-heading,.growth-photo,.growth-steps,.team-heading,.team-row,.ach-heading,.ach-copy,.stats-row,.news-heading,.featured-news,.news-list,.cta-panel,.contact footer{position:relative;left:auto;right:auto;top:auto;bottom:auto;width:auto;height:auto;transform:none}
  .hero-copy{z-index:2}.hero-copy h1{font-size:clamp(53px,16vw,86px);line-height:.86}.hero-pill{width:28vw;max-width:150px;height:12vw;max-height:65px;margin-left:10px}.blob{width:15vw;height:12vw;margin-right:10px}.hero-copy p{width:auto;font-size:12px;margin:22px 0 0;line-height:1.65}.hero-nav{display:none}.hero-office{margin:55px -20px 0;height:auto;aspect-ratio:2.46/1}.hero-office img{object-fit:cover}
  .about,.services,.work,.pricing,.growth,.team,.achievement,.news{padding:70px 22px}.about-intro h2,.service-heading h2,.work-heading h2,.pricing-heading h2,.growth-heading h2,.team-heading h2,.ach-heading h2{font-size:38px}.about-intro p,.service-lead,.ach-copy{width:auto;font-size:12px}.about-photo{margin-top:40px}.about-photo img{aspect-ratio:1.48/1}.about-note{margin-top:28px}.about-stats{margin-top:28px;gap:45px}.about-stats strong{font-size:32px}.burst{left:8px;top:265px;transform:scale(.7)}.gem{width:55px;height:55px}.gem-about{right:-20px;top:350px}
  .service-lead{margin:20px 0 35px}
  .service-list{border-top:1px solid #eee}
  .service-list button{
    min-height:68px;
    padding:0 12px;
    grid-template-columns:38px 1fr 28px;
    grid-template-areas:
      "number title icon"
      ". content content";
    gap:0 10px;
  }
  .service-list strong{
    padding:20px 0;
    font-size:13px;
  }
  .service-list button.active strong{
    padding-bottom:12px;
  }
  .service-list button.active span{
    max-height:700px;
    margin:0 0 20px;
    padding-right:8px;
    font-size:11px;
    line-height:1.65;
  }
  .service-list button i{
    grid-area:icon;
  }
  .work{padding-bottom:90px}.work-heading{margin-left:24vw}.work-index{display:none}.project{margin-top:42px}.project.p1{width:53%;margin-left:10%}.project.p2{width:52%;margin-left:42%}.project.p3{width:66%;margin-left:8%}.project.p4{width:52%;margin-left:42%}.project img{height:auto;aspect-ratio:1/1.15}.wire{display:none}.gem-left{left:-25px;top:110px}.gem-right{right:0;top:auto;bottom:40px}
  .impact{padding:55px 18px;background:var(--navy)}.impact-inner{width:auto;display:grid;grid-template-columns:1fr;gap:12px}.impact-card{height:auto;min-height:210px;padding:28px}.community strong{margin-top:32px;font-size:48px}.industries b{position:static}.industries p{margin:8px 0}.chips{margin-top:30px}
  .meeting img{height:auto;aspect-ratio:2.6/1;object-fit:cover}
  .pricing-heading{text-align:left;margin-left:18vw}.plans{margin-top:50px;display:grid;grid-template-columns:1fr;gap:28px}.plan{border:1px solid #eee!important;padding:24px;min-height:0}.pricing-wire{display:none}
  .testimonials{height:auto!important;padding:65px 0}.test-head{width:auto;height:auto;margin:0 22px 25px}.test-arrows{right:0;top:8px}.test-viewport{padding:0 22px}.test-track{gap:16px;transform:none}.test-card,.test-card.main{width:calc(100vw - 44px);height:auto;min-height:260px;padding:24px}.test-card img{width:38%;height:auto;aspect-ratio:.85}.test-copy h3{font-size:19px}.test-copy p{font-size:11px}
  .growth-heading{margin-bottom:35px}.growth-heading h2{font-size:37px}.growth-photo img{height:auto;aspect-ratio:1.3/1}.growth-steps{margin-top:35px}.growth-steps article{padding-left:14px;border-left:1px solid #eee}.gem-growth{right:-20px;top:42px}
  .team-heading{margin-left:20vw}.team-row{margin-top:38px;width:calc(100% + 44px);margin-left:-22px;display:flex;gap:12px;overflow-x:auto;padding:0 22px 15px;scroll-snap-type:x mandatory}.member{min-width:54vw;scroll-snap-align:center}.member img{height:auto;aspect-ratio:.72}.member.fade{opacity:.35}
  .ach-copy{margin-top:25px}.stats-row{margin-top:45px;display:grid;grid-template-columns:1fr 1fr;gap:15px}.stats-row>div,.stats-row .hot{width:135px;height:135px;justify-self:center}.stats-row .hot{width:150px;height:150px}.gem-ach{left:-28px;top:220px}
  .news-heading{display:flex}.news-heading h2{font-size:34px}.featured-news{display:block;margin-top:35px}.featured-news img{height:auto;aspect-ratio:1.5}.featured-news>div{left:20px;right:20px;bottom:18px}.featured-news h3{font-size:18px}.news-list{margin-top:25px}.news-list article{padding:20px 0}.news-wire{display:none}
  .contact{background:#050505;padding-top:0}.cta-panel{margin:0 18px;width:auto;height:auto;aspect-ratio:203/72;background:#f75a10}.cta-panel img{width:100%;height:100%;object-fit:fill}.contact footer{margin-top:-1px;padding:55px 24px 36px;display:grid;grid-template-columns:1fr 1fr;gap:35px}.newsletter{grid-column:1/-1}.newsletter form{width:100%}
}
/* =========================
   GLOBAL FONTS
========================= */

:root {
  --heading-font: "Rethink Sans", sans-serif;
  --body-font: "Inter", sans-serif;

  --header-bg: #2c0f08;
  --header-border: rgba(255, 255, 255, 0.08);
  --header-text: #f5eee9;
  --orange: #e96620;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  font-family: var(--body-font);
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading {
  font-family: var(--heading-font);
}


/* =========================
   HEADER
========================= */

.site-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;

  background: var(--header-bg);
  color: var(--header-text);

  border-bottom: 1px solid var(--header-border);

  font-family: var(--body-font);
}

.header-inner {
  position: relative;

  height: 76px;
  padding: 0 5vw;

  display: flex;
  align-items: center;
  justify-content: space-between;

  box-sizing: border-box;
}


/* subtle vertical divisions like reference */

.header-inner::before,
.header-inner::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;

  width: 1px;

  background: var(--header-border);

  pointer-events: none;
}

.header-inner::before {
  left: 31%;
}

.header-inner::after {
  right: 25%;
}


/* =========================
   MENU BUTTON
========================= */

.header-menu-btn {
  position: relative;
  z-index: 2;

  display: inline-flex;
  align-items: center;
  gap: 9px;

  padding: 8px 12px;

  background: transparent;

  color: var(--header-text);

  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 100px;

  cursor: pointer;

  font-family: var(--body-font);
  font-size: 9px;
  font-weight: 500;
  letter-spacing: 0.05em;

  transition:
    border-color 0.25s ease,
    background 0.25s ease;
}

.header-menu-btn:hover {
  border-color: rgba(255, 255, 255, 0.4);
  background: rgba(255, 255, 255, 0.04);
}

.menu-icon {
  width: 15px;
  height: 8px;

  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.menu-icon i {
  display: block;

  width: 100%;
  height: 1px;

  background: currentColor;

  transition:
    transform 0.3s ease,
    opacity 0.3s ease;
}


/* X animation */

.site-header.is-open .menu-icon i:first-child {
  transform: translateY(3.5px) rotate(45deg);
}

.site-header.is-open .menu-icon i:last-child {
  transform: translateY(-3.5px) rotate(-45deg);
}


/* =========================
   CENTER LOGO
========================= */

.header-logo {
  position: absolute;
  z-index: 2;

  left: 50%;
  top: 50%;

  transform: translate(-50%, -50%);

  display: flex;
  flex-direction: column;
  align-items: center;

  text-decoration: none;

  color: var(--orange);

  line-height: 1;
}

.logo-mark {
  font-size: 22px;
  line-height: 17px;
}

.logo-text {
  margin-top: 3px;

  font-family: var(--heading-font);
  font-size: 9px;
  font-weight: 700;

  letter-spacing: 0.25em;
}


/* =========================
   RIGHT ACTIONS
========================= */

.header-actions {
  position: relative;
  z-index: 2;

  display: flex;
  align-items: center;

  gap: 18px;
}

.header-search {
  width: 30px;
  height: 30px;

  display: grid;
  place-items: center;

  padding: 0;

  border: 0;
  background: transparent;

  color: var(--header-text);

  cursor: pointer;

  opacity: 0.9;

  transition: opacity 0.2s ease;
}

.header-search:hover {
  opacity: 1;
}

.contact-pill {
  display: inline-flex;
  align-items: center;

  gap: 7px;

  padding: 8px 13px;

  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 100px;

  color: var(--header-text);
  text-decoration: none;

  font-size: 9px;
  font-weight: 500;

  letter-spacing: 0.04em;

  transition:
    background 0.25s ease,
    color 0.25s ease,
    border-color 0.25s ease;
}

.contact-pill span {
  font-size: 10px;

  transition: transform 0.25s ease;
}

.contact-pill:hover {
  background: var(--header-text);
  color: var(--header-bg);
  border-color: var(--header-text);
}

.contact-pill:hover span {
  transform: translate(2px, -2px);
}


/* =========================
   NAVIGATION PANEL
========================= */

.header-navigation {
  position: absolute;

  left: 0;
  top: 100%;

  width: 100%;

  background: var(--header-bg);

  border-top: 1px solid var(--header-border);
  border-bottom: 1px solid var(--header-border);

  overflow: hidden;

  max-height: 0;
  opacity: 0;

  visibility: hidden;

  transition:
    max-height 0.5s cubic-bezier(0.77, 0, 0.18, 1),
    opacity 0.3s ease,
    visibility 0.3s ease;
}

.site-header.is-open .header-navigation {
  max-height: 400px;
  opacity: 1;

  visibility: visible;
}

.nav-inner {
  padding: 28px 5vw 36px;

  display: grid;

  grid-template-columns: repeat(4, 1fr);

  gap: 0;
}

.nav-inner a {
  min-height: 115px;

  padding: 20px 22px;

  display: flex;
  flex-direction: column;
  justify-content: space-between;

  box-sizing: border-box;

  border-right: 1px solid var(--header-border);

  color: var(--header-text);
  text-decoration: none;

  font-family: var(--heading-font);
  font-size: clamp(22px, 2.5vw, 42px);
  font-weight: 500;

  transition:
    background 0.3s ease,
    color 0.3s ease;
}

.nav-inner a:last-child {
  border-right: 0;
}

.nav-inner a span {
  font-family: var(--body-font);

  font-size: 9px;
  font-weight: 500;

  opacity: 0.45;
}

.nav-inner a:hover {
  background: var(--orange);
  color: #25100a;
}


/* =========================
   TABLET
========================= */

@media (max-width: 900px) {

  .header-inner {
    height: 68px;

    padding-left: 24px;
    padding-right: 24px;
  }

  .header-inner::before,
  .header-inner::after {
    display: none;
  }

  .nav-inner {
    padding-left: 24px;
    padding-right: 24px;

    grid-template-columns: repeat(2, 1fr);
  }

  .nav-inner a {
    border-bottom: 1px solid var(--header-border);
  }

  .nav-inner a:nth-child(2) {
    border-right: 0;
  }

  .nav-inner a:nth-child(3),
  .nav-inner a:nth-child(4) {
    border-bottom: 0;
  }

}


/* =========================
   MOBILE
========================= */

@media (max-width: 600px) {

  .header-inner {
    height: 64px;

    padding: 0 16px;
  }

  .header-menu-btn {
    padding: 8px 10px;
  }

  .menu-label {
    display: none;
  }

  .header-logo {
    position: absolute;
  }

  .logo-mark {
    font-size: 19px;
  }

  .logo-text {
    font-size: 7px;
  }

  .header-search {
    display: none;
  }

  .contact-pill {
    padding: 8px 10px;

    font-size: 8px;
  }

  .nav-inner {
    padding: 10px 16px 18px;

    grid-template-columns: 1fr;
  }

  .nav-inner a {
    min-height: auto;

    padding: 18px 6px;

    display: grid;
    grid-template-columns: 35px 1fr;
    align-items: center;

    border-right: 0;
    border-bottom: 1px solid var(--header-border);

    font-size: 28px;
  }

  .nav-inner a:nth-child(3) {
    border-bottom: 1px solid var(--header-border);
  }

  .nav-inner a:last-child {
    border-bottom: 0;
  }

}
main {
  padding-top: 76px;
}

@media (max-width: 900px) {
  main {
    padding-top: 68px;
  }
}

@media (max-width: 600px) {
  main {
    padding-top: 64px;
  }
}


/* =========================================================
   HOME PAGE LAYOUT REFINEMENT
   - Banner/hero image layout intentionally left untouched.
   - Main content uses normal document flow instead of the
     legacy absolute positioning that caused page-wide overlap.
========================================================= */

:root {
  --content-width: 80%;
  --content-max: 1240px;
}

/* General readable sizing */
body {
  min-width: 0;
  font-size: 17px;
  line-height: 1.65;
}

main {
  width: 100%;
}

main p {
  font-size: 16px;
  line-height: 1.75;
}

/* 80% desktop content width without shrinking full-width backgrounds */
.about,
.services,
.work,
.pricing,
.growth,
.achievement,
.news {
  padding-left: 10%;
  padding-right: 10%;
}

/* Center the section titles while leaving the hero/banner unchanged */
.about-intro,
.service-heading,
.work-heading,
.pricing-heading,
.test-head,
.growth-heading,
.ach-heading,
.news-heading {
  text-align: center;
}

.about-intro h2,
.service-heading h2,
.work-heading h2,
.pricing-heading h2,
.growth-heading h2,
.ach-heading h2,
.news-heading h2,
.test-head h2 {
  font-size: clamp(46px, 4.4vw, 66px) !important;
  line-height: .98 !important;
  letter-spacing: -.045em !important;
}

.section-intro small,
.service-heading small,
.work-heading small,
.pricing-heading small,
.team-heading small,
.ach-heading small,
.test-head small,
.cta-panel small {
  font-size: 12px;
}

/* =========================================================
   FIX LEGACY ABSOLUTE-POSITION LAYOUT BUG
   Scope is limited to content sections. Header and banners
   keep their existing intentional positioning.
========================================================= */

.about-intro,
.about-photo,
.about-note,
.about-stats,
.service-heading,
.service-lead,
.service-list,
.work-heading,
.work-steps-list,
.pricing-heading,
.plans,
.growth-heading,
.faq-list,
.ach-heading,
.ach-copy,
.stats-row,
.news-heading,
.featured-news,
.news-list {
  position: static !important;
  left: auto !important;
  right: auto !important;
  top: auto !important;
  bottom: auto !important;
  transform: none !important;
}

/* =========================================================
   ABOUT
========================================================= */

.about {
  height: auto;
  min-height: 0;
  padding-top: 100px;
  padding-bottom: 110px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  column-gap: 70px;
  row-gap: 34px;
}

.about-intro {
  grid-column: 1 / -1;
  width: 100%;
  max-width: 920px;
  margin: 0 auto 35px;
}

.about-intro p {
  width: min(780px, 100%);
  margin: 22px auto 0;
  font-size: 17px !important;
  line-height: 1.8;
  text-align: center;
}

.about-photo {
  grid-column: 1;
  grid-row: 2 / span 2;
  width: 100%;
  height: 390px;
  margin: 0;
}

.about-note {
  grid-column: 2;
  grid-row: 2;
  width: 100%;
  align-self: end;
}

.about-note p {
  margin-top: 18px;
  font-size: 16px !important;
  line-height: 1.75;
}

.about-stats {
  grid-column: 2;
  grid-row: 3;
  display: flex;
  gap: 65px;
  align-self: start;
}

.about-stats strong {
  font-size: 44px;
}

.about-stats span {
  font-size: 12px;
}

/* =========================================================
   SERVICES
========================================================= */

.services {
  height: auto;
  min-height: 0;
  padding-top: 105px;
  padding-bottom: 120px;
}

.service-heading {
  width: 100%;
  margin: 0 auto;
}

.service-lead {
  width: min(760px, 100%);
  margin: 24px auto 48px;
  font-size: 17px !important;
  line-height: 1.75;
  text-align: center;
}

.service-list {
  width: min(var(--content-max), 100%);
  margin: 0 auto;
}

.service-list b {
  font-size: 14px;
}

.service-list strong {
  font-size: 19px;
}

.service-list span {
  font-size: 15px;
  line-height: 1.75;
}

/* =========================================================
   HOW WE WORK — NO IMAGES, VERTICAL FLOW
========================================================= */

.work {
  height: auto;
  min-height: 0;
  padding-top: 110px;
  padding-bottom: 130px;
}

.work-heading {
  width: min(850px, 100%);
  margin: 0 auto 58px;
}

.work-heading p {
  width: min(720px, 100%);
  margin: 24px auto 0;
  color: var(--muted);
  font-size: 18px !important;
  line-height: 1.75;
}

.work-index {
  display: none;
}

.work-steps-list {
  width: min(960px, 100%);
  margin: 0 auto;
  border-top: 1px solid var(--line);
}

.work-step {
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  gap: 34px;
  align-items: start;
  padding: 36px 0;
  border-bottom: 1px solid var(--line);
}

.work-step-number {
  color: var(--orange);
  font-family: var(--heading-font);
  font-size: 20px;
  font-weight: 700;
}

.work-step h3 {
  margin: 0 0 10px;
  font-size: 28px;
  line-height: 1.15;
}

.work-step p {
  max-width: 760px;
  margin: 0;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.75;
}

/* Hide legacy project styling completely if any old node remains cached */
.work .project,
.work .project img {
  display: none !important;
}

/* =========================================================
   IMPACT — larger readable supporting text
========================================================= */

.impact-inner {
  width: min(var(--content-width), var(--content-max));
}

.community p,
.industries p {
  font-size: 13px;
  line-height: 1.55;
}

.quote p {
  font-size: 25px;
}

.quote small {
  font-size: 12px;
}

.chips span {
  font-size: 11px;
}

/* =========================================================
   PRICING
========================================================= */

.pricing {
  height: auto;
  min-height: 0;
  padding-top: 110px;
  padding-bottom: 125px;
}

.pricing-heading {
  width: min(860px, 100%);
  margin: 0 auto;
}

.pricing-heading p {
  width: min(720px, 100%);
  margin: 24px auto 0;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.75;
}

.plans {
  width: min(100%, 1100px);
  margin: 58px auto 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 32px;
}

.plan {
  min-height: 0;
  padding: 28px;
}

.plan h3 {
  margin: 0 0 16px;
  font-size: 25px;
}

.plan p {
  margin: 0 0 18px;
  color: var(--muted);
  font-size: 16px !important;
  line-height: 1.65;
}

.plan ul {
  margin: 20px 0 28px;
}

.plan li {
  margin: 9px 0;
  font-size: 14px;
  line-height: 1.55;
}

.plan a {
  font-size: 12px;
}

/* =========================================================
   TESTIMONIALS
========================================================= */

.test-head {
  width: min(var(--content-width), 1050px);
}

.test-copy p {
  font-size: 16px !important;
  line-height: 1.75;
}

.test-copy strong {
  font-size: 13px;
}

/* =========================================================
   FAQ — STANDARD ACCORDION
========================================================= */

.faq-section {
  height: auto;
  min-height: 0;
  padding-top: 110px;
  padding-bottom: 125px;
}

.faq-heading {
  width: min(900px, 100%);
  margin: 0 auto 50px;
}

.faq-heading p {
  width: min(720px, 100%);
  margin: 22px auto 0;
  color: var(--muted);
  font-size: 18px !important;
  line-height: 1.75;
}

.faq-list {
  width: min(950px, 100%);
  margin: 0 auto;
  border-top: 1px solid var(--line);
}

.faq-item {
  border-bottom: 1px solid var(--line);
}

.faq-item summary {
  list-style: none;
  cursor: pointer;
  padding: 26px 4px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  font-family: var(--heading-font);
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}

.faq-item summary::-webkit-details-marker {
  display: none;
}

.faq-item summary i {
  flex: 0 0 auto;
  font-style: normal;
  font-family: var(--body-font);
  font-size: 26px;
  font-weight: 400;
  transition: transform .25s ease;
}

.faq-item[open] summary i {
  transform: rotate(45deg);
}

.faq-answer {
  padding: 0 48px 28px 4px;
}

.faq-answer p {
  max-width: 820px;
  margin: 0;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.8;
}

/* Old FAQ growth-image layout is intentionally disabled */
.faq-section .growth-photo,
.faq-section .growth-steps {
  display: none !important;
}

/* =========================================================
   ACHIEVEMENT / GET STARTED
========================================================= */

.achievement {
  height: auto;
  min-height: 0;
  padding-top: 105px;
  padding-bottom: 115px;
}

.ach-heading {
  width: min(900px, 100%);
  margin: 0 auto;
}

.ach-copy {
  width: min(720px, 100%);
  margin: 24px auto 0;
  color: var(--muted);
  font-size: 17px !important;
  line-height: 1.75;
  text-align: center;
}

.stats-row {
  width: min(850px, 100%);
  margin: 58px auto 0;
}

.stats-row span {
  font-size: 11px;
}

/* =========================================================
   NEWS
========================================================= */

.news {
  height: auto;
  min-height: 0;
  padding-top: 95px;
  padding-bottom: 115px;
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(260px, .75fr);
  gap: 36px;
}

.news-heading {
  grid-column: 1 / -1;
  width: 100%;
  display: block;
  margin-bottom: 10px;
}

.news-heading > span {
  display: none;
}

.featured-news {
  width: 100%;
  height: 430px;
  margin: 0;
}

.news-list {
  width: 100%;
  margin: 0;
}

.news-list small {
  font-size: 11px;
}

.news-list h3 {
  margin-top: 10px;
  font-size: 18px;
  line-height: 1.45;
}

/* =========================================================
   FOOTER — TYPOGRAPHY ONLY
   CTA/banner positioning remains untouched.
========================================================= */

.newsletter h3 {
  font-size: 32px;
  line-height: 1.08;
}

.newsletter input {
  font-size: 14px;
}

.newsletter > small {
  font-size: 12px;
}

.footer-col {
  font-size: 14px;
  gap: 13px;
}

.footer-col b {
  font-size: 14px;
}

.footer-col a,
.footer-col p {
  font-size: 14px;
  line-height: 1.65;
}

.socials a {
  font-size: 13px;
}

/* =========================================================
   TABLET / MOBILE
========================================================= */

@media (max-width: 900px) {
  :root {
    --content-width: 100%;
  }

  body {
    font-size: 16px;
  }

  .about,
  .services,
  .work,
  .pricing,
  .growth,
  .achievement,
  .news {
    padding-left: 24px;
    padding-right: 24px;
  }

  .about {
    display: block;
  }

  .about-intro,
  .about-photo,
  .about-note,
  .about-stats {
    width: 100%;
  }

  .about-photo {
    height: auto;
    aspect-ratio: 1.48 / 1;
    margin: 38px 0 0;
  }

  .about-note {
    margin-top: 30px;
  }

  .about-stats {
    margin-top: 30px;
  }

  .about-intro h2,
  .service-heading h2,
  .work-heading h2,
  .pricing-heading h2,
  .growth-heading h2,
  .ach-heading h2,
  .news-heading h2,
  .test-head h2 {
    font-size: clamp(38px, 8vw, 54px) !important;
  }

  .work-heading {
    margin-left: auto;
  }

  .work-step {
    grid-template-columns: 55px 1fr;
    gap: 18px;
    padding: 28px 0;
  }

  .plans {
    grid-template-columns: 1fr;
  }

  .pricing-heading {
    margin-left: auto;
    text-align: center;
  }

  .faq-item summary {
    font-size: 18px;
  }

  .news {
    grid-template-columns: 1fr;
  }

  .featured-news {
    height: auto;
    aspect-ratio: 1.5 / 1;
  }

  .news-list {
    margin-top: 8px;
  }
}

@media (max-width: 600px) {
  main p {
    font-size: 15px;
  }

  .about,
  .services,
  .work,
  .pricing,
  .growth,
  .achievement,
  .news {
    padding-left: 18px;
    padding-right: 18px;
  }

  .service-list span {
    font-size: 14px;
  }

  .work-step {
    grid-template-columns: 1fr;
    gap: 8px;
  }

  .work-step h3 {
    font-size: 24px;
  }

  .faq-heading p {
    font-size: 16px !important;
  }

  .faq-item summary {
    padding: 22px 0;
    font-size: 17px;
  }

  .faq-answer {
    padding: 0 0 24px;
  }

  .faq-answer p {
    font-size: 15px !important;
  }

  .footer-col,
  .footer-col b,
  .footer-col a,
  .footer-col p {
    font-size: 13px;
  }
}
.about-footer {
  width: 100%;
  padding: 80px 0 28px;
  background: #050505;
  color: #ffffff;
  overflow: hidden;
}

.about-footer .about-container {
  width: 80%;
  max-width: 1400px;
  margin-inline: auto;
}


/* =========================================================
   FOOTER GRID
========================================================= */

.footer-grid {
  display: grid;
  grid-template-columns: minmax(320px, 2fr)  1fr 1fr;
  gap: clamp(35px, 5vw, 80px);
  align-items: start;
}


/* =========================================================
   NEWSLETTER
========================================================= */

.footer-newsletter h2 {
  margin: 0 0 30px;
  font-family: "Rethink Sans", sans-serif;
  font-size: clamp(34px, 3.2vw, 52px);
  font-weight: 600;
  line-height: 1.02;
  letter-spacing: -0.04em;
}

.footer-newsletter form {
  width: 100%;
  max-width: 430px;
  min-height: 54px;

  display: flex;
  align-items: center;

  background: #ffffff;
  border-radius: 4px;
  overflow: hidden;
}

.footer-newsletter input {
  flex: 1;
  min-width: 0;

  padding: 0 18px;

  border: 0;
  outline: none;
  background: transparent;

  color: #111111;

  font-family: "Inter", sans-serif;
  font-size: 15px;
}

.footer-newsletter input::placeholder {
  color: #777777;
}

.footer-newsletter button {
  width: 58px;
  align-self: stretch;

  display: grid;
  place-items: center;

  border: 0;
  cursor: pointer;

  background: #ffffff;
  color: #ff6619;

  font-size: 25px;

  transition:
    background 0.25s ease,
    color 0.25s ease;
}

.footer-newsletter button:hover {
  background: #ff6619;
  color: #ffffff;
}

.footer-newsletter small {
  display: block;
  min-height: 20px;
  margin-top: 10px;

  font-family: "Inter", sans-serif;
  font-size: 13px;
  line-height: 1.5;

  color: #b8b8b8;
}


/* =========================================================
   FOOTER LINK COLUMNS
========================================================= */

.footer-column {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
}

.footer-column b {
  margin-bottom: 5px;

  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 600;

  color: #ffffff;
}

.footer-column a {
  position: relative;

  color: #d0d0d0;
  text-decoration: none;

  font-family: "Inter", sans-serif;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.5;

  transition: color 0.25s ease;
}

.footer-column a:hover {
  color: #ff6619;
}


/* =========================================================
   ADDRESS / CONTACT
========================================================= */

.footer-address {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}

.footer-address p {
  margin: 0 0 22px;

  color: #d0d0d0;

  font-family: "Inter", sans-serif;
  font-size: 15px;
  line-height: 1.7;
}

.footer-address > a {
  color: #ffffff;
  text-decoration: none;

  font-family: "Inter", sans-serif;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;

  transition: color 0.25s ease;
}

.footer-address > a:hover {
  color: #ff6619;
}


/* =========================================================
   SOCIAL ICONS
   Works if you uncomment your HTML
========================================================= */

.footer-socials {
  display: flex;
  align-items: center;
  gap: 10px;

  margin-top: 25px;
}

.footer-socials a {
  width: 38px;
  height: 38px;

  display: grid;
  place-items: center;

  border-radius: 50%;

  background: #1d1d1d;
  color: #ffffff;

  text-decoration: none;
  font-size: 13px;
  font-weight: 600;

  transition:
    background 0.25s ease,
    transform 0.25s ease;
}

.footer-socials a:hover {
  background: #ff6619;
  transform: translateY(-2px);
}


/* =========================================================
   FOOTER BOTTOM
========================================================= */

.footer-bottom {
  margin-top: 75px;
  padding-top: 24px;

  display: flex;
  align-items: center;
  justify-content: flex-end;

  border-top: 1px solid rgba(255, 255, 255, 0.14);
}

.footer-bottom p {
  margin: 0;

  color: #bdbdbd;

  font-family: "Inter", sans-serif;
  font-size: 14px;
  line-height: 1.5;
}


/* Optional if footer-legal is uncommented */

.footer-legal {
  display: flex;
  align-items: center;
  gap: 12px;
}

.footer-legal a,
.footer-legal span {
  color: #bdbdbd;
  text-decoration: none;
  font-size: 14px;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1000px) {

  .about-footer .about-container {
    width: 88%;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr ;
    gap: 45px 35px;
  }

  .footer-newsletter {
    grid-column: 1 / -1;
  }

  .footer-newsletter form {
    max-width: 520px;
  }
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

  .about-footer {
    padding: 60px 0 25px;
  }

  .about-footer .about-container {
    width: calc(100% - 36px);
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 42px 25px;
  }

  .footer-newsletter {
    grid-column: 1 / -1;
  }

  .footer-newsletter h2 {
    font-size: clamp(34px, 10vw, 45px);
  }

  .footer-newsletter form {
    max-width: 100%;
    min-height: 52px;
  }

  .footer-address {
    grid-column: 1 / -1;
  }

  .footer-column b {
    font-size: 15px;
  }

  .footer-column a,
  .footer-address p {
    font-size: 14px;
  }

  .footer-address > a {
    font-size: 15px;
  }

  .footer-bottom {
    margin-top: 50px;
    padding-top: 20px;
    justify-content: flex-start;
  }

  .footer-bottom p {
    font-size: 13px;
  }
}


/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 430px) {

  .footer-grid {
    grid-template-columns: 1fr;
    gap: 35px;
  }

  .footer-newsletter,
  .footer-address {
    grid-column: auto;
  }

  .footer-newsletter h2 {
    font-size: 36px;
  }

  .footer-column {
    gap: 12px;
  }
}