:root{
  --color-bg:#f6f4ee;
  --color-bg-alt:#efeadf;
  --color-surface:#fffdf8;
  --color-ink:#1c2430;
  --color-ink-soft:#4d5568;
  --color-ink-faint:#7a8296;
  --color-primary:#1f3a5f;
  --color-primary-dark:#12233b;
  --color-primary-light:#3a5f8a;
  --color-accent:#d97b3f;
  --color-accent-dark:#b8622a;
  --color-accent-soft:#f6ddc4;
  --color-teal:#3f7d6b;
  --color-teal-dark:#2c5c4e;
  --color-teal-soft:#d8ebe4;
  --color-line:#e1dbcc;
  --color-line-dark:#2c394a;

  --radius-sm:8px;
  --radius-md:16px;
  --radius-lg:24px;
  --radius-xl:32px;

  --space-1:0.5rem;
  --space-2:1rem;
  --space-3:1.5rem;
  --space-4:2rem;
  --space-5:3rem;
  --space-6:4.5rem;
  --space-7:6.5rem;

  --shadow-sm:0 1px 2px rgba(28,36,48,0.07), 0 1px 1px rgba(28,36,48,0.05);
  --shadow-md:0 6px 16px rgba(28,36,48,0.09), 0 2px 6px rgba(28,36,48,0.06);
  --shadow-lg:0 24px 48px -14px rgba(18,35,59,0.28), 0 10px 20px rgba(18,35,59,0.10);
  --shadow-glow-accent:0 10px 30px -6px rgba(217,123,63,0.45);
  --shadow-glow-teal:0 10px 30px -6px rgba(63,125,107,0.4);
  --shadow-glow-primary:0 10px 34px -8px rgba(31,58,95,0.5);

  --ease:cubic-bezier(.4,0,.2,1);
}

*,*::before,*::after{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--color-bg);
  color:var(--color-ink);
  font-family:'Manrope',sans-serif;
  font-size:16px;
  line-height:1.65;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
img{max-width:100%;display:block;}
a{color:inherit;text-decoration:none;}
h1,h2,h3,h4{
  font-family:'Newsreader',serif;
  color:var(--color-primary-dark);
  line-height:1.15;
  margin:0 0 0.6em;
  font-weight:600;
}
p{margin:0 0 1em;color:var(--color-ink-soft);}
ul{margin:0;padding:0;}
button{font-family:inherit;cursor:pointer;}
input,textarea{font-family:inherit;font-size:1rem;}

.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:.5em;
  padding:0.85em 1.7em;
  border-radius:var(--radius-md);
  font-weight:600;
  font-size:0.95rem;
  border:1px solid transparent;
  transition:transform .3s var(--ease), box-shadow .3s var(--ease), background .3s var(--ease), color .3s var(--ease);
  min-height:44px;
}
.btn-primary{
  background:var(--color-primary);
  color:#fdfbf6;
  box-shadow:var(--shadow-glow-primary);
}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 16px 40px -8px rgba(31,58,95,0.6);}
.btn-accent{
  background:var(--color-accent);
  color:#2a1608;
  box-shadow:var(--shadow-glow-accent);
}
.btn-accent:hover{transform:translateY(-2px);background:var(--color-accent-dark);box-shadow:0 16px 40px -8px rgba(217,123,63,0.6);}
.btn-ghost{
  background:transparent;
  border-color:var(--color-line);
  color:var(--color-primary-dark);
}
.btn-ghost:hover{border-color:var(--color-primary);background:rgba(31,58,95,0.06);}


.siteHeader{
  position:sticky;top:0;left:0;right:0;z-index:100;
  background:rgba(253,251,246,0.92);
  backdrop-filter:blur(10px);
  transition:box-shadow .2s ease;
}
.siteHeader_inner{
  max-width:1280px;margin:0 auto;
  display:flex;align-items:center;justify-content:space-between;
  padding:0.9rem 1.5rem;
}
.siteHeader_logo{
  display:flex;align-items:center;gap:.6rem;
  font-family:'Newsreader',serif;font-size:1.3rem;font-weight:700;color:var(--color-primary-dark);
}
.siteHeader_navList{list-style:none;display:flex;gap:1.8rem;}
.siteHeader_navLink{
  font-size:0.94rem;font-weight:500;color:var(--color-ink-soft);
  position:relative;padding:.3rem 0;
  transition:color .3s ease;
}
.siteHeader_navLink::after{
  content:'';position:absolute;bottom:-2px;left:0;width:0;height:2px;
  background:var(--color-accent);transition:width .3s var(--ease);
}
.siteHeader_navLink:hover,.siteHeader_navLink.is-active{color:var(--color-primary-dark);}
.siteHeader_navLink:hover::after,.siteHeader_navLink.is-active::after{width:100%;}
.siteHeader_burger{
  display:none;flex-direction:column;justify-content:center;gap:5px;
  width:44px;height:44px;background:none;border:none;
}
.siteHeader_burger span{display:block;width:22px;height:2px;background:var(--color-primary-dark);margin:0 auto;transition:transform .3s ease, opacity .3s ease;}
.siteHeader_progress{
  height:3px;width:0%;
  background:linear-gradient(90deg,var(--color-accent),var(--color-teal));
  transition:width .1s linear;
}


.pageShift{transition:transform .4s var(--ease);transform-origin:left center;}
body.drawerOpen .pageShift{transform:translateX(-260px) scale(0.95);}
.mobileDrawer{
  position:fixed;top:0;right:0;width:270px;height:100vh;
  background:linear-gradient(165deg,var(--color-primary-dark),var(--color-primary));
  color:#f4f1ea;
  transform:translateX(100%);
  transition:transform .4s var(--ease);
  z-index:200;
  padding:2rem 1.6rem;
  display:flex;flex-direction:column;
  box-shadow:-20px 0 50px rgba(0,0,0,0.3);
}
body.drawerOpen .mobileDrawer{transform:translateX(0);}
.mobileDrawer_close{
  align-self:flex-end;background:none;border:none;color:#f4f1ea;font-size:1.4rem;
  width:44px;height:44px;
}
.mobileDrawer_list{list-style:none;margin-top:1.5rem;display:flex;flex-direction:column;gap:1.1rem;}
.mobileDrawer_list a{font-size:1.1rem;font-family:'Newsreader',serif;font-weight:600;color:#f4f1ea;}
.mobileDrawer_footer{margin-top:auto;padding-top:2rem;}


.mainHero{
  max-width:1280px;margin:0 auto;
  padding:var(--space-6) 1.5rem var(--space-5);
  display:grid;grid-template-columns:1.1fr 0.9fr;gap:var(--space-5);
  align-items:center;
}
.mainHero_eyebrow{
  text-transform:uppercase;letter-spacing:.14em;font-size:0.78rem;font-weight:700;
  color:var(--color-teal-dark);margin-bottom:1rem;
}
.mainHero_title{
  font-size:clamp(2.1rem, 4.4vw, 3.6rem);
  margin-bottom:0.7em;
}
.mainHero_lead{font-size:1.05rem;max-width:46ch;}
.mainHero_actions{display:flex;gap:1rem;flex-wrap:wrap;margin-top:1.6rem;}
.mainHero_mosaic{position:relative;height:420px;}
.mainHero_mosaicImg{
  position:absolute;object-fit:cover;border-radius:var(--radius-lg);
  box-shadow:var(--shadow-lg);border:4px solid var(--color-surface);
}
.mosaic1{width:56%;top:0;left:6%;height:230px;transform:rotate(-4deg);z-index:2;}
.mosaic2{width:44%;top:8%;right:0;height:180px;transform:rotate(5deg);z-index:1;}
.mosaic3{width:40%;bottom:0;left:0;height:190px;transform:rotate(3deg);z-index:3;}
.mosaic4{width:42%;bottom:2%;right:6%;height:170px;transform:rotate(-6deg);z-index:1;}


.sectionStrip{
  background:var(--color-primary-dark);color:var(--color-accent-soft);
  overflow:hidden;padding:0.9rem 0;
}
.sectionStrip-alt{background:var(--color-teal-soft);color:var(--color-teal-dark);}
.sectionStrip_track{
  display:flex;gap:2.4rem;white-space:nowrap;
  animation:scrollStrip 22s linear infinite;
  font-size:1rem;letter-spacing:.08em;font-weight:600;
}
.sectionStrip_track i{font-size:1.1rem;}
@keyframes scrollStrip{from{transform:translateX(0);}to{transform:translateX(-50%);}}


.offeringsIntro{max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;}
.offeringsIntro_text{max-width:70ch;margin-bottom:var(--space-5);}
.sectionTitle{font-size:clamp(1.7rem,3vw,2.5rem);}
.sectionTitle-center{text-align:center;}

.bentoGrid{
  container-type:inline-size;container-name:bentoGrid;
  display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:minmax(150px,auto);
  gap:1.4rem;
}
.bentoGrid-flat{grid-template-columns:repeat(4,1fr);}
.bentoCell{
  container-type:inline-size;container-name:bentoCell;
  background:var(--color-surface);
  border:1px solid var(--color-line);
  border-radius:var(--radius-lg);
  padding:1.8rem;
  box-shadow:var(--shadow-sm);
  transition:box-shadow .35s var(--ease), transform .35s var(--ease);
}
.bentoCell:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);}
.bentoCell-large{grid-column:span 4;}
.bentoCell-tall{grid-column:span 2;grid-row:span 2;}
.bentoCell-wide{grid-column:span 2;}
.bentoCell-small{grid-column:span 1;display:flex;flex-direction:column;justify-content:center;}
.bentoCell-dark{background:var(--color-primary-dark);border-color:var(--color-line-dark);}
.bentoCell-dark .bentoCell_smallTitle{color:#f4f1ea;}
.bentoCell-dark .bentoCell_smallDesc{color:#c9d2de;}

.bentoCell_body{display:flex;flex-direction:column;gap:1.2rem;height:100%;}
@container bentoCell (min-width: 480px){
  .bentoCell-large .bentoCell_body{flex-direction:row;align-items:center;}
  .bentoCell-large .bentoCell_text{flex:1.1;}
  .bentoCell-large .bentoCell_img{flex:0.9;height:100%;max-height:280px;object-fit:cover;border-radius:var(--radius-md);}
}
@container bentoCell (min-width: 380px) and (max-width: 900px){
  .bentoCell-tall .bentoCell_img,.bentoCell-wide .bentoCell_img{border-radius:var(--radius-md);}
}
.bentoCell_tag{
  display:inline-block;font-size:0.72rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;
  padding:0.3em 0.8em;border-radius:99px;margin-bottom:0.8rem;
}
.tag-primary{background:rgba(31,58,95,0.12);color:var(--color-primary-dark);}
.tag-teal{background:var(--color-teal-soft);color:var(--color-teal-dark);}
.tag-accent{background:var(--color-accent-soft);color:var(--color-accent-dark);}
.bentoCell_title{font-size:1.35rem;}
.bentoCell_desc{font-size:0.96rem;}
.bentoCell_tagList{list-style:none;display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1rem;}
.bentoCell_tagList li{
  font-size:0.8rem;background:var(--color-bg-alt);padding:0.4em 0.8em;border-radius:99px;color:var(--color-ink-soft);
}
.bentoCell_img{width:100%;border-radius:var(--radius-md);object-fit:cover;height:180px;}
.bentoCell_link{color:var(--color-accent-dark);font-weight:600;display:inline-flex;align-items:center;gap:.4em;margin-top:.5rem;transition:gap .3s ease;}
.bentoCell_link:hover{gap:.7em;}
.bentoCell_smallTitle{font-size:1.05rem;display:flex;align-items:center;gap:.5em;color:var(--color-primary-dark);}
.bentoCell_smallDesc{font-size:0.88rem;margin:0;}


.magazineSection{max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;}
.magazineSection_intro{max-width:80ch;margin-bottom:var(--space-4);}
.magazineSection_lead{font-size:1.1rem;color:var(--color-ink);}
.magazineSection_columns{
  column-count:2;column-gap:3rem;
}
.magazineSection_col{break-inside:avoid;margin-bottom:1rem;}
.pullQuote{
  font-family:'Newsreader',serif;font-size:1.4rem;font-style:italic;color:var(--color-primary-dark);
  border-left:3px solid var(--color-accent);
  padding:0.4em 0 0.4em 1.2rem;margin:1.6rem 0;
  break-inside:avoid;
}
.pullQuote cite{display:block;font-family:'Manrope',sans-serif;font-style:normal;font-size:0.8rem;color:var(--color-ink-faint);margin-top:0.6rem;}


.crmSection{
  max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;
  display:grid;grid-template-columns:0.9fr 1.1fr;gap:var(--space-5);align-items:center;
}
.crmSection_image img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);}


.comparisonSection{max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;}
.comparisonSection_intro{max-width:78ch;margin-bottom:var(--space-4);}
.toolGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;}
.toolCard{
  container-type:inline-size;container-name:toolCard;
  background:linear-gradient(160deg,var(--color-primary-dark),var(--color-primary));
  color:#f4f1ea;border-radius:var(--radius-lg);padding:1.8rem;
  box-shadow:var(--shadow-glow-primary);
  transition:transform .35s var(--ease);
}
.toolCard:hover{transform:translateY(-6px);}
.toolCard_header{display:flex;align-items:center;gap:0.8rem;margin-bottom:1rem;}
.toolCard_icon{font-size:1.6rem;color:var(--color-accent-soft);}
.toolCard h3{color:#f4f1ea;margin:0;font-size:1.3rem;}
.toolCard p{color:#dfe4ec;font-size:0.92rem;}
.toolCard_fit strong,.toolCard_limit strong{color:var(--color-accent-soft);}
@container toolCard (max-width: 260px){
  .toolCard_header{flex-direction:column;align-items:flex-start;gap:0.4rem;}
}
.comparisonSection_note{max-width:78ch;margin-top:1.6rem;font-size:0.95rem;color:var(--color-ink-faint);}


.transparencySection{max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;}
.transparencySection_text{max-width:74ch;margin-bottom:var(--space-4);}


.contactCardsSection{max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;}
.contactCardsGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem;margin-top:var(--space-3);}
.contactCard{
  background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);
  padding:2rem;text-align:center;box-shadow:var(--shadow-sm);
  transition:box-shadow .3s ease,transform .3s ease;
}
.contactCard:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);}
.contactCard_icon{
  width:56px;height:56px;margin:0 auto 1rem;border-radius:50%;
  background:var(--color-teal-soft);color:var(--color-teal-dark);
  display:flex;align-items:center;justify-content:center;font-size:1.3rem;
}
.contactCard h3{font-size:1.1rem;margin-bottom:0.4em;}
.contactCard a{color:var(--color-primary);font-weight:600;transition:color .3s ease;}
.contactCard a:hover{color:var(--color-accent-dark);}


.ctaBand{
  background:linear-gradient(150deg,var(--color-primary-dark),var(--color-primary));
  margin:var(--space-5) 1.5rem;border-radius:var(--radius-xl);
  padding:var(--space-6) var(--space-4);
  box-shadow:var(--shadow-lg);
}
.ctaBand_inner{max-width:700px;margin:0 auto;text-align:center;}
.ctaBand_inner h2{color:#f4f1ea;font-size:clamp(1.6rem,3vw,2.3rem);}
.ctaBand_inner p{color:#dfe4ec;margin-bottom:1.6rem;}


.subHero{
  max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem var(--space-5);
  display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);align-items:center;
}
.subHero-narrow{grid-template-columns:1fr;max-width:900px;}
.subHero_title{font-size:clamp(2rem,4vw,3rem);}
.subHero_lead{font-size:1.05rem;max-width:52ch;}
.subHero_image img{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);width:100%;height:100%;object-fit:cover;max-height:420px;}


.verifySection{max-width:960px;margin:0 auto;padding:var(--space-6) 1.5rem;display:flex;flex-direction:column;gap:var(--space-4);}
.verifyBlock{
  display:grid;gap:1.5rem;
  padding-bottom:var(--space-4);border-bottom:1px solid var(--color-line);
}
.verifyBlock:last-child{border-bottom:none;}
.verifyBlock_num{
  font-family:'Newsreader',serif;font-size:2.2rem;color:var(--color-accent);font-weight:700;
}


.guidesSection{max-width:1000px;margin:0 auto;padding:var(--space-6) 1.5rem;display:flex;flex-direction:column;gap:var(--space-5);}
.guideRow{display:grid;grid-template-columns:100px 1fr;gap:2rem;align-items:start;}
.guideRow-reverse{direction:rtl;}
.guideRow-reverse .guideRow_content{direction:ltr;}
.guideRow_num{
  font-family:'Newsreader',serif;font-size:3rem;color:var(--color-teal);font-weight:700;
  direction:ltr;
}


.industryGrid{
  max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem;
  display:grid;grid-template-columns:repeat(3,1fr);gap:1.6rem;
}
.industryCard{
  background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);
  padding:2rem;box-shadow:var(--shadow-sm);transition:box-shadow .3s ease,transform .3s ease;
}
.industryCard:hover{box-shadow:var(--shadow-md);transform:translateY(-4px);}
.industryCard_num{
  width:52px;height:52px;border-radius:50%;
  background:var(--color-accent-soft);color:var(--color-accent-dark);
  display:flex;align-items:center;justify-content:center;font-size:1.2rem;margin-bottom:1rem;
}
.industryCard:nth-child(5){grid-column:1 / -1;max-width:60ch;margin:0 auto;}


.contactFormSection{max-width:1000px;margin:0 auto;padding:0 1.5rem var(--space-5);}
.contactForm{
  background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);
  padding:1.8rem;box-shadow:var(--shadow-sm);
}
.contactForm_row{display:flex;gap:1rem;flex-wrap:wrap;}
.contactForm_field{flex:1 1 160px;display:flex;flex-direction:column;gap:0.4rem;}
.contactForm_fieldWide{flex:2 1 260px;}
.contactForm_field label{font-size:0.82rem;font-weight:600;color:var(--color-ink-soft);}
.contactForm_field input,.contactForm_field textarea{
  padding:0.7em 0.9em;border-radius:var(--radius-sm);border:1px solid var(--color-line);
  background:var(--color-bg);color:var(--color-ink);resize:vertical;
  transition:border-color .3s ease, box-shadow .3s ease;
}
.contactForm_field input:focus,.contactForm_field textarea:focus{
  outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px rgba(31,58,95,0.15);
}
.contactForm_rowBottom{margin-top:1.2rem;align-items:center;justify-content:space-between;}
.contactForm_privacy{display:flex;align-items:center;gap:0.6rem;font-size:0.88rem;color:var(--color-ink-soft);}
.contactForm_privacy input{width:20px;height:20px;}
.contactForm_note{color:var(--color-accent-dark);font-size:0.85rem;margin:0.8rem 0 0;min-height:1em;}


.mapSection{max-width:1280px;margin:0 auto;padding:0 1.5rem var(--space-5);}
.mapSection iframe{border-radius:var(--radius-lg);box-shadow:var(--shadow-md);}


.teamSection{max-width:1000px;margin:0 auto;padding:0 1.5rem var(--space-6);}
.teamSection_lead{max-width:60ch;margin:0 auto var(--space-4);text-align:center;}
.teamGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:1.6rem;}
.teamBio_card{
  background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius-lg);
  overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .3s ease;
}
.teamBio_card:hover{box-shadow:var(--shadow-md);}
.teamBio_trigger{
  width:100%;background:none;border:none;text-align:left;
  display:grid;grid-template-columns:64px 1fr 30px;align-items:center;gap:1rem;
  padding:1.4rem;
}
.teamBio_img{width:64px;height:64px;border-radius:50%;object-fit:cover;grid-row:span 2;}
.teamBio_name{font-family:'Newsreader',serif;font-weight:700;font-size:1.1rem;color:var(--color-primary-dark);grid-column:2;}
.teamBio_role{font-size:0.85rem;color:var(--color-ink-faint);grid-column:2;}
.teamBio_icon{
  grid-column:3;grid-row:span 2;justify-self:end;
  color:var(--color-accent);font-size:1.1rem;transition:transform .3s var(--ease);
}
.teamBio_card[data-expanded="true"] .teamBio_icon{transform:rotate(45deg);}
.teamBio_full{
  max-height:0;overflow:hidden;padding:0 1.4rem;
  transition:max-height .5s var(--ease), padding .5s var(--ease);
}
.teamBio_card[data-expanded="true"] .teamBio_full{max-height:600px;padding:0 1.4rem 1.4rem;}
.teamBio_full p{font-size:0.92rem;}


.thanksSection{max-width:700px;margin:0 auto;padding:var(--space-6) 1.5rem var(--space-7);}
.thanksSection_intro{text-align:center;margin-bottom:var(--space-5);}
.thanksSection_intro h1{font-size:clamp(1.9rem,4vw,2.6rem);}
.thanksTimeline{display:flex;flex-direction:column;gap:0;position:relative;padding-left:1rem;}
.thanksTimeline_item{display:flex;gap:1.2rem;padding-bottom:2.2rem;position:relative;}
.thanksTimeline_item:not(:last-child)::before{
  content:'';position:absolute;left:20px;top:44px;bottom:0;width:2px;background:var(--color-line);
}
.thanksTimeline_marker{
  width:42px;height:42px;border-radius:50%;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;
  background:var(--color-bg-alt);color:var(--color-ink-faint);font-size:1rem;
  border:2px solid var(--color-line);z-index:1;
}
.thanksTimeline_item.is-done .thanksTimeline_marker{background:var(--color-teal-soft);color:var(--color-teal-dark);border-color:var(--color-teal);}
.thanksTimeline_item.is-highlight .thanksTimeline_marker{
  background:var(--color-accent);color:#2a1608;border-color:var(--color-accent-dark);
  box-shadow:var(--shadow-glow-accent);
}
.thanksTimeline_item.is-upcoming .thanksTimeline_marker{opacity:0.6;}
.thanksTimeline_item.is-upcoming h3,.thanksTimeline_item.is-upcoming p{color:var(--color-ink-faint);}
.thanksTimeline_text h3{font-size:1.05rem;margin-bottom:0.2em;}
.thanksTimeline_text p{font-size:0.9rem;margin:0;}


.legalSection{max-width:860px;margin:0 auto;padding:var(--space-6) 1.5rem var(--space-7);}
.legalSection h1{font-size:clamp(1.9rem,4vw,2.6rem);}
.legalSection_updated{font-size:0.85rem;color:var(--color-ink-faint);margin-bottom:2rem;}
.legalSection h2{font-size:1.3rem;margin-top:2.2rem;}
.legalTable{width:100%;border-collapse:collapse;margin:1.2rem 0 1.6rem;font-size:0.9rem;}
.legalTable th,.legalTable td{border:1px solid var(--color-line);padding:0.7em 0.9em;text-align:left;vertical-align:top;}
.legalTable th{background:var(--color-bg-alt);color:var(--color-primary-dark);}
.legalDefinitions dt{font-weight:700;color:var(--color-primary-dark);margin-top:1em;}
.legalDefinitions dd{margin:0.3em 0 0;color:var(--color-ink-soft);}


.pageFooter{
  background:var(--color-primary-dark);color:#dfe4ec;margin-top:var(--space-6);
}
.pageFooter_grid{
  max-width:1280px;margin:0 auto;padding:var(--space-6) 1.5rem var(--space-4);
  display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:2.4rem;
}
.pageFooter_brand p{color:#b9c2d1;font-size:0.9rem;margin-top:0.8rem;}
.pageFooter_col h3{color:#f4f1ea;font-size:1rem;font-family:'Manrope',sans-serif;font-weight:700;margin-bottom:1rem;}
.pageFooter_links{list-style:none;display:flex;flex-direction:column;gap:0.6rem;font-size:0.9rem;}
.pageFooter_links a,.pageFooter_linkBtn{color:#c6cedb;transition:color .3s ease;background:none;border:none;padding:0;text-align:left;font-size:0.9rem;}
.pageFooter_links a:hover,.pageFooter_linkBtn:hover{color:var(--color-accent-soft);}
.pageFooter_links i{width:18px;color:var(--color-accent-soft);margin-right:0.3em;}
.pageFooter_bottom{
  border-top:1px solid rgba(255,255,255,0.1);padding:1.2rem 1.5rem;text-align:center;
  font-size:0.82rem;color:#9aa4b6;
}


.cookieModal{
  position:fixed;inset:0;z-index:500;display:none;align-items:center;justify-content:center;padding:1.5rem;
}
.cookieModal.is-visible{display:flex;}
.cookieModal_backdrop{position:absolute;inset:0;background:rgba(18,24,32,0.6);backdrop-filter:blur(4px);}
.cookieModal_box{
  position:relative;background:var(--color-surface);border-radius:var(--radius-lg);
  max-width:520px;width:100%;padding:2rem;box-shadow:var(--shadow-lg);
  max-height:88vh;overflow-y:auto;
  animation:cookiePop .4s var(--ease);
}
@keyframes cookiePop{from{opacity:0;transform:scale(0.94) translateY(10px);}to{opacity:1;transform:scale(1) translateY(0);}}
.cookieModal_box h2{font-size:1.4rem;}
.cookieModal_box p{font-size:0.92rem;}
.cookieModal_options{display:flex;flex-direction:column;gap:1rem;margin:1.4rem 0;}
.cookieModal_option{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.8rem 1rem;background:var(--color-bg-alt);border-radius:var(--radius-md);}
.cookieModal_optionText{display:flex;flex-direction:column;gap:0.2rem;}
.cookieModal_optionText strong{font-size:0.92rem;color:var(--color-primary-dark);}
.cookieModal_optionText span{font-size:0.8rem;color:var(--color-ink-faint);}
.switch{position:relative;display:inline-block;width:44px;height:26px;flex-shrink:0;}
.switch input{opacity:0;width:0;height:0;}
.switch_slider{position:absolute;inset:0;background:#c9cfda;border-radius:99px;transition:background .3s ease;}
.switch_slider::before{content:'';position:absolute;width:20px;height:20px;left:3px;top:3px;background:#fff;border-radius:50%;transition:transform .3s ease;box-shadow:var(--shadow-sm);}
.switch input:checked + .switch_slider{background:var(--color-teal);}
.switch input:checked + .switch_slider::before{transform:translateX(18px);}
.switch input:disabled + .switch_slider{opacity:0.6;}
.cookieModal_actions{display:flex;flex-wrap:wrap;gap:0.8rem;justify-content:flex-end;}


.revealOnScroll{opacity:0;transform:translateY(24px);transition:opacity .7s var(--ease), transform .7s var(--ease);}
.revealOnScroll.isVisible{opacity:1;transform:translateY(0);}

@keyframes heroFadeIn{from{opacity:0;transform:translateY(20px);}to{opacity:1;transform:translateY(0);}}
.mainHero_text{animation:heroFadeIn .8s var(--ease) both;}
.mainHero_mosaic{animation:heroFadeIn 1s var(--ease) .15s both;}


@media (max-width:1000px){
  .mainHero{grid-template-columns:1fr;}
  .mainHero_mosaic{height:340px;order:-1;}
  .crmSection{grid-template-columns:1fr;}
  .crmSection_image{order:-1;}
  .subHero{grid-template-columns:1fr;}
  .subHero_image{order:-1;}
  .magazineSection_columns{column-count:1;}
  .toolGrid{grid-template-columns:1fr 1fr;}
  .contactCardsGrid{grid-template-columns:1fr 1fr;}
  .industryGrid{grid-template-columns:1fr 1fr;}
  .industryCard:nth-child(5){grid-column:span 2;max-width:none;}
  .teamGrid{grid-template-columns:1fr;}
  .pageFooter_grid{grid-template-columns:1fr 1fr;}
  .bentoGrid{grid-template-columns:repeat(2,1fr);}
  .bentoCell-large{grid-column:span 2;}
  .bentoCell-tall{grid-column:span 2;grid-row:auto;}
  .bentoCell-wide{grid-column:span 2;}
}

@media (max-width:760px){
  .siteHeader_nav{display:none;}
  .siteHeader_burger{display:flex;}
  .toolGrid{grid-template-columns:1fr;}
  .contactCardsGrid{grid-template-columns:1fr;}
  .industryGrid{grid-template-columns:1fr;}
  .industryCard:nth-child(5){grid-column:span 1;}
  .pageFooter_grid{grid-template-columns:1fr;}
  .bentoGrid{grid-template-columns:1fr;}
  .bentoCell-large,.bentoCell-tall,.bentoCell-wide{grid-column:span 1;}
  .guideRow{grid-template-columns:1fr;}
  .guideRow-reverse{direction:ltr;}
  .verifyBlock{grid-template-columns:1fr;}
  .contactForm_row{flex-direction:column;}
  .contactForm_rowBottom{flex-direction:column;align-items:flex-start;gap:1rem;}
  .cookieModal_actions{justify-content:stretch;}
  .cookieModal_actions .btn{flex:1;}
  .teamBio_trigger{grid-template-columns:52px 1fr 24px;}
}

@media (max-width:420px){
  .mainHero_mosaic{height:280px;}
  .mosaic1{width:60%;height:180px;}
  .mosaic2{width:48%;height:140px;}
  .mosaic3{width:44%;height:150px;}
  .mosaic4{width:46%;height:130px;}
}