
@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;500;600;700;800&family=Space+Grotesk:wght@500;600;700&display=swap');

:root{
  --bg:#050816;
  --bg2:#0a1122;
  --surface:#0d1730;
  --surface2:#101d39;
  --text:#f4f7fb;
  --muted:#97a8c2;
  --line:rgba(255,255,255,.1);
  --accent:#53e0c8;
  --accent2:#5d8cff;
  --accent3:#9f7cff;
  --shadow:0 32px 100px rgba(0,0,0,.45);
  --radius:28px;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:'Manrope',sans-serif;
  color:var(--text);
  line-height:1.6;
  overflow-x:hidden;
  background:
    radial-gradient(circle at 12% 0%, rgba(93,140,255,.16), transparent 26%),
    radial-gradient(circle at 86% 14%, rgba(83,224,200,.09), transparent 18%),
    linear-gradient(180deg, #040713 0%, #07101f 100%);
}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px), var(--max));margin-inline:auto}
.section{padding:120px 0;position:relative}
.noise{
  position:fixed;inset:0;pointer-events:none;z-index:100;opacity:.03;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");
}
.cursor-glow{
  position:fixed;width:420px;height:420px;border-radius:50%;pointer-events:none;z-index:-1;
  transform:translate(-50%,-50%);
  background:radial-gradient(circle, rgba(93,140,255,.12), transparent 65%);
  transition:left .08s linear, top .08s linear;
}
.eyebrow{
  display:inline-flex;align-items:center;gap:10px;margin-bottom:18px;color:var(--accent);
  font-size:.73rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase
}
.eyebrow::before{content:"";width:28px;height:1px;background:currentColor}
h1,h2,h3,h4{margin:0;font-family:'Space Grotesk',sans-serif;line-height:1.08}
h2{font-size:clamp(2.4rem,4.7vw,4.9rem);letter-spacing:-.055em}
p{color:var(--muted)}
.site-header{
  position:fixed;inset:0 0 auto;z-index:60;transition:.25s ease
}
.site-header.scrolled{
  background:rgba(5,8,22,.78);
  border-bottom:1px solid var(--line);
  backdrop-filter:blur(18px)
}
.nav-wrap{min-height:84px;display:flex;align-items:center;justify-content:space-between}
.brand{display:inline-flex;align-items:center;gap:18px}
.brand-frame,.footer-logo-box{
  position:relative;
  display:grid;
  place-items:center;
  flex:0 0 auto;
  overflow:visible;
  background:transparent;
  border:0;
  box-shadow:none;
}
.brand-frame::before,.footer-logo-box::before{
  content:"";
  position:absolute;
  inset:8%;
  border-radius:22px;
  background:radial-gradient(circle, rgba(93,140,255,.16), rgba(83,224,200,.06) 45%, transparent 72%);
  filter:blur(10px);
  z-index:0;
}
.brand-logo,.footer-logo{
  position:relative;
  z-index:1;
  width:100%;
  height:100%;
  object-fit:contain;
  filter:drop-shadow(0 10px 18px rgba(0,0,0,.28));
}
.brand-frame-header{
  width:96px;
  height:70px;
}
.brand-logo-header{
  transform:scale(1.12);
  transform-origin:center;
}
.footer-logo-box-large{
  width:112px;
  height:82px;
}
.footer-logo-large{
  transform:scale(1.14);
  transform-origin:center;
}
.brand-text{display:flex;flex-direction:column;line-height:1.1}
.brand-text strong{font-size:1.02rem}
.brand-text small{margin-top:5px;color:var(--muted);font-size:.58rem;letter-spacing:.18em}
.main-nav{display:flex;align-items:center;gap:28px;font-size:.87rem;font-weight:700}
.main-nav a{color:#c6d4df;transition:color .2s ease}
.main-nav a:hover{color:white}
.nav-cta{padding:11px 18px;border-radius:999px;background:var(--accent);color:#04131d!important}
.nav-toggle{display:none;background:none;border:0;padding:8px}
.nav-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0}
.hero{
  position:relative;min-height:100vh;display:flex;flex-direction:column;justify-content:center;overflow:hidden;padding-top:110px
}
.hero-grid-bg{
  position:absolute;inset:0;opacity:.12;
  background-image:
    linear-gradient(rgba(255,255,255,.07) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.07) 1px, transparent 1px);
  background-size:70px 70px;
  transform:perspective(580px) rotateX(70deg) scale(1.75) translateY(30%);
  transform-origin:center bottom;
  mask-image:linear-gradient(to bottom, black, transparent 92%)
}
.aurora{
  position:absolute;border-radius:50%;filter:blur(10px);pointer-events:none
}
.aurora-a{width:300px;height:300px;left:-60px;top:120px;background:rgba(93,140,255,.14)}
.aurora-b{width:340px;height:340px;right:-100px;top:100px;background:rgba(159,124,255,.12)}
.aurora-c{width:250px;height:250px;left:36%;bottom:60px;background:rgba(83,224,200,.08)}
.hero-layout{
  position:relative;z-index:2;display:grid;grid-template-columns:1.04fr .96fr;align-items:center;gap:72px;padding:55px 0 80px
}
.hero-copy h1{max-width:820px;font-size:clamp(3rem,6.2vw,6.8rem);letter-spacing:-.07em}
.hero-copy h1 span{
  display:block;background:linear-gradient(90deg, var(--accent), #aed1ff 58%, #d2b9ff);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.hero-copy > p{max-width:670px;margin:26px 0 34px;font-size:1.05rem}
.hero-actions{display:flex;flex-wrap:wrap;gap:14px}
.btn{
  display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 24px;border-radius:999px;
  border:1px solid transparent;font-weight:800;cursor:pointer;transition:.25s ease
}
.btn:hover{transform:translateY(-3px)}
.btn-primary{
  background:linear-gradient(135deg, var(--accent), #6becdd);
  color:#03121d;box-shadow:0 18px 48px rgba(83,224,200,.18)
}
.btn-secondary{border-color:var(--line);background:rgba(255,255,255,.04)}
.btn-light{background:white;color:#07111f}
.hero-points{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:48px}
.hero-points div{padding-left:14px;border-left:1px solid var(--line)}
.hero-points strong,.hero-points span{display:block}
.hero-points strong{font-family:'Space Grotesk';font-size:.96rem}
.hero-points span{margin-top:6px;color:var(--muted);font-size:.71rem}
.hero-visual{
  position:relative;min-height:620px;perspective:1200px;transform-style:preserve-3d
}
.visual-orbit{
  position:absolute;left:50%;top:50%;border:1px solid rgba(255,255,255,.09);border-radius:50%;
  transform:translate(-50%,-50%) rotateX(74deg)
}
.orbit-1{width:560px;height:560px;border-color:rgba(83,224,200,.15);animation:pulseRing 4s ease-in-out infinite}
.orbit-2{width:430px;height:430px;border-color:rgba(93,140,255,.16);animation:pulseRing 4s .9s ease-in-out infinite}
.orbit-3{width:300px;height:300px;border-color:rgba(159,124,255,.16);animation:pulseRing 4s 1.8s ease-in-out infinite}
.hero-card{
  position:absolute;left:50%;top:50%;width:410px;height:450px;transform:translate(-50%,-50%);
  transform-style:preserve-3d
}
.hero-card-back{
  position:absolute;inset:18px -18px -18px 18px;border-radius:34px;
  background:linear-gradient(145deg, rgba(93,140,255,.18), rgba(83,224,200,.08));
  border:1px solid rgba(255,255,255,.12);filter:blur(.2px);transform:translateZ(-24px)
}
.hero-card-front{
  position:absolute;inset:0;padding:30px;border-radius:34px;overflow:hidden;
  border:1px solid rgba(255,255,255,.13);
  background:
    linear-gradient(145deg, rgba(255,255,255,.09), rgba(255,255,255,.025)),
    rgba(12,20,42,.82);
  backdrop-filter:blur(14px);box-shadow:var(--shadow)
}
.hero-card-front::before{
  content:"";position:absolute;inset:14px;border:1px solid rgba(255,255,255,.06);border-radius:24px
}
.hero-holo-line{
  position:absolute;height:1px;left:0;right:0;background:linear-gradient(90deg, transparent, rgba(83,224,200,.7), transparent);opacity:.6
}
.line-1{top:24%}
.line-2{top:62%;background:linear-gradient(90deg, transparent, rgba(93,140,255,.75), transparent)}
.hero-logo{
  width:100%;max-width:295px;margin:34px auto 24px;position:relative;z-index:2;
  filter:drop-shadow(0 14px 24px rgba(0,0,0,.25))
}
.hero-card-label{position:absolute;left:30px;right:30px;bottom:30px}
.hero-card-label small{color:var(--accent);font-size:.63rem;font-weight:800;letter-spacing:.16em}
.hero-card-label strong{display:block;margin-top:8px;font-size:1.55rem}
.hero-card-label span{display:block;margin-top:5px;color:var(--muted);font-size:.78rem}
.floating-panel{
  position:absolute;display:flex;align-items:center;gap:12px;min-width:168px;padding:14px 16px;border-radius:18px;
  border:1px solid rgba(255,255,255,.12);background:rgba(10,20,37,.75);backdrop-filter:blur(14px);
  box-shadow:0 24px 60px rgba(0,0,0,.3);animation:floatY 5s ease-in-out infinite
}
.panel-icon{
  width:40px;height:40px;display:grid;place-items:center;border-radius:12px;
  background:rgba(83,224,200,.12);color:var(--accent);font-family:'Space Grotesk';font-size:.68rem;font-weight:800
}
.floating-panel small,.floating-panel strong{display:block}
.floating-panel small{color:var(--muted);font-size:.6rem}
.floating-panel strong{font-size:.78rem}
.fp-1{right:-12px;top:88px}
.fp-2{left:-18px;top:210px;animation-delay:-1.3s}
.fp-3{right:4px;bottom:82px;animation-delay:-2.3s}
.fp-4{left:14px;bottom:26px;animation-delay:-3.1s}
.hero-shadow{
  position:absolute;left:50%;bottom:55px;width:390px;height:100px;border-radius:50%;
  background:rgba(0,0,0,.42);filter:blur(28px);transform:translateX(-50%)
}
.hero-strip{
  position:relative;z-index:2;border-block:1px solid var(--line);background:rgba(255,255,255,.02)
}
.strip-track{
  min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:28px;overflow:hidden
}
.strip-track span{white-space:nowrap;color:#b8c6d4;font-size:.72rem;font-weight:700}
.section-heading{
  display:grid;grid-template-columns:1.14fr .66fr;gap:70px;align-items:end;margin-bottom:58px
}
.section-heading p{margin:0 0 8px}
.services-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px;perspective:1200px
}
.service-card{
  position:relative;min-height:425px;padding:32px;border-radius:var(--radius);overflow:hidden;
  border:1px solid var(--line);
  background:
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    rgba(10,18,36,.88);
  transform-style:preserve-3d;transition:border-color .3s ease, box-shadow .3s ease
}
.service-card:hover{border-color:rgba(83,224,200,.34);box-shadow:0 30px 90px rgba(0,0,0,.32)}
.service-glow{
  position:absolute;inset:auto -20% -42% 20%;height:220px;border-radius:50%;
  background:rgba(93,140,255,.09);filter:blur(24px)
}
.service-no{
  position:absolute;right:24px;top:18px;color:rgba(255,255,255,.11);font-family:'Space Grotesk';
  font-size:2.6rem;font-weight:700
}
.service-icon{
  width:56px;height:56px;display:grid;place-items:center;margin-bottom:42px;border-radius:18px;
  border:1px solid rgba(83,224,200,.2);
  background:linear-gradient(145deg, rgba(83,224,200,.16), rgba(93,140,255,.08));
  color:var(--accent);font-family:'Space Grotesk';font-weight:800;
  box-shadow:10px 12px 0 rgba(0,0,0,.1), inset 0 1px 0 rgba(255,255,255,.08)
}
.service-card h3{font-size:1.44rem}
.service-card p{font-size:.85rem}
.service-card ul{margin:22px 0 0;padding:18px 0 0;border-top:1px solid var(--line);list-style:none}
.service-card li{margin:9px 0;color:#c7d5df;font-size:.77rem}
.service-card li::before{content:"↗";margin-right:8px;color:var(--accent)}
.about{background:linear-gradient(180deg, rgba(255,255,255,.01), transparent), #071121}
.about-layout{display:grid;grid-template-columns:1fr .96fr;gap:88px;align-items:center}
.about-visual{position:relative;min-height:640px;perspective:1100px}
.visual-frame{
  position:relative;width:88%;overflow:visible;transform-style:preserve-3d
}
.visual-frame::before{
  content:"";position:absolute;inset:25px -24px -24px 26px;z-index:-1;border-radius:30px;
  background:linear-gradient(145deg, rgba(93,140,255,.15), rgba(83,224,200,.08));
  border:1px solid rgba(255,255,255,.1)
}
.visual-frame img{height:550px;object-fit:cover;border-radius:30px;box-shadow:var(--shadow)}
.visual-overlay{
  position:absolute;inset:0;border-radius:30px;background:linear-gradient(to top, rgba(3,9,17,.9), transparent 58%)
}
.visual-content{position:absolute;left:26px;right:26px;bottom:25px}
.visual-content small{color:var(--accent);font-size:.64rem;font-weight:800;letter-spacing:.16em}
.visual-content strong{display:block;max-width:420px;margin-top:7px;font-size:1.5rem}
.visual-mini{
  position:absolute;right:0;bottom:18px;width:43%;padding:8px;border-radius:22px;
  background:rgba(10,18,36,.9);border:1px solid var(--line);box-shadow:var(--shadow)
}
.visual-mini img{height:200px;object-fit:cover;border-radius:15px}
.about-badge{
  position:absolute;left:-18px;bottom:25px;width:220px;padding:22px;border-radius:20px;
  background:linear-gradient(145deg, var(--accent), #61d6e5);color:#04131d;box-shadow:0 28px 70px rgba(0,0,0,.32)
}
.about-badge strong,.about-badge span{display:block}
.about-badge strong{font-family:'Space Grotesk';font-size:1.42rem}
.about-badge span{margin-top:6px;font-size:.72rem;font-weight:700}
.about-copy > p{font-size:.98rem}
.about-list{margin-top:34px}
.about-list > div{
  padding:18px 0;border-top:1px solid var(--line)
}
.about-list span,.about-list strong{display:block}
.about-list span{
  color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase
}
.about-list strong{margin-top:8px;font-size:.96rem}
.solution-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:18px
}
.solution-card{
  padding:30px;border-radius:26px;border:1px solid var(--line);
  background:
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    rgba(10,18,36,.88);
  box-shadow:0 18px 55px rgba(0,0,0,.16)
}
.solution-card.wide{grid-column:span 3}
.solution-card small{
  display:block;color:var(--accent);font-size:.65rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase
}
.solution-card h3{margin-top:10px;font-size:1.4rem}
.solution-card p{margin:10px 0 0;font-size:.84rem}
.info-grid{
  display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:18px
}
.info-grid div{
  padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.03)
}
.info-grid span,.info-grid strong{display:block}
.info-grid span{
  color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase
}
.info-grid strong{margin-top:7px;font-size:.88rem;color:#ebf0f6}
.metric-bar{
  display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-block:1px solid var(--line)
}
.metric-bar div{text-align:center;padding:30px 20px;border-right:1px solid var(--line)}
.metric-bar div:last-child{border-right:0}
.metric-bar strong,.metric-bar span{display:block}
.metric-bar strong{font-size:2.4rem;color:var(--accent);font-family:'Space Grotesk'}
.metric-bar span{margin-top:5px;color:var(--muted);font-size:.75rem}
.process{
  background:radial-gradient(circle at 50% 18%, rgba(93,140,255,.08), transparent 36%), #071121
}
.process-heading{grid-template-columns:1fr;margin-bottom:45px}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.process-card{
  padding:28px;border-radius:24px;border:1px solid var(--line);
  background:linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.02)), rgba(10,18,36,.88)
}
.step{
  display:inline-grid;place-items:center;width:54px;height:54px;margin-bottom:20px;border-radius:16px;
  background:linear-gradient(145deg, rgba(83,224,200,.16), rgba(93,140,255,.08));
  color:var(--accent);font-family:'Space Grotesk';font-weight:800;border:1px solid rgba(83,224,200,.2)
}
.process-card h3{font-size:1.32rem}
.process-card p{font-size:.82rem}
.cta-section{padding:42px 0}
.cta-box{
  position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:44px;
  padding:56px;border-radius:32px;background:linear-gradient(125deg, #477ef0, #294ea0 50%, #172f66);
  box-shadow:var(--shadow)
}
.cta-box::before{
  content:"";position:absolute;inset:0;opacity:.16;
  background-image:
    linear-gradient(rgba(255,255,255,.2) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255,255,255,.2) 1px, transparent 1px);
  background-size:44px 44px;transform:perspective(500px) rotateX(64deg) scale(1.3)
}
.cta-box > *{position:relative;z-index:2}
.cta-box .eyebrow{color:#dbe8ff}
.cta-box h2{max-width:820px;font-size:clamp(2rem,3.8vw,3.9rem)}
.contact-layout{display:grid;grid-template-columns:.82fr 1.18fr;gap:85px;align-items:start}
.contact-copy h2{font-size:clamp(2.5rem,4.3vw,4.4rem)}
.contact-items{margin-top:40px;border-top:1px solid var(--line)}
.contact-items > *{display:block;padding:21px 0;border-bottom:1px solid var(--line)}
.contact-items span,.contact-items strong{display:block}
.contact-items span{color:var(--accent);font-size:.66rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.contact-items strong{margin-top:7px;font-size:.93rem}
.contact-form{
  position:relative;padding:38px;border-radius:28px;border:1px solid var(--line);
  background:
    linear-gradient(145deg, rgba(255,255,255,.06), rgba(255,255,255,.02)),
    rgba(10,18,36,.88)
}
.form-badge{
  display:inline-flex;margin-bottom:25px;padding:8px 12px;border-radius:999px;
  border:1px solid rgba(83,224,200,.2);background:rgba(83,224,200,.08);
  color:var(--accent);font-size:.62rem;font-weight:800;letter-spacing:.15em
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}
label{display:block;margin-bottom:16px;color:#dce6f1;font-size:.76rem;font-weight:700}
input,select,textarea{
  width:100%;margin-top:8px;padding:14px 15px;border:1px solid var(--line);border-radius:14px;
  outline:none;background:#081523;color:#fff;transition:border-color .2s ease, box-shadow .2s ease
}
textarea{resize:vertical}
input:focus,select:focus,textarea:focus{border-color:rgba(83,224,200,.6);box-shadow:0 0 0 4px rgba(83,224,200,.08)}
.submit-btn{width:100%;border:0}
.form-note{display:block;margin-top:12px;color:var(--muted);font-size:.68rem;text-align:center}
footer{padding:74px 0 25px;border-top:1px solid var(--line);background:#030713}
.footer-grid{display:grid;grid-template-columns:1.5fr repeat(3,1fr);gap:50px}
.footer-grid > div:first-child p{max-width:390px;margin-top:20px;font-size:.81rem}
.footer-grid h4{margin-bottom:18px;font-size:.9rem}
.footer-grid > div:not(:first-child) a,.footer-grid > div:not(:first-child) p{display:block;margin:10px 0;color:var(--muted);font-size:.75rem}
.footer-bottom{
  display:flex;justify-content:space-between;margin-top:52px;padding-top:22px;border-top:1px solid var(--line);
  color:var(--muted);font-size:.7rem
}
.whatsapp-float{
  position:fixed;right:22px;bottom:22px;z-index:50;width:56px;height:56px;display:grid;place-items:center;
  border-radius:50%;background:#25d366;color:#05230e;font-weight:900;box-shadow:0 18px 45px rgba(37,211,102,.3)
}
.tilt-card{transition:transform .25s ease}
.reveal{opacity:0;transform:translateY(30px);transition:opacity .78s ease, transform .78s ease}
.reveal.visible{opacity:1;transform:none}
.delay-1{transition-delay:.12s}
.delay-2{transition-delay:.22s}
.delay-3{transition-delay:.32s}
@keyframes pulseRing{
  0%,100%{opacity:.55;transform:translate(-50%,-50%) rotateX(74deg) scale(.96)}
  50%{opacity:1;transform:translate(-50%,-50%) rotateX(74deg) scale(1.04)}
}
@keyframes floatY{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-12px)}
}
@media (max-width:980px){
  .main-nav{
    position:fixed;inset:84px 20px auto;display:none;flex-direction:column;align-items:stretch;padding:21px;
    border:1px solid var(--line);border-radius:20px;background:rgba(5,8,22,.96);box-shadow:var(--shadow)
  }
  .main-nav.open{display:flex}
  .nav-toggle{display:block}
  .hero-layout,.about-layout,.contact-layout{grid-template-columns:1fr}
  .hero{min-height:auto}
  .hero-visual{max-width:720px;margin-inline:auto}
  .section-heading{grid-template-columns:1fr;gap:20px}
  .services-grid,.solution-grid,.process-grid{grid-template-columns:1fr 1fr}
  .solution-card.wide{grid-column:span 2}
  .info-grid{grid-template-columns:1fr 1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .strip-track{justify-content:flex-start;overflow:auto}
}
@media (max-width:680px){
  .container{width:min(calc(100% - 28px), var(--max))}
  .section{padding:86px 0}
  .brand-text small{display:none}
  .hero-layout{gap:32px;padding-top:35px}
  .hero-copy h1{font-size:clamp(2.75rem,14vw,4.2rem)}
  .hero-points{grid-template-columns:1fr}
  .hero-visual{min-height:500px;transform:scale(.84);margin:-35px -38px}
  .services-grid,.solution-grid,.process-grid{grid-template-columns:1fr}
  .solution-card.wide{grid-column:auto}
  .info-grid{grid-template-columns:1fr}
  .service-card{min-height:auto}
  .about-visual{min-height:520px}
  .visual-frame{width:92%}
  .visual-frame img{height:430px}
  .visual-mini{width:47%}
  .visual-mini img{height:150px}
  .about-badge{left:5px;width:188px}
  .metric-bar{grid-template-columns:1fr 1fr}
  .metric-bar div:nth-child(2){border-right:0}
  .cta-box{flex-direction:column;align-items:flex-start;padding:40px 27px}
  .form-row{grid-template-columns:1fr}
  .contact-form{padding:25px}
  .footer-grid{grid-template-columns:1fr}
  .footer-bottom{flex-direction:column;gap:10px}
}
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* Enlarged official logo treatment */
.site-header .brand{
  min-height:84px;
}

.footer-brand{
  align-items:center;
}

.footer-brand .brand-text strong{
  font-size:1.08rem;
}

.footer-brand .brand-text small{
  font-size:.62rem;
}

@media (max-width:680px){
  .brand-frame-header{
    width:76px;
    height:56px;
  }

  .footer-logo-box-large{
    width:92px;
    height:68px;
  }

  .brand{
    gap:12px;
  }

  .brand-text strong{
    font-size:.9rem;
  }
}


/* Exact transparent rebrand logo supplied by the company */
.brand-frame,
.footer-logo-box {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.brand-frame::before,
.footer-logo-box::before {
  display: none !important;
}

.brand-logo,
.footer-logo {
  object-fit: contain !important;
  background: transparent !important;
  filter: drop-shadow(0 8px 16px rgba(48, 118, 255, 0.28)) !important;
}

.brand-frame-header {
  width: 128px !important;
  height: 78px !important;
}

.brand-logo-header {
  transform: none !important;
}

.footer-logo-box-large {
  width: 148px !important;
  height: 96px !important;
}

.footer-logo-large {
  transform: none !important;
}

.hero-logo {
  background: transparent !important;
}

@media (max-width: 680px) {
  .brand-frame-header {
    width: 92px !important;
    height: 60px !important;
  }

  .footer-logo-box-large {
    width: 120px !important;
    height: 78px !important;
  }
}
