﻿@import url("https://fonts.googleapis.com/css2?family=Oxanium:wght@500;600;700;800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Orbitron:wght@700;800;900&display=swap");

:root{
  --navy:#123f68;
  --navy-strong:#0d2b47;
  --blue:#1a5a94;
  --blue-deep:#10385b;
  --accent:#00d4ff;
  --sky:#eaf4ff;
  --sky-strong:#dcecff;
  --gold:#f3bb49;
  --gold-soft:#ffe1a3;
  --green:#1ca45a;
  --green-dark:#0e7b3d;
  --ink:#1f2f42;
  --ink-soft:#42556a;
  --muted:#61758b;
  --line:#d8e4ef;
  --surface:#fffffff2;
  --surface-solid:#fff;
  --surface-alt:#f5f9fd;
  --danger:#c33d3d;
  --shadow-sm:0 10px 24px rgba(18,63,104,.12), inset 0 2px 0 rgba(255,255,255,.5);
  --shadow-md:0 18px 38px rgba(18,63,104,.14), inset 0 2px 0 rgba(255,255,255,.55);
  --shadow-lg:0 28px 62px rgba(18,63,104,.18), inset 0 2px 0 rgba(255,255,255,.58);
  --shadow-3d:0 15px 35px rgba(18,63,104,.18), inset 0 2px 0 rgba(255,255,255,.6);
  --relief:0 6px 0 #0a2640,0 10px 20px rgba(0,0,0,.24);
  --radius-xl:32px;
  --radius-lg:26px;
  --radius-md:20px;
  --radius-sm:16px;
  --max:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  font-family:"Manrope",sans-serif;
  color:var(--ink);
  background:
    radial-gradient(circle at top left,rgba(26,90,148,.15),transparent 30%),
    radial-gradient(circle at top right,rgba(0,212,255,.12),transparent 26%),
    linear-gradient(180deg,#f8f9fc,#eef2f8 46%,#fbfcfe);
  perspective:1200px;
}
a{text-decoration:none;color:inherit}
img{display:block;max-width:100%}
button,input,select,textarea{font:inherit}

::selection{
  background:rgba(61,180,255,.22);
  color:var(--navy-strong);
}

:focus-visible{
  outline:3px solid rgba(23,98,168,.3);
  outline-offset:3px;
}

.skip-link{
  position:absolute;
  left:16px;
  top:-100px;
  z-index:60;
  padding:12px 16px;
  border-radius:14px;
  background:var(--navy);
  color:#fff;
  box-shadow:var(--shadow-sm);
}

.skip-link:focus{top:16px}

.wrap{
  width:min(calc(100% - 32px),1300px);
  margin-inline:auto;
}

.topbar{
  background:linear-gradient(90deg,var(--navy-strong),var(--blue));
  color:#ffffffde;
  font-size:.94rem;
  box-shadow:0 8px 18px rgba(13,43,71,.25);
}

.topbar .wrap{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  padding:10px 0;
}

.topbar strong{color:#fff}

.site-nav{
  position:sticky;
  top:0;
  z-index:40;
  padding:.8rem 0;
  background:#fff;
  box-shadow:0 10px 30px rgba(0,0,0,.15),inset 0 -2px 5px rgba(0,0,0,.05);
}

.nav-shell{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:15px;
  flex-wrap:nowrap;
}

.brand{
  display:flex;
  align-items:center;
  gap:20px;
  min-width:0;
  flex-shrink:0;
  transition:transform .4s ease;
}

.brand:hover{
  transform:scale(1.02);
}

.brand img{
  width:180px;
  height:auto;
  object-fit:contain;
  filter:drop-shadow(4px 8px 12px rgba(0,0,0,.15));
  transition:filter .3s ease,transform .3s ease;
}

.brand:hover img{
  filter:drop-shadow(6px 12px 20px rgba(0,212,255,.32));
  transform:scale(1.02);
}

.brand-home img{
  width:148px;
  height:148px;
}

.brand small{
  display:block;
  white-space:nowrap;
  font-size:1rem;
  font-weight:800;
  letter-spacing:2px;
  text-transform:uppercase;
  color:var(--blue);
  margin-bottom:2px;
  text-shadow:1px 1px 2px rgba(0,0,0,.1);
}

.brand strong{
  display:block;
  font-family:"Orbitron","Oxanium","Space Grotesk",sans-serif;
  font-size:2.6rem;
  line-height:.9;
  letter-spacing:.01em;
  background:linear-gradient(90deg,var(--navy) 0%,var(--accent) 50%,var(--navy) 100%);
  background-size:200% auto;
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  animation:textShine 4s linear infinite;
  text-shadow:2px 4px 6px rgba(0,0,0,.18);
  white-space:nowrap;
}

.menu{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  white-space:nowrap;
  flex-wrap:nowrap;
  gap:5px;
}

.menu a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:10px 14px;
  border-radius:12px;
  font-weight:800;
  position:relative;
  color:var(--navy);
  font-size:.95rem;
  transition:background .22s ease,color .22s ease,transform .22s ease,box-shadow .22s ease;
}

.menu a:hover,
.menu a:focus-visible,
.menu .active{
  color:#fff;
  background:var(--navy);
  box-shadow:0 5px 15px rgba(18,63,104,.35), inset 0 2px 0 rgba(255,255,255,.16);
  transform:translateY(-3px);
}

.menu .cta{
  padding:14px 26px;
  border-radius:16px;
  background:linear-gradient(135deg,var(--accent),#008cb3);
  color:#fff;
  text-transform:uppercase;
  box-shadow:var(--relief);
  text-shadow:0 2px 4px rgba(0,0,0,.28);
}

.menu .cta.active{
  background:linear-gradient(135deg,var(--accent),#008cb3);
  color:#fff;
  box-shadow:var(--relief);
}

.menu .cta:hover,
.menu .cta:focus-visible{
  color:#fff;
  background:linear-gradient(135deg,var(--accent),#008cb3);
  box-shadow:0 11px 0 #0a2640,0 20px 25px rgba(0,0,0,.24);
}

.hero{
  padding:74px 0 56px;
  background:linear-gradient(145deg,var(--navy) 0%,var(--navy-strong) 100%);
  color:#fff;
  position:relative;
  overflow:hidden;
  box-shadow:inset 0 -15px 40px rgba(0,0,0,.35);
}

.hero::before{
  content:"";
  position:absolute;
  inset:-20% auto auto -12%;
  width:380px;
  height:380px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,212,255,.18),transparent 62%);
  pointer-events:none;
}

.hero-grid{
  display:grid;
  grid-template-columns:1.04fr .96fr;
  gap:52px;
  align-items:center;
}

.hero-grid>*{min-width:0}

.panel{
  background:var(--surface);
  border:1px solid rgba(255,255,255,.78);
  border-radius:var(--radius-xl);
  box-shadow:var(--shadow-lg);
  backdrop-filter:blur(12px);
}

.hero .panel{
  background:transparent;
  border:none;
  box-shadow:none;
  backdrop-filter:none;
}

.hero-copy{
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  justify-content:center;
  gap:20px;
  padding:14px 0;
}

.hero-copy.centered{
  align-items:center;
  text-align:center;
}

.hero-copy.centered .lead,
.hero-copy.centered .hero-list,
.hero-copy.centered .cta-row,
.hero-copy.centered .hero-note{
  margin-inline:auto;
}

.hero-visual{
  display:flex;
  flex-direction:column;
  gap:16px;
  padding:0;
  perspective:1000px;
}

.hero-visual img{
  width:100%;
  min-height:440px;
  border-radius:30px;
  object-fit:cover;
  background:linear-gradient(180deg,#edf4fb,#dfeaf6);
  box-shadow:0 25px 50px rgba(0,0,0,.34), inset 0 0 0 6px rgba(255,255,255,.12);
  transform:perspective(1000px) rotateY(-6deg) rotateX(3deg);
  transition:transform .45s ease,box-shadow .45s ease;
}

.hero-visual img:hover{
  transform:perspective(1000px) rotateY(0deg) rotateX(0deg) scale(1.015);
  box-shadow:0 28px 54px rgba(0,0,0,.38), inset 0 0 0 6px rgba(255,255,255,.15);
}

.eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  background:var(--sky);
  color:var(--blue-deep);
  font-size:.85rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.hero .eyebrow{
  background:rgba(255,255,255,.14);
  color:#fff;
  box-shadow:0 10px 22px rgba(0,0,0,.14);
}

.dot{
  width:9px;
  height:9px;
  border-radius:50%;
  background:linear-gradient(135deg,var(--gold),var(--blue));
}

.hero .dot{
  background:linear-gradient(135deg,var(--accent),#fff);
}

h1,h2,h3,h4{
  margin:0;
  color:var(--navy);
  font-family:"Oxanium","Space Grotesk",sans-serif;
  letter-spacing:-.04em;
}

h1{
  font-size:clamp(2.2rem,4vw,3.8rem);
  line-height:1;
  text-wrap:balance;
}

h2{
  font-size:clamp(1.75rem,2.8vw,2.7rem);
  line-height:1.06;
  text-wrap:balance;
}

h3{
  font-size:clamp(1.16rem,1.8vw,1.45rem);
  line-height:1.12;
  text-wrap:balance;
}

h4{
  font-size:1.08rem;
  line-height:1.2;
}

.brand strong{
  text-shadow:0 0 18px rgba(61,180,255,.12);
}

h1,h2,h3,h4{
  color:var(--navy);
  text-shadow:1px 3px 6px rgba(0,0,0,.08);
}

.hero h1,
.hero h2,
.hero h3{
  color:#fff;
  text-shadow:3px 6px 15px rgba(0,0,0,.38);
}

.hero-copy h1,
.intro h2,
.cta-band h2,
.card > h2,
.faq > h2,
.table-shell > h2,
.auth-card h1,
.dashboard-card > h2{
  width:100%;
  margin-inline:auto;
  text-align:center;
  max-width:16ch;
}

.hero-copy h1{
  font-size:clamp(2.05rem,3.5vw,3.45rem);
  max-width:14ch;
}

.card h3,
.blog-card h3,
.price-card h3,
.contact-card h3,
.faq-item strong{
  text-wrap:balance;
}

p{
  margin:0;
  color:var(--muted);
  line-height:1.72;
  text-wrap:pretty;
  text-align:left;
  overflow-wrap:normal;
  word-break:normal;
  word-spacing:normal;
}

.lead{
  max-width:62ch;
  font-size:1.08rem;
}

.hero p,
.hero .lead,
.hero .hero-list li,
.hero .hero-note,
.hero .trial-note p{
  color:#eef6ff;
}

.hero-list{
  display:grid;
  gap:10px;
  padding:0;
  margin:0;
  list-style:none;
  color:var(--ink);
}



.hero-list li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:var(--muted);
}

.hero-list li span,
.list-clean li span,
.contact-item span,
.contact-item p,
.overlay span,
.helper{
  text-align:left;
  overflow-wrap:normal;
  word-spacing:normal;
}

.hero-list i{
  margin-top:5px;
  color:var(--accent);
}

.hero-note{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  color:#d8edff;
  font-size:.95rem;
}

.hero-note span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.cover{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  background:var(--navy);
}

.cover img{
  width:100%;
  min-height:460px;
  object-fit:cover;
}

.badge-row{
  position:absolute;
  left:22px;
  top:22px;
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.badge{
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:var(--navy);
  font-weight:800;
  box-shadow:var(--shadow-sm);
}

.overlay{
  position:absolute;
  inset:auto 0 0 0;
  padding:28px;
  background:linear-gradient(180deg,transparent,rgba(10,27,45,.9));
  color:#fff;
}

.overlay strong{
  display:block;
  margin-bottom:8px;
  font-size:1.5rem;
  font-family:"Oxanium","Space Grotesk",sans-serif;
}

.overlay span{display:block;color:#ffffffde;line-height:1.65}

.section{padding:32px 0 10px}

.intro{
  display:grid;
  gap:10px;
  max-width:76ch;
  margin:0 auto 20px;
  text-align:center;
}

.intro p{margin-inline:auto}

.grid-2,
.grid-3,
.grid-4{
  display:grid;
  gap:18px;
}

.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}

.card,
.faq,
.cta-band,
.table-shell,
.blog-card,
.contact-card,
.auth-card,
.dashboard-card,
.info-strip,
.testimonial,
.notice,
.price-card,
.metric-card{
  background:linear-gradient(145deg,var(--surface-solid),#f0f4f8);
  border-top:2px solid rgba(255,255,255,.96);
  border-left:2px solid rgba(255,255,255,.82);
  border-right:1px solid rgba(208,223,238,.7);
  border-bottom:1px solid rgba(208,223,238,.7);
  border-radius:25px;
  box-shadow:var(--shadow-3d);
  padding:24px;
  transform-style:preserve-3d;
}

.card,
.blog-card,
.contact-card,
.dashboard-card,
.price-card{
  display:flex;
  flex-direction:column;
  gap:12px;
}

.card p,
.blog-card p,
.contact-card p,
.price-card p,
.faq-item p,
.cta-band p,
.intro p,
.notice p{
  text-align:left;
  overflow-wrap:normal;
  word-break:normal;
  word-spacing:normal;
}

.course-slider{
  display:grid;
  gap:18px;
}

.blog-content p,
.blog-content li,
td{
  text-align:justify;
  text-justify:inter-word;
  text-align-last:left;
  hyphens:auto;
  -webkit-hyphens:auto;
  hyphenate-character:"-";
  hyphenate-limit-chars:6 3 3;
  hyphenate-limit-zone:0;
  overflow-wrap:normal;
  word-break:normal;
  word-spacing:-0.04em;
}

.course-slider-stage{
  position:relative;
  min-height:440px;
  border:1px solid var(--line);
  border-radius:calc(var(--radius-lg) - 6px);
  background:
    radial-gradient(circle at top right, rgba(61,180,255,.18), transparent 32%),
    linear-gradient(180deg,#f8fbff,#eef5fb);
  overflow:hidden;
}

.course-slide{
  height:100%;
  margin:0;
}

.course-slide[hidden]{
  display:none;
}

.course-slider-media{
  min-height:360px;
  padding:20px 20px 8px;
  display:grid;
  place-items:center;
}

.course-slider-media img{
  width:100%;
  max-height:420px;
  object-fit:contain;
  border-radius:18px;
  background:#fff;
  box-shadow:0 18px 36px rgba(15,39,64,.12);
}

.course-slide figcaption{
  padding:0 20px 20px;
  color:var(--muted);
  text-align:center;
  font-size:.98rem;
}

.course-slider-controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}

.course-slider-nav{
  display:flex;
  gap:10px;
}

.course-slider-btn{
  border:1px solid rgba(23,98,168,.16);
  background:#fff;
  color:var(--blue-deep);
  border-radius:999px;
  padding:12px 16px;
  min-width:48px;
  min-height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:800;
  cursor:pointer;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease;
  box-shadow:0 12px 28px rgba(15,39,64,.08);
}

.course-slider-btn:hover,
.course-slider-btn:focus-visible{
  transform:translateY(-2px);
  border-color:#8fc3f4;
  background:#f8fbff;
  box-shadow:0 18px 30px rgba(15,39,64,.12);
}

.course-slider-thumbs{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.course-slider-thumb{
  border:1px solid rgba(23,98,168,.16);
  border-radius:999px;
  background:#edf5ff;
  color:var(--blue-deep);
  padding:10px 14px;
  font-weight:700;
  cursor:pointer;
  transition:background .2s ease,color .2s ease,border-color .2s ease,transform .2s ease;
}

.course-slider-thumb:hover,
.course-slider-thumb:focus-visible{
  transform:translateY(-1px);
  border-color:#8fc3f4;
}

.course-slider-thumb[aria-selected="true"]{
  background:linear-gradient(135deg,var(--blue-deep),#327bc1);
  color:#fff;
  border-color:transparent;
  box-shadow:0 16px 32px rgba(17,76,132,.2);
}

.card-link-wrap{
  display:block;
  height:100%;
}

.card-link-wrap .card,
.card-link-wrap .blog-card{
  height:100%;
  transition:transform .45s cubic-bezier(.175,.885,.32,1.275),box-shadow .45s ease,border-color .3s ease;
}

.card-link-wrap:hover .card,
.card-link-wrap:hover .blog-card,
.card-link-wrap:focus-visible .card,
.card-link-wrap:focus-visible .blog-card{
  transform:translateY(-12px) rotateX(4deg) rotateY(-4deg) scale(1.02);
  border-color:#bcd5eb;
  box-shadow:20px 30px 45px rgba(18,63,104,.24), inset 0 2px 0 rgba(255,255,255,1);
}

.icon{
  width:72px;
  height:72px;
  border-radius:22px;
  display:grid;
  place-items:center;
  background:linear-gradient(145deg,#fff,#eef5fb);
  color:var(--blue);
  font-size:1.65rem;
  box-shadow:0 12px 24px rgba(18,63,104,.12), inset 0 2px 0 rgba(255,255,255,.95);
  filter:drop-shadow(2px 8px 8px rgba(0,212,255,.16));
}

.service-link,
.inline-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--blue-deep);
  font-weight:800;
}

.cta-row{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  align-items:stretch;
}

.cta-row > *{
  min-width:0;
}



.cta-row .btn,
.cta-row form{
  flex:1 1 220px;
}

.cta-row form .btn{
  width:100%;
}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  min-height:52px;
  padding:14px 26px;
  border:1px solid transparent;
  border-radius:16px;
  font-weight:800;
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.03em;
  box-shadow:var(--relief);
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease,border-color .22s ease;
  cursor:pointer;
}

.btn:hover,
.btn:focus-visible{
  transform:translateY(-5px);
  box-shadow:0 11px 0 #0a2640,0 20px 25px rgba(0,0,0,.24);
}

.btn:active{
  transform:translateY(6px);
  box-shadow:0 0 0 #0a2640,0 5px 10px rgba(0,0,0,.18);
}

.btn-primary{
  background:linear-gradient(135deg,var(--accent),#008cb3);
  color:#fff;
  text-shadow:0 2px 4px rgba(0,0,0,.28);
}

.btn-secondary,
.btn-gold{
  background:linear-gradient(135deg,var(--gold),var(--gold-soft));
  color:#422700;
  box-shadow:0 6px 0 #d39b29,0 18px 28px rgba(243,187,73,.24);
}

.btn-soft{
  background:linear-gradient(145deg,#ffffff,#eef5fb);
  color:var(--blue-deep);
  border-color:#d4e4f2;
  box-shadow:0 6px 0 #ccdceb,0 16px 24px rgba(18,63,104,.14);
}

.btn-ghost{
  background:#fff;
  color:var(--navy);
  border-color:var(--line);
}

.btn-whatsapp{
  background:linear-gradient(135deg,var(--green),#25d366);
  color:#fff;
  box-shadow:0 6px 0 #0d7447,0 18px 28px rgba(28,164,90,.24);
}

.btn-call{
  background:linear-gradient(145deg,#ffffff,#eef5fb);
  color:var(--navy);
  border-color:#bfd2e3;
  box-shadow:0 6px 0 #ccdceb,0 16px 24px rgba(18,63,104,.14);
}

.btn.full{width:100%}

.stats,
.trust-grid,
.metric-grid,
.contact-tiles,
.price-grid{
  display:grid;
  gap:16px;
}

.stats,
.metric-grid{grid-template-columns:repeat(4,minmax(0,1fr))}

.trust-grid,
.price-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

.contact-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}

.stat,
.metric-card{
  padding:18px;
  border-radius:18px;
  background:var(--sky);
  border:1px solid #d7e7f5;
}

.stat strong,
.metric-card strong{
  display:block;
  margin-bottom:6px;
  color:var(--navy);
  font-size:1.12rem;
}

.stat span,
.metric-card span{
  display:block;
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
  overflow-wrap:normal;
  word-break:normal;
}

.chips{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.chip,
.tag{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:38px;
  padding:0 14px;
  border-radius:999px;
  font-weight:800;
  font-size:.92rem;
}

.chip{
  background:var(--sky);
  color:var(--blue-deep);
}

.tag{
  background:#edf2f7;
  color:var(--ink);
}

.tag.highlight{
  background:#fff4d4;
  color:#6d4a00;
}

.faq-list{display:grid;gap:12px}

.faq-item{
  padding:18px;
  border-radius:18px;
  background:#ffffffde;
  border:1px solid var(--line);
}

.faq-item strong{
  display:block;
  margin-bottom:8px;
  color:var(--navy);
}

.cta-band{
  display:flex;
  flex-direction:column;
  justify-content:flex-start;
  gap:16px;
  height:100%;
  background:linear-gradient(135deg,#133962,#1f5aa5 55%,#3db4ff);
  border:none;
  color:#fff;
}

.cta-band h2,
.cta-band p,
.cta-band li{color:#fff}

.cta-band h2{
  font-size:clamp(1.6rem,2.4vw,2.35rem);
  line-height:1.03;
  color:#c7efff;
  background:linear-gradient(120deg,#ebfbff 0%,#bce8ff 28%,#7fd8ff 48%,#ebfbff 62%,#c7efff 100%);
  background-size:220% auto;
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:headlineShine 6s linear infinite, ctaGlow 3.8s ease-in-out infinite;
  text-shadow:0 2px 0 rgba(7,28,56,.35),0 0 12px rgba(164,229,255,.34),0 0 28px rgba(99,197,255,.18);
}

.cta-band .chips{
  align-content:flex-start;
}

.cta-band .cta-row{
  margin-top:auto;
  padding-top:6px;
}

.cta-band .cta-row .btn,
.cta-band .cta-row form{
  flex:1 1 240px;
}

.cta-band .btn-soft{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  color:#fff;
}

.notice{
  display:grid;
  gap:10px;
  background:linear-gradient(180deg,#fef9eb,#fff);
  border-color:#f0dba6;
}

.notice strong{color:#6b4a00}

.trial-note{
  display:grid;
  gap:8px;
  padding:16px 18px;
  border-radius:18px;
  background:linear-gradient(135deg,#edf8ff,#fff9ec);
  border:1px solid #cfe2f2;
  box-shadow:0 12px 24px rgba(18,63,104,.08);
}

.trial-note strong{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  color:var(--navy);
  text-align:center;
}

.hero .trial-note{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 14px 28px rgba(0,0,0,.18);
}

.hero .trial-note strong{
  color:#fff;
}

.hero .btn-soft,
.hero .btn-call{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.22);
  color:#fff;
  box-shadow:0 6px 0 rgba(255,255,255,.08),0 18px 28px rgba(0,0,0,.18);
}

.trial-note p{
  margin:0;
  color:var(--ink-soft);
}

.trial-note a{
  font-weight:800;
}

.contact-grid{
  display:grid;
  grid-template-columns:1.02fr .98fr;
  gap:18px;
}

.contact-list{
  display:grid;
  gap:12px;
}

.contact-item{
  display:grid;
  gap:4px;
  padding:16px;
  border-radius:18px;
  background:var(--sky);
  border:1px solid #d6e7f4;
}

.contact-item strong{
  color:var(--navy);
  font-size:.84rem;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}

.contact-item a{
  color:var(--blue-deep);
  font-weight:800;
}

.field{
  display:grid;
  gap:8px;
}

.field label{
  font-weight:800;
  color:var(--navy);
}

.field input,
.field textarea,
.field select{
  width:100%;
  padding:14px 16px;
  border:1px solid var(--line);
  border-radius:16px;
  background:#fff;
  color:var(--ink);
}

.field textarea{
  min-height:150px;
  resize:vertical;
}

.field input:focus,
.field textarea:focus,
.field select:focus{
  outline:3px solid rgba(23,98,168,.16);
  border-color:var(--blue);
}

.helper{
  font-size:.94rem;
  color:var(--muted);
}

form{
  display:grid;
  gap:16px;
}

.table-shell{
  display:grid;
  gap:16px;
}

.table-wrap{
  overflow-x:auto;
  border-radius:20px;
  border:1px solid var(--line);
}

table{
  width:100%;
  border-collapse:collapse;
  background:#fff;
}

caption{
  padding:0 0 12px;
  text-align:left;
  color:var(--muted);
}

th,
td{
  padding:15px 16px;
  border-bottom:1px solid var(--line);
  text-align:left;
  vertical-align:top;
}

th{
  background:#f5f9fd;
  color:var(--navy);
  font-size:.96rem;
  font-family:"Oxanium","Space Grotesk",sans-serif;
}

tr:last-child td{border-bottom:0}

.price-grid{margin-top:8px}

.price-card{
  position:relative;
  overflow:hidden;
}

.price-card.highlight{
  border-color:#f0d194;
  background:linear-gradient(180deg,#fffaf0,#fff);
}

.price-card .price{
  color:var(--navy);
  font-family:"Oxanium","Space Grotesk",sans-serif;
  font-size:2rem;
  line-height:1;
}

.price-card .meta{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  color:var(--muted);
  font-size:.95rem;
}

.price-card ul{
  margin:0;
  padding-left:18px;
  color:var(--muted);
  line-height:1.65;
}

.compare-table td strong{color:var(--navy)}

.blog-page{
  --blog-paper:#f8f6f1;
  --blog-ink:#18304c;
  --blog-muted:#5f7186;
  --blog-line:#d7e0ea;
  --blog-wash:linear-gradient(180deg,#eef5fb 0%,#f8f6f1 56%,#ffffff 100%);
  background:
    radial-gradient(circle at top left,rgba(255,214,120,.16),transparent 26%),
    radial-gradient(circle at top right,rgba(65,157,255,.16),transparent 30%),
    var(--blog-wash);
}

.blog-page .hero h1,
.blog-page .featured-copy h3,
.blog-page .editorial-copy h3,
.blog-page .article-hero h1,
.blog-page .article-body h2,
.blog-page .article-body h3{
  font-family:"Newsreader",Georgia,serif;
  letter-spacing:-.03em;
  text-transform:none;
  line-height:.96;
  animation:none;
  background:none;
  -webkit-text-fill-color:initial;
  color:var(--blog-ink);
  text-shadow:none;
}

.blog-page .hero h1{
  font-size:clamp(3rem,6vw,5.5rem);
}

.blog-hero-shell,
.article-hero-shell{
  padding-top:22px;
}

.blog-hero{
  display:grid;
  gap:22px;
}

.blog-kicker{
  display:inline-flex;
  align-items:center;
  gap:10px;
  width:max-content;
  min-height:42px;
  padding:0 18px;
  border-radius:999px;
  border:1px solid rgba(24,48,76,.08);
  background:rgba(255,255,255,.74);
  color:#47617c;
  font-weight:800;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:.78rem;
  box-shadow:0 14px 30px rgba(15,39,64,.08);
}

.blog-hero-grid,
.article-hero{
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(300px,.85fr);
  gap:24px;
  align-items:stretch;
}

.blog-hero-copy,
.article-hero-copy{
  display:grid;
  align-content:start;
  gap:18px;
  padding:34px;
  border-radius:32px;
  background:rgba(255,255,255,.78);
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 30px 60px rgba(15,39,64,.12);
  backdrop-filter:blur(12px);
}

.blog-intro,
.article-intro{
  max-width:62ch;
  font-size:1.08rem;
  line-height:1.82;
  color:var(--blog-muted);
}

.blog-side-panel{
  display:grid;
  gap:18px;
}

.blog-side-card,
.article-side-card{
  display:grid;
  gap:12px;
  padding:24px;
  border-radius:26px;
  background:rgba(255,255,255,.82);
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 24px 48px rgba(15,39,64,.1);
}

.blog-side-card strong,
.article-side-card strong{
  color:var(--blog-ink);
  font-size:1.08rem;
}

.blog-bullet-list{
  display:grid;
  gap:10px;
  margin:0;
  padding-left:18px;
  color:var(--blog-muted);
}

.blog-metrics{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.blog-metric{
  display:grid;
  gap:4px;
  padding:20px 14px;
  text-align:center;
  border-radius:22px;
  background:linear-gradient(180deg,#fff,#eef5fb);
  border:1px solid rgba(24,48,76,.08);
}

.blog-metric strong{
  color:var(--blog-ink);
  font-family:"Oxanium","Space Grotesk",sans-serif;
  font-size:1.6rem;
}

.blog-metric span{
  color:var(--blog-muted);
  font-size:.88rem;
}

.section-head{
  display:grid;
  gap:10px;
  margin-bottom:20px;
}

.section-head h2{
  margin:0;
  color:var(--blog-ink);
  font-size:clamp(1.9rem,3vw,2.6rem);
  font-family:"Newsreader",Georgia,serif;
  letter-spacing:-.03em;
  text-transform:none;
}

.section-head p{
  max-width:66ch;
  color:var(--blog-muted);
}

.featured-post{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr);
  gap:0;
  overflow:hidden;
  border-radius:34px;
  background:#fff;
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 34px 60px rgba(15,39,64,.12);
}

.featured-media,
.editorial-media{
  display:block;
  overflow:hidden;
}

.featured-media img,
.article-hero-media img{
  width:100%;
  height:100%;
  min-height:420px;
  object-fit:cover;
}

.featured-copy{
  display:grid;
  align-content:start;
  gap:18px;
  padding:34px;
}

.featured-copy h3{
  margin:0;
  font-size:clamp(2.2rem,4vw,3.4rem);
}

.featured-copy p{
  margin:0;
  color:var(--blog-muted);
  font-size:1.06rem;
  line-height:1.84;
}

.blog-meta-row,
.blog-meta,
.article-author{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  align-items:center;
  color:var(--blog-muted);
  font-size:.94rem;
}

.blog-meta-row span,
.article-author span{
  display:inline-flex;
  align-items:center;
  gap:8px;
}

.blog-banner{
  display:grid;
  gap:10px;
  margin-bottom:22px;
  padding:20px 22px;
  border-radius:24px;
  background:linear-gradient(135deg,#143b67,#285c95 58%,#4fb2f5);
  color:#fff;
  box-shadow:0 22px 40px rgba(20,59,103,.2);
}

.blog-banner strong{
  font-size:1.05rem;
}

.blog-banner p{
  margin:0;
  color:rgba(255,255,255,.88);
}

.editorial-grid{
  display:grid;
  gap:20px;
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.editorial-card{
  display:grid;
  grid-template-rows:auto 1fr;
  border-radius:28px;
  overflow:hidden;
  background:rgba(255,255,255,.9);
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 24px 46px rgba(15,39,64,.1);
}

.editorial-card:hover,
.editorial-card:focus-within{
  transform:translateY(-3px);
  box-shadow:0 30px 56px rgba(15,39,64,.14);
}

.editorial-media img{
  width:100%;
  height:220px;
  object-fit:cover;
  transition:transform .35s ease;
}

.editorial-card:hover .editorial-media img,
.editorial-card:focus-within .editorial-media img{
  transform:scale(1.03);
}

.editorial-copy{
  display:grid;
  align-content:start;
  gap:14px;
  padding:22px 22px 24px;
}

.editorial-copy h3{
  margin:0;
  font-size:2rem;
}

.editorial-copy p{
  margin:0;
  color:var(--blog-muted);
  line-height:1.76;
}

.blog-bottom-cta{
  display:grid;
  gap:18px;
  padding:34px;
  border-radius:34px;
  background:linear-gradient(135deg,#fff4da,#ffffff 38%,#edf6ff 100%);
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 28px 52px rgba(15,39,64,.1);
}

.blog-bottom-copy h2{
  margin:0 0 12px;
  font-family:"Newsreader",Georgia,serif;
  font-size:clamp(2rem,4vw,3.1rem);
  line-height:1;
  color:var(--blog-ink);
  text-transform:none;
}

.blog-bottom-copy p{
  max-width:62ch;
  color:var(--blog-muted);
}

.article-hero-media{
  overflow:hidden;
  border-radius:32px;
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 30px 56px rgba(15,39,64,.12);
}

.article-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.55fr);
  gap:24px;
  align-items:start;
}

.article-body{
  padding:34px;
  border-radius:30px;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(24,48,76,.08);
  box-shadow:0 30px 56px rgba(15,39,64,.1);
}

.article-body .blog-content{
  max-width:68ch;
  color:#29425c;
  font-size:1.07rem;
  line-height:1.94;
}

.article-body .blog-content h2{
  margin:1.4em 0 .45em;
  font-size:2.1rem;
}

.article-body .blog-content h3{
  margin:1.25em 0 .45em;
  font-size:1.65rem;
}

.article-body .blog-content a{
  color:var(--blue-deep);
  font-weight:800;
}

.article-body .blog-content p + p{
  margin-top:1.05em;
}

.article-body .blog-content ul,
.article-body .blog-content ol{
  padding-left:22px;
}

.article-sidebar{
  display:grid;
  gap:18px;
  position:sticky;
  top:92px;
}

.empty-state,
.auth-shell{
  display:grid;
  place-items:center;
}

.empty-state{
  padding:24px;
  border-radius:24px;
  border:1px dashed #bfd2e3;
  background:#f7fbff;
  color:var(--muted);
  text-align:center;
}

.empty-state,
.auth-shell{
  display:grid;
  place-items:center;
}

.empty-state{
  padding:18px;
  border-radius:20px;
  border:1px dashed #bfd2e3;
  background:#f7fbff;
  color:var(--muted);
  text-align:center;
}

.auth-page{
  min-height:100vh;
  display:flex;
  flex-direction:column;
}

.auth-main{
  flex:1;
  display:grid;
  place-items:center;
  padding:28px 0 40px;
}

.auth-card{
  width:min(100%,520px);
}

.auth-shell.auth-split{
  width:min(100%,1140px);
  grid-template-columns:minmax(0,1.02fr) minmax(280px,.78fr);
  gap:22px;
  align-items:stretch;
}

.auth-card{
  position:relative;
  overflow:hidden;
}

.auth-card::before,
.dashboard-card::before{
  content:"";
  position:absolute;
  inset:auto -15% 70% auto;
  width:180px;
  height:180px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,212,255,.18),transparent 68%);
  pointer-events:none;
}

.auth-card > *,
.dashboard-card > *{
  position:relative;
  z-index:1;
}

.auth-banner{
  display:grid;
  gap:14px;
  margin:-2px 0 6px;
  padding:22px 24px;
  border-radius:24px;
  background:
    radial-gradient(circle at top right,rgba(255,255,255,.18),transparent 30%),
    linear-gradient(135deg,#0f3153,#1e4f86 56%,#38a9ef);
  color:#fff;
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 24px 42px rgba(20,59,103,.18), inset 0 1px 0 rgba(255,255,255,.14);
}

.auth-banner.compact{
  gap:12px;
  padding:18px 22px;
}

.auth-banner strong{
  display:flex;
  align-items:center;
  gap:10px;
  color:#fff;
  font-size:1.28rem;
  letter-spacing:-.02em;
  text-transform:none;
  text-shadow:0 6px 16px rgba(0,0,0,.18);
}

.auth-banner strong i{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border-radius:14px;
  background:rgba(255,255,255,.12);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.16);
}

.auth-banner p{
  color:rgba(255,255,255,.9);
  text-align:left;
}

.auth-pills{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
}

.auth-pill{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff;
  font-weight:800;
  font-size:.85rem;
  border:1px solid rgba(255,255,255,.14);
}

.auth-side{
  display:grid;
  gap:18px;
  align-content:start;
}

.campus-kpi-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}

.campus-kpi{
  display:grid;
  gap:8px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,#ffffff,#edf5ff);
  border:1px solid rgba(18,63,104,.08);
  box-shadow:0 18px 32px rgba(15,39,64,.08);
}

.campus-kpi strong{
  color:var(--navy);
  font-family:"Oxanium","Space Grotesk",sans-serif;
  font-size:1.55rem;
  line-height:1;
}

.campus-kpi span{
  color:var(--muted);
  text-align:left;
}

.info-list{
  display:grid;
  gap:12px;
  margin:0;
  padding:0;
  list-style:none;
}

.info-list li{
  display:flex;
  align-items:flex-start;
  gap:12px;
  color:var(--muted);
}

.info-list i{
  width:20px;
  margin-top:4px;
  color:var(--blue);
  text-align:center;
}

.info-list strong{
  display:block;
  margin-bottom:4px;
  color:var(--navy);
}

.security-note{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(135deg,#143b67,#285c95 58%,#4fb2f5);
  color:#fff;
  box-shadow:0 24px 42px rgba(20,59,103,.18);
}

.security-note strong{
  color:#fff;
  font-size:1.06rem;
}

.security-note p{
  color:rgba(255,255,255,.88);
  text-align:left;
}

.module-preview-grid{
  display:grid;
  gap:14px;
}

.module-preview{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#eef5fb);
  border:1px solid rgba(18,63,104,.08);
  box-shadow:0 18px 32px rgba(15,39,64,.08);
}

.module-preview-head{
  display:flex;
  align-items:center;
  gap:12px;
}

.module-preview-head .icon{
  width:58px;
  height:58px;
  border-radius:18px;
  font-size:1.25rem;
}

.module-preview p{
  text-align:left;
}

.feature-bar{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.feature-chip{
  display:grid;
  gap:4px;
  padding:14px 16px;
  border-radius:18px;
  background:#eff6fd;
  border:1px solid rgba(18,63,104,.08);
}

.feature-chip strong{
  color:var(--navy);
  font-size:1rem;
}

.feature-chip span{
  color:var(--muted);
  font-size:.9rem;
  text-align:left;
}

.dashboard-hero{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);
  gap:18px;
  align-items:stretch;
}

.dashboard-meta-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.dashboard-highlight{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff8e7,#ffffff);
  border:1px solid rgba(243,187,73,.4);
}

.dashboard-highlight strong{
  color:#7c5312;
  font-size:.92rem;
  letter-spacing:.06em;
  text-transform:uppercase;
}

.dashboard-highlight span{
  color:var(--navy);
  font-family:"Oxanium","Space Grotesk",sans-serif;
  font-size:1.3rem;
}

.role-grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.role-card{
  display:grid;
  gap:10px;
  padding:18px;
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#eef5fb);
  border:1px solid rgba(18,63,104,.08);
}

.role-card h3{
  font-size:1.18rem;
}

.role-card .tag{
  width:max-content;
}

.admin-actions-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}

.admin-action-card{
  display:grid;
  gap:12px;
  padding:20px;
  border-radius:22px;
  background:linear-gradient(180deg,#fff,#eef5fb);
  border:1px solid rgba(18,63,104,.08);
  box-shadow:0 18px 32px rgba(15,39,64,.08);
}

.admin-action-card h3,
.module-preview h3{
  font-size:1.2rem;
}

.admin-action-card p{
  text-align:left;
}

.helper-inline{
  margin-top:-2px;
  font-size:.9rem;
  color:var(--muted);
}

.admin-fab-shell{
  animation:adminFabFloat 3.8s ease-in-out infinite;
}

.admin-fab-toggle{
  transition:transform .22s ease,box-shadow .22s ease,background .22s ease;
}

.admin-fab-toggle:hover,
.admin-fab-toggle:focus-visible{
  transform:translateY(-3px);
  box-shadow:0 22px 36px rgba(15,39,64,.32);
}

@keyframes adminFabFloat{
  0%,100%{transform:translateY(0)}
  50%{transform:translateY(-5px)}
}

.status-badge{
  display:inline-flex;
  align-items:center;
  gap:8px;
  min-height:36px;
  padding:0 12px;
  border-radius:999px;
  background:#edf8f1;
  color:var(--green-dark);
  font-weight:800;
  font-size:.9rem;
}

.dashboard{
  display:grid;
  gap:18px;
}

.dashboard-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.list-clean{
  display:grid;
  gap:10px;
  margin:0;
  padding:0;
  list-style:none;
}

.list-clean li{
  display:flex;
  align-items:flex-start;
  gap:10px;
  color:var(--muted);
}

.list-clean i{
  margin-top:5px;
  color:var(--blue);
}

.footer{
  padding:52px 0 40px;
}

.footer-shell{
  background:linear-gradient(180deg,#081b2d 0%,#030a12 100%);
  color:#ffffffde;
  padding:36px 32px 30px;
  border-radius:var(--radius-xl);
  border-top:6px solid var(--accent);
  box-shadow:0 -10px 25px rgba(0,0,0,.16),var(--shadow-lg);
}

.footer-grid{
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:24px;
}

.footer h3{
  color:#fff;
  background:none;
  -webkit-text-fill-color:currentColor;
  animation:none;
  text-shadow:2px 4px 6px rgba(0,0,0,.28);
}

.footer a,
.footer p{color:#ffffffd4}

.footer-nav,
.footer-links{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:14px;
}

.footer-nav a,
.footer-links a{
  display:inline-flex;
  align-items:center;
  min-height:40px;
  padding:0 14px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  transition:transform .22s ease,background .22s ease;
}

.footer-nav a:hover,
.footer-links a:hover,
.footer-nav a:focus-visible,
.footer-links a:focus-visible{
  transform:translateY(-2px);
  background:rgba(255,255,255,.18);
}

.footer-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  flex-wrap:wrap;
  margin-top:22px;
  padding-top:18px;
  border-top:1px solid rgba(255,255,255,.18);
}

.float-wa{
  position:fixed;
  right:22px;
  bottom:22px;
  z-index:50;
  width:58px;
  height:58px;
  border-radius:50%;
  display:grid;
  place-items:center;
  color:#fff;
  background:linear-gradient(135deg,var(--green),#27d366);
  box-shadow:0 18px 34px rgba(15,39,64,.22);
}

.center{text-align:center}

.center p,
.center .lead{
  text-align:center;
  text-wrap:balance;
}

.muted{color:var(--muted)}

@keyframes ctaGlow{
  0%,100%{
    text-shadow:0 2px 0 rgba(7,28,56,.28),0 0 10px rgba(164,229,255,.22),0 0 18px rgba(99,197,255,.14);
  }
  50%{
    text-shadow:0 2px 0 rgba(7,28,56,.42),0 0 16px rgba(196,241,255,.48),0 0 34px rgba(110,207,255,.28);
  }
}

@keyframes headlineShine{
  0%,100%{
    background-position:0% 50%;
    text-shadow:0 0 14px rgba(61,180,255,.06);
  }
  50%{
    background-position:100% 50%;
    text-shadow:0 0 20px rgba(61,180,255,.18),0 0 34px rgba(23,98,168,.08);
  }
}

@keyframes textShine{
  to{
    background-position:200% center;
  }
}

.sr-only{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,
  *::before,
  *::after{
    animation:none!important;
    transition:none!important;
  }
}

@media (max-width:1100px){
  .site-nav{
    position:static;
  }

  .hero-grid,
  .blog-hero-grid,
  .article-hero,
  .grid-4,
  .stats,
  .metric-grid,
  .dashboard-grid,
  .dashboard-meta-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }

  .grid-3,
  .featured-post,
  .article-layout,
  .editorial-grid,
  .footer-grid,
  .contact-grid,
  .blog-grid,
  .trust-grid,
  .auth-shell.auth-split,
  .dashboard-hero{
    grid-template-columns:1fr;
  }

.price-grid{grid-template-columns:1fr 1fr}
}

@media (max-width:1150px){
  .nav-shell{
    flex-wrap:wrap;
    justify-content:center;
    gap:20px;
  }

  .menu{
    flex-wrap:wrap;
    justify-content:center;
    gap:10px;
  }
}

@media (max-width:992px){
  .brand strong{font-size:2.2rem}
}

@media (max-width:760px){
  .topbar .wrap,
  .nav-shell,
  .menu,
  .footer-meta{
    display:grid;
  }

  .hero-grid,
  .blog-hero-grid,
  .article-hero,
  .grid-2,
  .grid-3,
  .grid-4,
  .stats,
  .metric-grid,
  .editorial-grid,
  .blog-grid,
  .contact-grid,
  .contact-tiles,
  .dashboard-grid,
  .campus-kpi-grid,
  .feature-bar,
  .role-grid,
  .admin-actions-grid,
  .dashboard-meta-grid,
  .price-grid,
  .trust-grid{
    grid-template-columns:1fr;
  }

  .panel,
  .card,
  .faq,
  .cta-band,
  .table-shell,
  .blog-card,
  .featured-copy,
  .blog-hero-copy,
  .article-hero-copy,
  .blog-side-card,
  .article-side-card,
  .article-body,
  .blog-bottom-cta,
  .contact-card,
  .auth-card,
  .dashboard-card,
  .price-card,
  .footer-shell{
    padding:22px;
  }

  .hero-copy{padding:28px 22px}

  .blog-kicker{
    width:100%;
    justify-content:center;
    text-align:center;
  }

  .blog-page .hero h1{
    font-size:clamp(2.45rem,12vw,4rem);
  }

  .featured-copy h3,
  .editorial-copy h3{
    font-size:1.8rem;
  }

  .brand{
    justify-content:center;
    text-align:center;
  }

  .brand img{
    width:58px;
    height:58px;
  }

  .brand-home img{
    width:96px;
    height:96px;
  }

  .brand strong{font-size:1.2rem}

  .hero-visual img,
  .cover img,
  .featured-media img,
  .article-hero-media img{
    min-height:300px;
  }

  .blog-metrics{
    grid-template-columns:1fr;
  }

  .article-sidebar{
    position:static;
  }

  .float-wa{
    right:16px;
    bottom:16px;
  }

  .cta-row .btn,
  .cta-row form{
    flex-basis:100%;
  }
}








main p,
main li,
main dd,
main blockquote,
main figcaption,
main td,
.stat span,
.metric-card span,
.contact-item span,
.overlay span,
.helper{
  text-align:justify;
  text-justify:inter-word;
  hyphens:auto;
  -webkit-hyphens:auto;
  overflow-wrap:normal;
  word-break:normal;
}
