/* =========================================================
   BIZSTARTZ — inner-page styles (multi-page)
   Loaded after style.css on every page.
   ========================================================= */

/* ---------- Page hero / banner ---------- */
.pagehero{
  position:relative;overflow:hidden;
  background:linear-gradient(155deg,var(--navy),var(--ink));
  color:#fff;padding:160px 0 70px;text-align:center;
}
.pagehero__glow{position:absolute;top:-200px;right:-120px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,rgba(58,173,224,.34),transparent 64%);pointer-events:none}
.pagehero::after{content:"";position:absolute;bottom:-220px;left:-120px;width:560px;height:560px;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.22),transparent 66%);pointer-events:none}
.pagehero .container{position:relative;z-index:1}
.pagehero__title{font-size:clamp(2.2rem,4.6vw,3.5rem);font-weight:800;color:#fff;margin:6px auto 16px;max-width:14ch}
.pagehero__lead{font-size:clamp(1rem,1.4vw,1.2rem);color:#bcc8e8;max-width:620px;margin:0 auto}

/* ---------- Breadcrumb ---------- */
.breadcrumb{display:inline-flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:center;font-size:13px;margin-bottom:22px;color:#9fb0d8}
.breadcrumb a{color:#9fb0d8;transition:color .3s var(--ease)}
.breadcrumb a:hover{color:#fff}
.bc__sep{opacity:.5}
.bc__cur{color:#fff;font-weight:600}

/* ---------- Card variants & links ---------- */
.card{display:flex;flex-direction:column}
a.card{cursor:pointer}
.card__cat{display:inline-block;align-self:flex-start;font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.12em;color:var(--navy-2);background:rgba(37,99,235,.08);padding:4px 10px;border-radius:100px;margin-bottom:12px}
.card__link{margin-top:auto;padding-top:14px;display:inline-flex;align-items:center;gap:7px;font-size:14px;font-weight:600;color:var(--blue)}
.card__link svg{width:15px;height:15px;transition:transform .45s var(--ease)}
a.card:hover .card__link svg{transform:translateX(4px)}
.cards--3{grid-template-columns:repeat(3,1fr)}
.cards--2{grid-template-columns:repeat(2,1fr)}
.cards--svc{grid-template-columns:repeat(4,1fr)}
.section__more{text-align:center;margin-top:38px}

/* ---------- Service intro (split) ---------- */
.svc-intro{display:grid;grid-template-columns:1.15fr .85fr;gap:54px;align-items:start}
.svc-intro__copy .section__title{margin-bottom:16px}
.svc-intro__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:28px}
.svc-aside{position:sticky;top:104px}
.svc-aside__card{background:linear-gradient(180deg,#fff,#fbfcff);border:1px solid var(--line);border-radius:24px;padding:28px;box-shadow:inset 0 1px 1px rgba(255,255,255,.8)}
.svc-aside__ico{width:54px;height:54px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,#eef3ff,#e3ecff);color:var(--blue);border:1px solid rgba(37,99,235,.12);margin-bottom:18px}
.svc-aside__ico svg{width:26px;height:26px}
.svc-aside__price{font-family:"Sora";font-size:22px;font-weight:600;color:var(--ink)}
.svc-aside__price strong{font-weight:800}
.svc-aside__cat{font-size:13px;color:var(--muted);margin:2px 0 18px}
.svc-aside__list{list-style:none;display:flex;flex-direction:column;gap:11px;margin-bottom:22px}
.svc-aside__list li{position:relative;padding-left:26px;font-size:14px;color:var(--text)}
.svc-aside__list li::before{content:"";position:absolute;left:0;top:3px;width:17px;height:17px;border-radius:50%;background:rgba(37,99,235,.12) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/10px no-repeat}

/* ---------- Included checklist grid ---------- */
.incl-grid{list-style:none;display:grid;grid-template-columns:repeat(2,1fr);gap:14px;max-width:880px;margin:0 auto}
.incl-grid li{display:flex;align-items:flex-start;gap:13px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius-sm);padding:18px 20px;box-shadow:var(--shadow-soft);font-size:15px;color:var(--text)}
.incl-grid .check{flex-shrink:0;margin-top:1px}

/* ---------- Related services ---------- */
.related{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.related__card{display:flex;align-items:flex-start;gap:14px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:22px;box-shadow:var(--shadow-soft);transition:transform .5s var(--ease),box-shadow .5s var(--ease),border-color .4s var(--ease);position:relative}
.related__card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift);border-color:rgba(37,99,235,.25)}
.related__card .card__ico{width:44px;height:44px;border-radius:13px;margin-bottom:0;flex-shrink:0}
.related__card .card__ico svg{width:22px;height:22px}
.related__card h4{font-family:"Sora";font-size:15.5px;font-weight:600;color:var(--ink);margin-bottom:5px}
.related__card p{font-size:13px;color:var(--muted);line-height:1.5}
.related__arrow{position:absolute;top:20px;right:20px;color:var(--blue);opacity:0;transform:translateX(-4px);transition:opacity .4s var(--ease),transform .4s var(--ease)}
.related__arrow svg{width:18px;height:18px}
.related__card:hover .related__arrow{opacity:1;transform:none}

/* ---------- Compare table (pricing) ---------- */
.compare{overflow-x:auto;border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow-soft);background:var(--surface)}
.compare__table{width:100%;border-collapse:collapse;min-width:620px}
.compare__table th,.compare__table td{padding:16px 20px;text-align:center;font-size:14.5px;border-bottom:1px solid var(--line)}
.compare__table thead th{font-family:"Sora";font-weight:700;color:var(--ink);font-size:15px;background:var(--bg-2)}
.compare__table thead th span{display:block;font-family:"Plus Jakarta Sans";font-weight:600;color:var(--blue);font-size:14px;margin-top:3px}
.compare__table tbody td:first-child,.compare__table thead th:first-child{text-align:left;font-weight:600;color:var(--text)}
.compare__table .t-feat{background:rgba(37,99,235,.05)}
.compare__table tbody tr:last-child td{border-bottom:none}
.t-yes{color:#16a34a;font-weight:700;font-size:17px}
.t-no{color:#c2cbdb}

/* ---------- Contact ---------- */
.contact{display:grid;grid-template-columns:1.3fr .7fr;gap:40px;align-items:start}
.contact__form{background:linear-gradient(180deg,#fff,#fbfcff);border:1px solid var(--line);border-radius:24px;padding:32px;display:flex;flex-direction:column;gap:18px;box-shadow:inset 0 1px 1px rgba(255,255,255,.8)}
.cf-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.contact__form label{display:flex;flex-direction:column;gap:8px;font-size:14px;font-weight:600;color:var(--ink)}
.contact__form input,.contact__form select,.contact__form textarea{
  font-family:"Plus Jakarta Sans",sans-serif;font-size:15px;font-weight:400;color:var(--text);
  background:#fff;border:1px solid var(--line);border-radius:13px;padding:13px 15px;width:100%;
  transition:border-color .3s var(--ease),box-shadow .3s var(--ease);
}
.contact__form input::placeholder,.contact__form textarea::placeholder{color:#aab2c5}
.contact__form input:focus,.contact__form select:focus,.contact__form textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 4px rgba(37,99,235,.12)}
.contact__form textarea{resize:vertical;min-height:110px}
.cf-note{font-size:12.5px;color:var(--muted);font-weight:400;text-align:center}
.cf-success{font-size:14.5px;font-weight:600;color:#15803d;background:rgba(22,163,74,.1);border:1px solid rgba(22,163,74,.25);border-radius:13px;padding:14px 16px;text-align:center}
.contact__card{background:linear-gradient(165deg,var(--navy),var(--ink));color:#fff;border-radius:24px;padding:32px;box-shadow:var(--shadow-lift)}
.contact__card h3{font-size:20px;color:#fff;margin-bottom:8px}
.contact__card>p{font-size:14px;color:#aab6d8;margin-bottom:22px}
.contact__list{list-style:none;display:flex;flex-direction:column;gap:18px;margin-bottom:24px}
.contact__list li{display:flex;align-items:flex-start;gap:13px}
.ci{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.ci-l{font-size:12px;color:#9fb0d8;margin-bottom:2px}
.contact__list a,.contact__list span{font-size:14.5px;color:#fff;font-weight:500}
.contact__list a:hover{color:var(--sky-light)}
.contact__rating{font-size:13px;color:#aab6d8;margin-top:8px}
.contact__rating strong{color:#fff}

/* ---------- About ---------- */
.about-mission__label{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:var(--sky-light);font-weight:600;margin-bottom:8px}

/* ---------- Responsive ---------- */
@media (max-width:1080px){
  .cards--svc{grid-template-columns:repeat(2,1fr)}
  .cards--3{grid-template-columns:repeat(3,1fr)}
  .related{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:900px){
  .svc-intro{grid-template-columns:1fr;gap:34px}
  .svc-aside{position:static}
  .contact{grid-template-columns:1fr;gap:30px}
  .related{grid-template-columns:1fr}
  .cards--3{grid-template-columns:1fr}
  .cards--2{grid-template-columns:1fr}
}
@media (max-width:560px){
  .cards--svc{grid-template-columns:1fr}
  .incl-grid{grid-template-columns:1fr}
  .cf-row{grid-template-columns:1fr}
  .pagehero{padding:130px 0 56px}
}

/* =========================================================
   IMAGERY (added) — photo cards, media cards, banners
   ========================================================= */

/* --- Service cards with image header --- */
.card--img{padding:0;overflow:hidden}
.card--img .card__media{position:relative;aspect-ratio:16/10;background-size:cover;background-position:center;background-color:#dde6f5}
.card--img .card__media::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,21,48,0) 55%,rgba(13,21,48,.22))}
.card--img .card__badge{position:absolute;left:16px;bottom:-20px;z-index:2;width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);display:flex;align-items:center;justify-content:center;color:var(--blue);box-shadow:var(--shadow-soft);border:1px solid rgba(255,255,255,.8)}
.card--img .card__badge svg{width:23px;height:23px}
.card--img .card__body{padding:32px 22px 24px;display:flex;flex-direction:column;flex:1}
.card--img .card__cat{margin-bottom:10px}
.card--img h3{font-size:17px;font-weight:600;margin-bottom:8px;color:var(--ink);letter-spacing:-.01em}
.card--img p{font-size:14px;color:var(--muted);line-height:1.55}

/* --- Service detail banner --- */
.svc-banner{position:relative;z-index:3}
.svc-banner__img{height:clamp(210px,32vw,360px);border-radius:28px;background-size:cover;background-position:center;margin-top:-52px;box-shadow:var(--shadow-lift);border:6px solid #fff}

/* --- Photo card (why / about) --- */
.photo-card{position:relative;border-radius:28px;overflow:hidden;box-shadow:var(--shadow-lift);min-height:470px;height:100%}
.photo-card__img{position:absolute;inset:0;background-size:cover;background-position:center;transition:transform 1.2s var(--ease)}
.photo-card:hover .photo-card__img{transform:scale(1.05)}
.photo-card::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,21,48,0) 32%,rgba(13,21,48,.9))}
.photo-card__cap{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:32px;color:#fff}
.photo-card__text{font-family:"Sora",sans-serif;font-weight:500;font-size:18px;line-height:1.46;letter-spacing:-.01em;margin:14px 0 18px}
.photo-card__cap .qc__name{color:#fff}
.photo-card__cap .qc__role{color:#c7d2ee}
.photo-card__cap--stat{padding-bottom:34px}
.ab-stat__num{font-family:"Sora",sans-serif;font-weight:800;font-size:42px;line-height:1;background:linear-gradient(120deg,#fff,#9fd5f3);-webkit-background-clip:text;background-clip:text;color:transparent}
.ab-stat__lbl{font-size:14px;color:#c7d2ee;max-width:26ch;margin-top:6px}

/* --- Hero photo & floating chips (stacked, nothing clipped) --- */
.hero__visual{overflow:visible}
.hero__photo{position:absolute;top:-12px;right:0;width:clamp(156px,17vw,192px);aspect-ratio:5/4;height:auto;object-fit:cover;object-position:center;border-radius:18px;border:5px solid #fff;box-shadow:var(--shadow-lift);transform:rotate(3deg);z-index:3}
.hero__visual .bezel{position:relative;z-index:2;margin-top:30px;margin-right:28px}
.hero__visual .float-card{z-index:4}
.hero__visual .float-card--a{top:auto;bottom:64px;left:-16px}
.hero__visual .float-card--b{top:auto;bottom:-14px;right:8px}
@media (max-width:900px){
  .hero__visual .bezel{margin-right:0}
  .hero__visual .float-card--a{left:0}
  .hero__visual .float-card--b{right:0}
}

/* --- Mission band (about) --- */
.mission{padding:8px 0 24px}
.mission__card{position:relative;border-radius:34px;overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow-lift)}
.mission__overlay{background:linear-gradient(125deg,rgba(13,21,48,.93),rgba(22,35,90,.7));padding:clamp(42px,6vw,76px);text-align:center}
.mission__quote{font-family:"Sora",sans-serif;font-weight:700;font-size:clamp(1.5rem,3vw,2.35rem);color:#fff;max-width:20ch;margin:12px auto 16px;line-height:1.2}
.mission__by{color:#c7d2ee;font-size:14px}
.mission .about-mission__label{color:var(--sky-light)}

/* --- CTA skyline background --- */
.cta__bg{position:absolute;inset:0;z-index:0;background-size:cover;background-position:center;opacity:.18;mix-blend-mode:luminosity;pointer-events:none}
.cta .eyebrow{position:relative;z-index:1}

/* --- Page hero subtle skyline --- */
.pagehero{background-image:linear-gradient(155deg,rgba(22,35,90,.93),rgba(13,21,48,.95)),url('../assets/images/skyline.jpg');background-size:cover;background-position:center}

/* --- Contact side card skyline --- */
.contact__card{background-image:linear-gradient(165deg,rgba(22,35,90,.95),rgba(13,21,48,.97)),url('../assets/images/skyline.jpg');background-size:cover;background-position:center}

@media (max-width:560px){
  .hero__photo{display:none}
}

/* =========================================================
   SERVICES BENTO (home) — image-overlay tiles, asymmetric
   ========================================================= */
.section--services{position:relative;overflow:hidden}
.section--services::before{content:"";position:absolute;top:6%;left:50%;transform:translateX(-50%);width:78%;height:62%;background:radial-gradient(ellipse at center,rgba(58,173,224,.12),transparent 70%);pointer-events:none;z-index:0}
.section--services .container{position:relative;z-index:1}

.svc-bento{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:198px;grid-auto-flow:dense;gap:16px}

.sbento{position:relative;overflow:hidden;border-radius:22px;min-height:198px;display:flex;align-items:flex-end;color:#fff;isolation:isolate;box-shadow:var(--shadow-soft);transition:transform .6s var(--ease),box-shadow .6s var(--ease)}
.sbento__media{position:absolute;inset:0;z-index:-2;background-color:#16235a;background-size:cover;background-position:center;background-repeat:no-repeat;transition:transform 1.1s var(--ease)}
.sbento__shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(13,21,48,.04) 0%,rgba(13,21,48,.42) 46%,rgba(8,12,30,.9) 100%);transition:background .55s var(--ease)}
.sbento:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift)}
.sbento:hover .sbento__media{transform:scale(1.09)}
.sbento:hover .sbento__shade{background:linear-gradient(180deg,rgba(22,46,120,.28) 0%,rgba(13,21,48,.78) 52%,rgba(6,10,26,.96) 100%)}

.sbento__ico{position:absolute;top:16px;left:16px;width:44px;height:44px;border-radius:13px;display:flex;align-items:center;justify-content:center;color:#fff;background:rgba(255,255,255,.15);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.3);box-shadow:0 6px 16px -8px rgba(0,0,0,.5);transition:transform .55s var(--ease),background .4s var(--ease)}
.sbento__ico svg{width:22px;height:22px}
.sbento:hover .sbento__ico{background:linear-gradient(150deg,var(--blue),var(--sky));border-color:transparent;transform:translateY(-3px) scale(1.06) rotate(-3deg)}

.sbento__body{position:relative;z-index:1;padding:22px;width:100%}
.sbento__cat{display:inline-block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.16em;color:#a8c8ff;margin-bottom:9px}
.sbento h3{font-family:"Sora",sans-serif;font-size:18px;font-weight:600;color:#fff;letter-spacing:-.01em;line-height:1.18;text-shadow:0 1px 14px rgba(0,0,0,.35)}
.sbento p{font-size:13.5px;line-height:1.5;color:#dbe3f5;max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:max-height .55s var(--ease),opacity .45s var(--ease),transform .55s var(--ease);margin-top:0}
.sbento:hover p{max-height:140px;opacity:1;transform:none;margin-top:8px}
.sbento__more{display:inline-flex;align-items:center;gap:7px;font-size:13px;font-weight:600;color:#fff;max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:max-height .5s var(--ease),opacity .45s var(--ease) .05s,transform .5s var(--ease) .05s}
.sbento__more svg{width:15px;height:15px;transition:transform .4s var(--ease)}
.sbento:hover .sbento__more{max-height:40px;opacity:1;transform:none;margin-top:12px}
.sbento:hover .sbento__more svg{transform:translateX(4px)}

/* sizes */
.sbento--feature{grid-column:span 2;grid-row:span 2}
.sbento--wide{grid-column:span 2}
.sbento--feature h3{font-size:25px}
.sbento--feature .sbento__cat{font-size:11.5px}
.sbento--feature p,.sbento--feature .sbento__more{max-height:140px;opacity:1;transform:none}
.sbento--feature p{margin-top:8px}
.sbento--feature .sbento__more{margin-top:12px}
.sbento--feature .sbento__ico{width:50px;height:50px}
.sbento--feature .sbento__ico svg{width:25px;height:25px}

/* show descriptions when hover isn't available (touch) */
@media (hover:none){
  .sbento p,.sbento__more{max-height:140px;opacity:1;transform:none}
  .sbento p{margin-top:8px}.sbento__more{margin-top:12px}
}
@media (max-width:1080px){
  .svc-bento{grid-template-columns:repeat(2,1fr);grid-auto-rows:230px}
  .sbento--feature{grid-column:span 2;grid-row:span 1}
}
@media (max-width:560px){
  .svc-bento{grid-template-columns:1fr;grid-auto-rows:210px}
  .sbento--feature,.sbento--wide{grid-column:span 1}
  .sbento p,.sbento__more{max-height:140px;opacity:1;transform:none}
  .sbento p{margin-top:8px}.sbento__more{margin-top:12px}
}

/* =========================================================
   TESTIMONIAL MARQUEE (continuous slide, pause on hover)
   ========================================================= */
.section--reviews{overflow:hidden}
.marquee{position:relative;width:100%;overflow:hidden;padding:14px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent)}
.marquee__track{display:flex;flex-wrap:nowrap;align-items:stretch;gap:22px;width:max-content;
  animation:marquee-slide 60s linear infinite;will-change:transform}
@keyframes marquee-slide{from{transform:translateX(-50%)}to{transform:translateX(0)}}
.marquee:hover .marquee__track{animation-play-state:paused}
.marquee .review{flex:0 0 clamp(290px,78vw,380px);margin:0}
@media (prefers-reduced-motion:reduce){
  .marquee__track{animation:none;transform:none}
  .marquee{overflow-x:auto;-webkit-mask-image:none;mask-image:none}
}

/* =========================================================
   PROCESS JOURNEY — connected timeline w/ flowing line
   ========================================================= */
.journey{position:relative;margin-top:24px}
.journey__steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;position:relative;z-index:1}

/* connecting line behind the nodes */
.journey__line{position:absolute;top:42px;left:12.5%;right:12.5%;height:3px;border-radius:4px;z-index:0;overflow:hidden;
  background:linear-gradient(90deg,rgba(37,99,235,.16),rgba(58,173,224,.55),rgba(37,99,235,.16))}
.journey__flow{position:absolute;top:0;left:0;width:34%;height:100%;border-radius:4px;
  background:linear-gradient(90deg,transparent,rgba(255,255,255,.95),transparent);
  animation:journey-flow 3s linear infinite}
@keyframes journey-flow{from{transform:translateX(-120%)}to{transform:translateX(420%)}}

.jstep{display:flex;flex-direction:column;align-items:center;text-align:center}
.jstep__node{position:relative;width:84px;height:84px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(155deg,#ffffff,#eef3ff);color:var(--blue);margin-bottom:24px;
  box-shadow:0 12px 30px -12px rgba(16,30,70,.4);transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.jstep__node::after{content:"";position:absolute;inset:-4px;border-radius:50%;z-index:-1;
  background:linear-gradient(155deg,var(--blue),var(--sky))}
.jstep__ico{display:flex}
.jstep__ico svg{width:34px;height:34px}
.jstep__num{position:absolute;top:-6px;right:-6px;min-width:30px;height:30px;padding:0 7px;border-radius:50%;
  background:linear-gradient(150deg,var(--blue),var(--sky));color:#fff;font-family:"Sora",sans-serif;font-weight:800;font-size:13px;
  display:flex;align-items:center;justify-content:center;border:3px solid #eef2f9;box-shadow:0 6px 14px -5px rgba(37,99,235,.6)}
/* pulse ring radiating from each node, staggered */
.jstep__ring{position:absolute;inset:0;border-radius:50%;border:2px solid rgba(58,173,224,.55);z-index:-2;
  animation:journey-pulse 2.8s var(--ease) infinite}
.jstep:nth-child(2) .jstep__ring{animation-delay:.5s}
.jstep:nth-child(3) .jstep__ring{animation-delay:1s}
.jstep:nth-child(4) .jstep__ring{animation-delay:1.5s}
@keyframes journey-pulse{0%{transform:scale(1);opacity:.55}70%{transform:scale(1.55);opacity:0}100%{transform:scale(1.55);opacity:0}}

.jstep__card{position:relative;width:100%;background:var(--surface);border:1px solid var(--line);border-radius:20px;padding:24px 22px;
  box-shadow:var(--shadow-soft);transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .4s var(--ease)}
.jstep__card::before{content:"";position:absolute;top:-9px;left:50%;transform:translateX(-50%) rotate(45deg);width:16px;height:16px;
  background:var(--surface);border-left:1px solid var(--line);border-top:1px solid var(--line);border-radius:3px 0 0 0}
.jstep__card h3{font-family:"Sora",sans-serif;font-size:17px;font-weight:600;color:var(--ink);margin-bottom:8px;letter-spacing:-.01em}
.jstep__card p{font-size:14px;color:var(--muted);line-height:1.55}

.jstep:hover .jstep__node{transform:translateY(-6px) scale(1.07)}
.jstep:hover .jstep__card{transform:translateY(-4px);box-shadow:var(--shadow-lift);border-color:rgba(37,99,235,.28)}

@media (max-width:1080px){
  .journey__steps{grid-template-columns:repeat(2,1fr);gap:34px 24px}
  .journey__line{display:none}
}
@media (max-width:560px){
  .journey__steps{grid-template-columns:1fr;gap:28px}
}
@media (prefers-reduced-motion:reduce){
  .journey__flow,.jstep__ring{animation:none}
  .jstep__ring{opacity:0}
}

/* =========================================================
   VIDEO TESTIMONIAL (dark band)
   ========================================================= */
.section--video{position:relative;overflow:hidden;background:linear-gradient(155deg,#0c1430,#0a1126 58%,#0e1a3c);color:#fff}
.section--video .vtest__glow{position:absolute;top:-170px;right:-90px;width:580px;height:580px;border-radius:50%;background:radial-gradient(circle,rgba(58,173,224,.22),transparent 64%);pointer-events:none}
.section--video::after{content:"";position:absolute;left:-160px;bottom:-160px;width:480px;height:480px;border-radius:50%;background:radial-gradient(circle,rgba(124,92,255,.16),transparent 66%);pointer-events:none}
.vtest{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:54px;align-items:center}
.vtest__player{position:relative;border-radius:26px;overflow:hidden;aspect-ratio:16/11;background:#0a1020;border:1px solid rgba(255,255,255,.08);box-shadow:0 44px 90px -34px rgba(0,0,0,.8)}
.vtest__video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;background:#0a1020}
.vtest__play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:76px;height:76px;border-radius:50%;border:none;cursor:pointer;background:rgba(255,255,255,.93);color:var(--blue);display:flex;align-items:center;justify-content:center;box-shadow:0 14px 34px -10px rgba(0,0,0,.55);transition:transform .5s var(--ease),background .4s var(--ease),opacity .4s var(--ease),visibility .4s}
.vtest__play svg{width:30px;height:30px;margin-left:4px}
.vtest__play::after{content:"";position:absolute;inset:-10px;border-radius:50%;border:2px solid rgba(255,255,255,.5);animation:journey-pulse 2.4s var(--ease) infinite}
.vtest__play:hover{transform:translate(-50%,-50%) scale(1.08);background:#fff}
.vtest__play.is-hidden{opacity:0;visibility:hidden}
.vtest__title{font-size:clamp(1.9rem,3.4vw,2.8rem);font-weight:800;color:#fff;margin-bottom:18px;line-height:1.12}
.vtest__lead{font-size:clamp(1rem,1.3vw,1.12rem);color:#aeb9d6;max-width:540px;margin-bottom:30px}
.vtest__actions{display:flex;flex-wrap:wrap;gap:14px}
@media (max-width:900px){
  .vtest{grid-template-columns:1fr;gap:30px}
  .vtest__player{aspect-ratio:16/10;max-width:560px;margin:0 auto;width:100%}
}
@media (prefers-reduced-motion:reduce){.vtest__play::after{animation:none}}

/* =========================================================
   COMPETITOR COMPARISON (dark)
   ========================================================= */
.section--compare{position:relative;overflow:hidden;background:linear-gradient(162deg,#0b1228,#0a1024 55%,#0c1736);color:#fff}
.cmp__glow{position:absolute;top:-150px;left:50%;transform:translateX(-50%);width:760px;height:440px;background:radial-gradient(ellipse,rgba(58,173,224,.18),transparent 70%);pointer-events:none}
.section--compare .container{position:relative;z-index:1}
.section__title--light{color:#fff}
.section__lead--light{color:#aeb9d6}

.cmp{overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
.cmp__table{width:100%;border-collapse:collapse;min-width:940px}
.cmp__table th,.cmp__table td{padding:15px 18px;text-align:center;font-size:14.5px;border-bottom:1px solid rgba(255,255,255,.07)}
.cmp__table thead th{font-family:"Sora",sans-serif;font-weight:700;color:#eaf0ff;font-size:15px;white-space:nowrap;padding-top:18px;padding-bottom:18px}
.cmp__table th:first-child,.cmp__table td:first-child{text-align:left}
.cmp-svc{color:#cdd6ee;font-weight:600;font-size:14px;white-space:nowrap}
.cmp-svc-h{color:#8b97b8 !important;font-size:13px !important;text-transform:uppercase;letter-spacing:.1em}
.cmp-val{color:#9aa6c4}
.cmp-val--biz{color:#7cc9ee;font-weight:700;font-family:"Sora",sans-serif}
.cmp-yes{display:inline-flex;width:25px;height:25px;border-radius:50%;background:rgba(34,197,94,.16);color:#4ade80;align-items:center;justify-content:center}
.cmp-yes svg{width:14px;height:14px}
.cmp-no{display:inline-flex;width:25px;height:25px;border-radius:50%;background:rgba(255,255,255,.06);color:#5d6b8c;align-items:center;justify-content:center}
.cmp-no svg{width:12px;height:12px}

/* highlighted Bizstartz column */
.cmp-biz-col{background:linear-gradient(180deg,rgba(37,99,235,.15),rgba(58,173,224,.05))}
.cmp__table td.cmp-biz-col{border-left:1px solid rgba(58,173,224,.28);border-right:1px solid rgba(58,173,224,.28)}
.cmp__table thead th.cmp-biz-col{background:linear-gradient(180deg,rgba(37,99,235,.42),rgba(37,99,235,.14));border:1px solid rgba(58,173,224,.45);border-bottom:none;border-radius:16px 16px 0 0}
.cmp-foot td{border-bottom:none;padding-top:20px;padding-bottom:20px}
.cmp-foot .cmp-svc{font-weight:700;color:#fff;font-family:"Sora",sans-serif}
.cmp-foot td.cmp-biz-col{border-bottom:1px solid rgba(58,173,224,.28);border-radius:0 0 16px 16px}
.cmp-foot .cmp-val--biz{font-size:15px}
.cmp-brand{display:inline-flex;align-items:center;gap:8px;color:#fff}
.cmp-brand__b{width:24px;height:24px;border-radius:7px;background:linear-gradient(150deg,var(--navy-2),var(--sky));display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:13px;font-family:"Sora",sans-serif;color:#fff}
.cmp__note{text-align:center;margin-top:22px;font-size:13px;color:#8b97b8}
.cmp__note a{color:#7cc9ee;font-weight:600;white-space:nowrap}

/* =========================================================
   SAMPLE EIN LETTERS — coverflow carousel (dark)
   ========================================================= */
.section--ein{position:relative;overflow:hidden;background:linear-gradient(160deg,#0c1430,#0a1126 60%,#0d1838);color:#fff}
.section--ein .ein__glow{position:absolute;top:-160px;left:50%;transform:translateX(-50%);width:720px;height:420px;background:radial-gradient(ellipse,rgba(58,173,224,.16),transparent 70%);pointer-events:none}
.section--ein .container{position:relative;z-index:1}
.section--ein .section__title{color:#fff}
.section--ein .section__lead{color:#aeb9d6}

.eincar{position:relative;display:flex;align-items:center;gap:8px;margin-top:6px}
.eincar__viewport{overflow:hidden;flex:1;padding:34px 0}
.eincar__track{display:flex;gap:24px;transition:transform .65s var(--ease);will-change:transform}
.eincar__nav{flex-shrink:0;width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.07);color:#fff;font-size:26px;line-height:0;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .3s var(--ease),transform .3s var(--ease);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.eincar__nav:hover{background:rgba(255,255,255,.18);transform:scale(1.07)}

/* document card */
.ein-doc{flex:0 0 300px;width:300px;height:432px;overflow:hidden;position:relative;background:#fff;color:#1c1c1c;border-radius:12px;
  padding:20px 22px;font-family:"Courier New",Courier,monospace;font-size:8.5px;line-height:1.55;
  box-shadow:0 26px 56px -26px rgba(0,0,0,.6);transform:scale(.82);opacity:.42;
  transition:transform .65s var(--ease),opacity .65s var(--ease),box-shadow .65s var(--ease)}
.ein-doc.is-active{transform:scale(1);opacity:1;box-shadow:0 44px 84px -28px rgba(0,0,0,.8)}
.ein-doc::after{content:"";position:absolute;left:0;right:0;bottom:0;height:96px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff);pointer-events:none}
.ein-doc__bar{display:flex;justify-content:space-between;gap:8px;font-size:7px;color:#555;margin-bottom:14px}
.ein-doc__head{display:flex;gap:8px;align-items:flex-start;margin-bottom:12px}
.ein-doc__seal{width:26px;height:26px;border:1.5px solid #2a2a2a;border-radius:4px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:9px;flex-shrink:0}
.ein-doc__from{display:flex;flex-direction:column;font-size:8px}
.ein-doc__from strong{font-size:9px;font-weight:700}
.ein-doc__meta{margin-left:auto;text-align:right;display:flex;flex-direction:column;gap:2px;font-size:7.5px;color:#333}
.ein-doc__addr{display:flex;flex-direction:column;gap:3px;margin:12px 0}
.ein-doc__ein{font-weight:700;margin:10px 0}
.ein-doc p{margin-bottom:9px}
.ein-doc__sign{margin-top:16px}
.rd{display:inline-block;height:9px;background:#c7ccd3;border-radius:2px;vertical-align:middle}
.rd--l{width:130px}.rd--m{width:96px}.rd--s{width:82px}

.eincar__dots{display:flex;justify-content:center;gap:9px;margin-top:24px}
.eincar__dot{width:9px;height:9px;border-radius:50%;border:none;padding:0;cursor:pointer;background:rgba(255,255,255,.26);transition:background .3s var(--ease),transform .3s var(--ease)}
.eincar__dot.is-active{background:var(--sky);transform:scale(1.25)}

@media (max-width:560px){
  .ein-doc{flex-basis:78vw;width:78vw;height:410px}
  .eincar__nav{width:40px;height:40px;font-size:22px}
  .eincar{gap:4px}
}

/* =========================================================
   WALL OF LOVE — social-proof masonry
   ========================================================= */
.section--wall .section__title{line-height:1.12}
.wall{column-count:3;column-gap:18px;margin-top:8px}
.wol-card{break-inside:avoid;margin:0 0 18px;border-radius:18px;overflow:hidden;display:block;box-shadow:var(--shadow-soft);transition:transform .5s var(--ease),box-shadow .5s var(--ease)}
.wol-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}
.wol-ava{width:30px;height:30px;border-radius:50%;background:linear-gradient(150deg,var(--a),var(--b));flex-shrink:0;display:inline-block}

/* chat / DM card */
.wol-chat{background:#0b1320;border:1px solid rgba(255,255,255,.06)}
.wol-chat__head{display:flex;align-items:center;gap:10px;padding:11px 14px;background:#16202f;border-bottom:1px solid rgba(255,255,255,.05)}
.wol-chat__name{font-family:"Sora",sans-serif;font-weight:600;font-size:13.5px;color:#e7ecf6}
.wol-chat__dots{margin-left:auto;color:#6b7790;font-size:16px;line-height:1}
.wol-chat__body{padding:14px;display:flex;flex-direction:column;gap:8px}
.wol-msg{max-width:86%;padding:8px 12px 17px;border-radius:13px;font-size:12.5px;line-height:1.45;position:relative;color:#dfe6f2;word-wrap:break-word}
.wol-msg--in{align-self:flex-start;background:#1d2738;border-bottom-left-radius:4px}
.wol-msg--out{align-self:flex-end;background:#11463b;color:#eafff5;border-bottom-right-radius:4px}
.wol-time{position:absolute;right:10px;bottom:5px;font-size:9px;color:rgba(255,255,255,.45)}

/* reel card */
.wol-reel{position:relative;min-height:320px;background-size:cover;background-position:center;background-color:#16235a;color:#fff;display:flex;align-items:flex-end}
.wol-reel::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.18) 0%,rgba(0,0,0,.04) 42%,rgba(0,0,0,.85) 100%)}
.wol-reel__badge{position:absolute;top:12px;left:12px;z-index:2;background:rgba(0,0,0,.5);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);color:#fff;font-size:10px;font-weight:700;padding:4px 10px;border-radius:100px;letter-spacing:.03em}
.wol-reel__cap{position:relative;z-index:2;padding:16px 16px 18px;font-family:"Sora",sans-serif;font-weight:800;font-size:19px;line-height:1.12;letter-spacing:-.01em;text-shadow:0 2px 16px rgba(0,0,0,.55)}
.wol-reel:nth-of-type(7n+2){min-height:360px}
.wol-reel:nth-of-type(7n+5){min-height:300px}

/* comment card (light) */
.wol-comment{background:#fff;border:1px solid var(--line);padding:16px}
.wol-comment__row{display:flex;gap:11px;align-items:flex-start}
.wol-comment__row p{font-size:13.5px;color:var(--text);line-height:1.5}
.wol-comment__row b{font-weight:700;color:var(--ink)}
.wol-comment__actions{display:flex;gap:14px;flex-wrap:wrap;margin-top:11px;padding-left:41px;font-size:11.5px;color:var(--muted);font-weight:600}
.wol-comment__actions .wol-like{color:#e0566b}

/* note / highlight card (dark) */
.wol-note{background:#0e1726;border:1px solid rgba(255,255,255,.06);padding:16px}
.wol-note__head{display:flex;align-items:center;gap:8px;font-size:12px;color:#9aa6c4;margin-bottom:11px}
.wol-note__h{font-weight:600;color:#e7ecf6;font-family:"Sora",sans-serif}
.wol-note__x{margin-left:auto;color:#5d6b8c;font-size:15px}
.wol-note__main{font-size:14px;color:#eef2fb;font-weight:600;line-height:1.55;margin-bottom:9px}
.wol-note__main mark{background:var(--blue);color:#fff;padding:1px 6px;border-radius:5px;font-weight:700}
.wol-note__sub{font-size:12.5px;color:#9aa6c4;line-height:1.55}

@media (max-width:900px){.wall{column-count:2}}
@media (max-width:560px){.wall{column-count:1;max-width:420px;margin:8px auto 0}}

/* =========================================================
   BANKING & PAYMENT PARTNERS (dark, tabbed)
   ========================================================= */
.section--partners{position:relative;overflow:hidden;background:linear-gradient(165deg,#0b1228,#0a1024 55%,#0d1838);color:#fff}
.ptn__bg{position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(ellipse 60% 46% at 50% 0%,rgba(58,173,224,.18),transparent 70%),
  radial-gradient(ellipse 40% 40% at 85% 90%,rgba(124,92,255,.12),transparent 70%)}
.section--partners::before{content:"";position:absolute;inset:0;opacity:.5;pointer-events:none;
  background-image:linear-gradient(rgba(255,255,255,.03) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:44px 44px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,#000,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 50% 30%,#000,transparent 75%)}
.section--partners .container{position:relative;z-index:1}
.section--partners .section__title{color:#fff}
.section--partners .section__lead{color:#aeb9d6}

/* segmented tabs */
.ptn-tabs{position:relative;display:flex;width:max-content;max-width:100%;gap:4px;margin:4px auto 38px;padding:5px;border-radius:100px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}
.ptn-tab{position:relative;z-index:1;border:none;background:transparent;color:#aeb9d6;font-family:"Sora",sans-serif;font-weight:600;font-size:14.5px;padding:11px 24px;border-radius:100px;cursor:pointer;white-space:nowrap;transition:color .35s var(--ease)}
.ptn-tab.is-active{color:#fff}
.ptn-tabs__pill{position:absolute;top:5px;bottom:5px;left:5px;width:120px;border-radius:100px;z-index:0;background:linear-gradient(120deg,var(--blue),var(--sky));box-shadow:0 10px 24px -8px rgba(37,99,235,.7);transition:left .5s var(--ease),width .5s var(--ease)}

/* panels + grid */
.ptn-panel{display:none}
.ptn-panel.is-active{display:block;animation:ptnFade .55s var(--ease)}
@keyframes ptnFade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
.ptn-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px}
.ptn-card{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:15px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);border-radius:20px;padding:22px;overflow:hidden;transition:transform .55s var(--ease),background .4s var(--ease),border-color .4s var(--ease),box-shadow .55s var(--ease)}
.ptn-card::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:0;transition:opacity .5s var(--ease);background:radial-gradient(120% 90% at 0% 0%,rgba(58,173,224,.14),transparent 60%);pointer-events:none}
.ptn-card:hover{transform:translateY(-6px);background:rgba(255,255,255,.07);border-color:rgba(58,173,224,.42);box-shadow:0 26px 54px -24px rgba(0,0,0,.75)}
.ptn-card:hover::after{opacity:1}
.ptn-logo{width:54px;height:54px;border-radius:15px;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:#fff;padding:10px;box-shadow:0 10px 22px -10px rgba(0,0,0,.6);transition:transform .5s var(--ease)}
.ptn-card:hover .ptn-logo{transform:scale(1.07) rotate(-3deg)}
.ptn-logo img{width:100%;height:100%;object-fit:contain;display:block}
.ptn-info h4{font-family:"Sora",sans-serif;font-size:16px;font-weight:600;color:#fff;margin-bottom:5px;letter-spacing:-.01em}
.ptn-info p{font-size:13px;color:#9aa6c4;line-height:1.45}
.ptn-note{text-align:center;margin-top:32px;font-size:13.5px;color:#8b97b8}
.ptn-note a{color:#7cc9ee;font-weight:600;white-space:nowrap}

@media (max-width:1080px){.ptn-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:680px){.ptn-grid{grid-template-columns:repeat(2,1fr)}.ptn-tab{font-size:13px;padding:10px 16px}}
@media (max-width:430px){.ptn-grid{grid-template-columns:1fr}}

/* =========================================================
   PRICING COUNTRY TOGGLE (US / UK)
   ========================================================= */
.price-toggle{position:relative;display:flex;width:max-content;max-width:100%;gap:4px;margin:0 auto 40px;padding:5px;border-radius:100px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-soft)}
.price-tab{position:relative;z-index:1;border:none;background:transparent;color:var(--muted);font-family:"Sora",sans-serif;font-weight:600;font-size:14.5px;padding:11px 24px;border-radius:100px;cursor:pointer;white-space:nowrap;transition:color .35s var(--ease)}
.price-tab.is-active{color:#fff}
.price-toggle__pill{position:absolute;top:5px;bottom:5px;left:5px;width:120px;z-index:0;border-radius:100px;background:linear-gradient(120deg,var(--blue),var(--sky));box-shadow:0 8px 20px -8px rgba(37,99,235,.6);transition:left .5s var(--ease),width .5s var(--ease)}
.price-panel{display:none}
.price-panel.is-active{display:block;animation:ptnFade .5s var(--ease)}

/* =========================================================
   HERO — glassy animation (drifting orbs + light sheen)
   ========================================================= */
.hero__orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.orb{position:absolute;border-radius:50%;filter:blur(64px);opacity:.5;will-change:transform}
.orb--1{width:380px;height:380px;background:radial-gradient(circle,rgba(58,173,224,.6),transparent 70%);top:-70px;left:6%;animation:orbFloat1 19s ease-in-out infinite}
.orb--2{width:460px;height:460px;background:radial-gradient(circle,rgba(37,99,235,.5),transparent 70%);top:14%;right:2%;animation:orbFloat2 23s ease-in-out infinite}
.orb--3{width:320px;height:320px;background:radial-gradient(circle,rgba(124,92,255,.42),transparent 70%);bottom:-90px;left:34%;animation:orbFloat3 21s ease-in-out infinite}
@keyframes orbFloat1{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(46px,34px) scale(1.12)}}
@keyframes orbFloat2{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(-54px,42px) scale(1.08)}}
@keyframes orbFloat3{0%,100%{transform:translate(0,0) scale(1)}50%{transform:translate(34px,-46px) scale(1.14)}}

/* glass light-sheen sweeping across the hero dashboard card */
.hero__visual .bezel{overflow:hidden}
.hero__visual .bezel::before{content:"";position:absolute;top:-25%;left:-70%;width:55%;height:150%;z-index:3;pointer-events:none;
  background:linear-gradient(100deg,transparent 0%,rgba(255,255,255,.55) 50%,transparent 100%);transform:skewX(-16deg);
  animation:bezelSheen 7s ease-in-out infinite}
@keyframes bezelSheen{0%{left:-70%}55%{left:135%}100%{left:135%}}

@media (prefers-reduced-motion:reduce){
  .orb{animation:none}
  .hero__visual .bezel::before{animation:none;display:none}
}

/* =========================================================
   FOOTER — redesigned (dark, orbs, wordmark, newsletter)
   ========================================================= */
.footer{position:relative;overflow:hidden;background:linear-gradient(180deg,#0b1124,#070b16);color:#9aa6c4;padding:0}
.footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;z-index:2;background:linear-gradient(90deg,transparent,rgba(58,173,224,.7),rgba(124,92,255,.6),transparent)}
.footer__orbs{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.footer__orbs span{position:absolute;border-radius:50%;filter:blur(80px);opacity:.2}
.footer__orbs span:nth-child(1){width:420px;height:420px;background:radial-gradient(circle,#3aade0,transparent 70%);top:-170px;left:-90px;animation:orbFloat1 26s ease-in-out infinite}
.footer__orbs span:nth-child(2){width:360px;height:360px;background:radial-gradient(circle,#7c5cff,transparent 70%);bottom:-150px;right:-70px;animation:orbFloat3 30s ease-in-out infinite}
.footer__inner{position:relative;z-index:1;padding:66px 0 28px}

.footer__top{display:grid;grid-template-columns:1.25fr 2fr;gap:48px;padding-bottom:40px;border-bottom:1px solid rgba(255,255,255,.08)}
.footer__logo{font-family:"Sora",sans-serif;font-weight:800;font-size:30px;color:#fff;letter-spacing:-.02em;display:inline-block;margin-bottom:14px}
.footer__word--accent{color:var(--sky)}
.footer__tag{font-size:14px;max-width:340px;margin-bottom:18px;line-height:1.6}
.footer__trust{display:flex;align-items:center;gap:10px;margin-bottom:22px;font-size:13px}
.footer__trust strong{color:#fff}
.footer__social{display:flex;gap:10px}
.footer__social a{width:40px;height:40px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);color:#cdd6ee;transition:transform .45s var(--ease),background .4s var(--ease),color .4s var(--ease),border-color .4s var(--ease)}
.footer__social a:hover{transform:translateY(-3px);background:linear-gradient(150deg,var(--blue),var(--sky));color:#fff;border-color:transparent;box-shadow:0 10px 22px -8px rgba(37,99,235,.6)}
.footer__social svg{width:18px;height:18px}

.footer__cols{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}
.footer__col h4{font-family:"Sora",sans-serif;font-size:14px;color:#fff;font-weight:600;margin-bottom:16px;letter-spacing:.01em}
.footer__col ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.footer__col a{font-size:14px;color:#9aa6c4;transition:color .3s var(--ease),padding-left .3s var(--ease)}
.footer__col a:hover{color:#fff;padding-left:5px}
.footer__col--news p{font-size:13px;color:#9aa6c4;margin-bottom:14px;line-height:1.55}
.footer__news{display:flex;align-items:center;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:100px;padding:5px;transition:border-color .3s var(--ease)}
.footer__news:focus-within{border-color:rgba(58,173,224,.55)}
.footer__news input{flex:1;min-width:0;background:transparent;border:none;outline:none;color:#fff;font-size:13.5px;padding:8px 6px 8px 14px;font-family:inherit}
.footer__news input::placeholder{color:#6b7790}
.footer__news button{width:38px;height:38px;border-radius:50%;border:none;cursor:pointer;flex-shrink:0;background:linear-gradient(150deg,var(--blue),var(--sky));color:#fff;display:flex;align-items:center;justify-content:center;transition:transform .4s var(--ease)}
.footer__news button:hover{transform:scale(1.09)}
.footer__news button svg{width:16px;height:16px}
.footer__news-ok{font-size:12.5px;color:#4ade80;margin-top:10px}

.footer__bottom{position:relative;z-index:1;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:10px;padding-top:24px;font-size:13px;color:#6b7790}
.footer__legal{display:flex;gap:9px;align-items:center}
.footer__legal a{color:#9aa6c4;transition:color .3s var(--ease)}
.footer__legal a:hover{color:#fff}
.footer__legal span{opacity:.4}

.footer__wordmark{position:absolute;left:50%;bottom:-2.4vw;transform:translateX(-50%);z-index:0;pointer-events:none;user-select:none;-webkit-user-select:none;
  font-family:"Sora",sans-serif;font-weight:800;font-size:clamp(86px,18.5vw,270px);line-height:.8;letter-spacing:-.04em;white-space:nowrap;
  background:linear-gradient(180deg,rgba(124,150,220,.16),rgba(124,92,255,.02));-webkit-background-clip:text;background-clip:text;color:transparent}

@media (max-width:900px){
  .footer__top{grid-template-columns:1fr;gap:38px}
  .footer__cols{grid-template-columns:repeat(2,1fr);gap:30px}
}
@media (max-width:560px){
  .footer__bottom{flex-direction:column;text-align:center}
  .footer__inner{padding:54px 0 24px}
}

/* =========================================================
   BLOG — listing + post
   ========================================================= */
.blog-card__cat{display:inline-block;font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:#fff;background:rgba(13,21,48,.55);backdrop-filter:blur(6px);padding:5px 11px;border-radius:100px}
.blog-card__meta{display:flex;align-items:center;gap:8px;font-size:12.5px;color:var(--muted);margin-top:10px}
.blog-card__meta .dot{opacity:.5}

/* featured */
.blog-feat{display:grid;grid-template-columns:1.1fr 1fr;gap:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);margin-bottom:32px;transition:transform .55s var(--ease),box-shadow .55s var(--ease)}
.blog-feat:hover{transform:translateY(-5px);box-shadow:var(--shadow-lift)}
.blog-feat__media{position:relative;min-height:320px;background-size:cover;background-position:center;background-color:#16235a}
.blog-feat__media .blog-card__cat{position:absolute;top:16px;left:16px}
.blog-feat__body{padding:clamp(26px,3vw,42px);display:flex;flex-direction:column;justify-content:center}
.blog-feat__body h2{font-size:clamp(1.4rem,2.4vw,2rem);font-weight:700;color:var(--ink);letter-spacing:-.01em;margin-bottom:12px;line-height:1.18}
.blog-feat__body p{font-size:15.5px;color:var(--muted);line-height:1.6;margin-bottom:6px}
.blog-feat .card__link{margin-top:18px;padding-top:0}

/* grid */
.blog-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.blog-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-soft);transition:transform .55s var(--ease),box-shadow .55s var(--ease),border-color .4s var(--ease)}
.blog-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lift);border-color:rgba(37,99,235,.25)}
.blog-card__media{position:relative;aspect-ratio:16/9;background-size:cover;background-position:center;background-color:#16235a}
.blog-card__media .blog-card__cat{position:absolute;top:14px;left:14px}
.blog-card__body{padding:22px;display:flex;flex-direction:column;flex:1}
.blog-card__body h3{font-family:"Sora",sans-serif;font-size:17px;font-weight:600;color:var(--ink);line-height:1.25;letter-spacing:-.01em;margin-bottom:9px}
.blog-card__body p{font-size:14px;color:var(--muted);line-height:1.55}
.blog-card .card__link{margin-top:14px}

/* post body */
.post__wrap{max-width:760px;margin:0 auto}
.post__lead{font-family:"Sora",sans-serif;font-size:clamp(1.15rem,1.7vw,1.35rem);font-weight:500;color:var(--ink);line-height:1.5;margin-bottom:28px;letter-spacing:-.01em}
.post__wrap h2{font-size:clamp(1.4rem,2.2vw,1.75rem);font-weight:700;color:var(--ink);margin:34px 0 14px;letter-spacing:-.01em}
.post__wrap p{font-size:16.5px;color:#414a63;line-height:1.75;margin-bottom:16px}
.post-callout{background:linear-gradient(160deg,#eef3ff,#e9f1ff);border:1px solid rgba(37,99,235,.16);border-radius:20px;padding:26px 28px;margin:34px 0}
.post-callout h3{font-family:"Sora",sans-serif;font-size:16px;font-weight:700;color:var(--ink);margin-bottom:14px}
.post-callout ul{list-style:none;display:flex;flex-direction:column;gap:11px}
.post-callout li{position:relative;padding-left:28px;font-size:15px;color:var(--text);line-height:1.5}
.post-callout li::before{content:"";position:absolute;left:0;top:3px;width:18px;height:18px;border-radius:50%;background:rgba(37,99,235,.14) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='3'%3E%3Cpath d='M5 12l5 5 9-10' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.post__cta{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:18px;margin-top:40px;padding:28px 30px;border-radius:22px;background:linear-gradient(150deg,var(--navy),var(--ink));color:#fff}
.post__cta h3{font-family:"Sora",sans-serif;font-size:19px;font-weight:700;color:#fff;margin-bottom:6px}
.post__cta p{font-size:14px;color:#aab6d8;margin:0}

@media (max-width:900px){
  .blog-grid{grid-template-columns:repeat(2,1fr)}
  .blog-feat{grid-template-columns:1fr}
  .blog-feat__media{min-height:220px}
}
@media (max-width:560px){
  .blog-grid{grid-template-columns:1fr}
}
