/* EMMAROZS AKADÉMIA — vizuális nyelv
   Irány: meleg krém alap, bordó tömbök, vastag kondenzált nagybetűs címsorok,
   "nyomógomb" pill gombok (alsó, kemény árnyék), lekerekített kártyák,
   üveghatású lebegő kártyák a bordó felületen.
   A tokenek (--acad-*) szándékosan itt vannak egy helyen: ugyanezekből épül majd
   a hírlevél, a szórólap, az akademia.emmaroast.hu és az A4 diploma. */

.emr-academy, .acad-system {
  --acad-cream: #F0E7CC;
  --acad-cream-hi: #F8F2E0;
  --acad-wine: #540B18;
  --acad-wine-600: #7A1A2C;
  --acad-ink: #140103;
  --acad-rose: #D4A9A0;
  --acad-berry: #9D4D58;
  --acad-gold: #DB9F23;
  --acad-brown: #665446;
  --acad-r-card: 28px;
  --acad-r-panel: 36px;
  --acad-shadow-hard: 0 5px 0 var(--acad-ink);
  --acad-font-head: "Novecento", "Montserrat", Impact, sans-serif;
  --acad-font-body: "Montserrat", "Helvetica Neue", Helvetica, sans-serif;

  /* a weboldal általános tokenjeinek felülírása az Akadémia-oldalon */
  --surface-page: var(--acad-cream);
  --surface-card: var(--acad-cream-hi);
  --surface-sunken: #E6DBBA;
  --text-strong: var(--acad-ink);
  --text-body: var(--acad-ink);
  --text-muted: var(--acad-brown);
  --border-hair: rgba(84, 11, 24, .25);
  --border-strong: var(--acad-wine);
  --link: var(--acad-wine);
  --link-hover: var(--acad-ink);
  --focus-ring: var(--acad-wine);
}

.emr-academy { background: var(--acad-cream); color: var(--acad-ink); font-family: var(--acad-font-body); }
.acad-wrap { max-width: var(--container); margin: 0 auto; padding: 0 var(--gutter); }
.acad-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }

/* ---------- közös elemek ---------- */
.acad-h {
  margin: 0; font-family: var(--acad-font-head); font-weight: 700; text-transform: uppercase;
  letter-spacing: .005em; line-height: .94; color: var(--acad-wine); text-wrap: balance;
}
.acad-h--hero { font-size: clamp(2.5rem, 4.7vw, 4.4rem); }
.acad-h--section { font-size: clamp(2.2rem, 4.6vw, 3.9rem); text-align: center; }
.acad-h--card { font-size: clamp(1.9rem, 3vw, 2.6rem); }
.acad-lead { margin: 0; font-weight: 500; font-size: 15px; line-height: 1.6; max-width: 46ch; }
.acad-kicker {
  margin: 0; display: inline-flex; align-items: center; gap: 8px; font-family: var(--acad-font-head);
  font-weight: 700; font-size: 13px; letter-spacing: .12em; text-transform: uppercase; color: var(--acad-wine);
}
.acad-kicker::before { content: ""; width: 9px; height: 9px; border-radius: 50%; background: var(--acad-gold); box-shadow: 0 0 0 2px var(--acad-wine); }

.acad-btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 48px;
  padding: 0 26px; border-radius: 999px; border: 2px solid var(--acad-ink); cursor: pointer;
  font-family: var(--acad-font-head); font-weight: 700; font-size: 14px; letter-spacing: .1em; text-transform: uppercase;
  background: var(--acad-cream-hi); color: var(--acad-wine); box-shadow: var(--acad-shadow-hard);
  transition: transform .12s ease, box-shadow .12s ease, background .12s ease;
}
.acad-btn--solid { background: var(--acad-wine-600); color: var(--acad-cream-hi); }
.acad-btn:hover { transform: translateY(2px); box-shadow: 0 3px 0 var(--acad-ink); }
.acad-btn:active { transform: translateY(5px); box-shadow: 0 0 0 var(--acad-ink); }
.acad-btn:focus-visible { outline: 3px solid var(--acad-wine); outline-offset: 4px; }
.acad-btn--solid:hover { background: var(--acad-wine); }
.acad-btn--light { background: var(--acad-cream-hi); color: var(--acad-wine); border-color: var(--acad-ink); }

.acad-chip {
  display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 999px;
  font-family: var(--acad-font-head); font-weight: 700; font-size: 12px; letter-spacing: .12em; text-transform: uppercase;
  background: var(--acad-gold); color: var(--acad-ink);
}

/* ---------- hero ---------- */
.acad-hero { padding: clamp(18px, 2.4vw, 32px) 0 clamp(36px, 5vw, 64px); }
.acad-hero-grid { display: grid; grid-template-columns: minmax(0, 6fr) minmax(0, 6fr); gap: clamp(20px, 3vw, 44px); min-height: min(660px, 80vh); }
.acad-hero-copy { display: flex; flex-direction: column; justify-content: space-between; gap: 40px; padding: 4px 0 6px; }
.acad-brand { display: flex; align-items: center; gap: 12px; color: var(--acad-wine); }
.acad-brand-mark { width: 44px; height: 44px; flex: none; }
.acad-brand-name { font-family: var(--acad-font-head); font-weight: 700; font-size: 26px; line-height: .9; letter-spacing: .04em; text-transform: uppercase; }
.acad-brand-name small { display: block; font-size: 12px; letter-spacing: .24em; color: var(--acad-brown); margin-bottom: 3px; }
.acad-nav { display: flex; flex-direction: column; gap: 14px; margin: 0; padding: 0; list-style: none; }
.acad-nav a {
  display: inline-flex; align-items: center; gap: 6px; padding: 2px 0; font-size: 14px; font-weight: 500;
  color: var(--acad-ink); text-decoration: none; border-bottom: 1.5px solid transparent;
}
.acad-nav a:hover { border-bottom-color: var(--acad-wine); }
.acad-nav a:focus-visible { outline: 2px solid var(--acad-wine); outline-offset: 3px; }
.acad-nav a::after { content: "↗"; font-size: 12px; }
.acad-hero-main { display: flex; flex-direction: column; gap: 22px; }
.acad-actions { display: flex; flex-wrap: wrap; gap: 14px; margin-top: 6px; }
.acad-domain { margin: 0; font-size: 12px; font-weight: 600; letter-spacing: .06em; color: var(--acad-brown); }

/* bordó panel, koncentrikus hullámokkal */
.acad-stage {
  position: relative; overflow: hidden; border-radius: var(--acad-r-panel); background: var(--acad-wine); min-height: 460px;
  isolation: isolate;
}
.acad-waves { position: absolute; inset: 0; width: 100%; height: 100%; z-index: -1; }
.acad-glass {
  position: absolute; display: flex; align-items: center; gap: 12px; color: var(--acad-cream-hi);
  border-radius: 20px; padding: 14px 18px; font-weight: 500; font-size: 15px;
  background: linear-gradient(140deg, rgba(255,255,255,.2), rgba(255,255,255,.04)), rgba(40,3,10,.45);
  border: 1px solid rgba(255,255,255,.32); box-shadow: 0 18px 40px rgba(20,1,3,.35), inset 0 1px 0 rgba(255,255,255,.25);
  -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px);
  animation: acad-float 7s ease-in-out infinite;
}
.acad-glass-ico { width: 40px; height: 40px; flex: none; display: grid; place-items: center; border-radius: 12px; background: rgba(240,231,204,.18); border: 1px solid rgba(255,255,255,.28); }
.acad-glass-ico svg { width: 22px; height: 22px; }
.acad-glass--a { top: 11%; left: 8%; animation-delay: -2s; }
.acad-glass--b { right: 6%; bottom: 9%; animation-delay: -4s; }
.acad-glass--main {
  left: 50%; top: 50%; width: min(78%, 400px); flex-direction: column; align-items: stretch; text-align: center;
  gap: 8px; padding: 26px 26px 20px; border-radius: 26px; transform: translate(-45%, -52%); animation: none;
}
.acad-glass--main .acad-glass-ico { margin: 0 auto; width: 64px; height: 64px; border-radius: 20px; background: var(--acad-cream-hi); border-color: var(--acad-cream-hi); color: var(--acad-wine); }
.acad-glass--main .acad-glass-ico svg { width: 36px; height: 36px; }
.acad-glass-title { margin: 6px 0 0; font-family: var(--acad-font-head); font-weight: 700; font-size: clamp(1.8rem, 3vw, 2.5rem); line-height: .95; letter-spacing: .01em; text-transform: uppercase; }
.acad-glass-sub { margin: 0; font-size: 14px; line-height: 1.5; color: #F0E7CC; }
.acad-glass-row {
  display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; padding: 10px 12px;
  border-radius: 14px; background: rgba(20,1,3,.32); border: 1px solid rgba(255,255,255,.18); text-align: left; font-size: 13px;
}
.acad-glass-row strong { display: block; font-weight: 600; }
.acad-glass-row span.s { display: block; font-size: 12px; color: #E6D6C4; }
@keyframes acad-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-9px); } }

/* ---------- szakaszok ---------- */
.acad-section { padding: clamp(40px, 6vw, 84px) 0; }
.acad-section-head { display: flex; flex-direction: column; align-items: center; gap: 16px; margin-bottom: clamp(26px, 4vw, 48px); text-align: center; }
.acad-section-head .acad-lead { max-width: 54ch; }

.acad-cards { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(16px, 2vw, 28px); }
.acad-card {
  position: relative; display: flex; flex-direction: column; gap: 14px; padding: clamp(24px, 3vw, 38px);
  border-radius: var(--acad-r-card); background: var(--acad-cream-hi); border: 2px solid var(--acad-ink); box-shadow: var(--acad-shadow-hard);
}
.acad-card--wine { background: var(--acad-wine); border-color: var(--acad-ink); color: var(--acad-cream-hi); }
.acad-card--wine .acad-h, .acad-card--wine .acad-kicker { color: var(--acad-cream-hi); }
.acad-card--wine .acad-kicker::before { box-shadow: 0 0 0 2px var(--acad-cream-hi); }
.acad-card-top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.acad-card p { margin: 0; font-weight: 500; font-size: 15px; line-height: 1.6; }
.acad-list { list-style: none; margin: 4px 0 0; padding: 0; display: grid; gap: 10px; }
.acad-list li { display: flex; gap: 12px; align-items: flex-start; font-weight: 500; font-size: 15px; line-height: 1.45; }
.acad-list li::before {
  content: ""; flex: none; width: 22px; height: 22px; margin-top: -1px; border-radius: 50%; background: var(--acad-gold) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23140103' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center/14px no-repeat;
}
.acad-not { margin-top: auto !important; padding-top: 16px; border-top: 2px dashed currentColor; font-size: 14px !important; }

.acad-need {
  display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px; margin-top: clamp(16px, 2vw, 28px); padding: 22px clamp(22px, 3vw, 36px);
  border-radius: var(--acad-r-card); background: var(--acad-gold); border: 2px solid var(--acad-ink); box-shadow: var(--acad-shadow-hard); color: var(--acad-ink);
}
.acad-need strong { font-family: var(--acad-font-head); font-weight: 700; font-size: 22px; letter-spacing: .06em; text-transform: uppercase; white-space: nowrap; }
.acad-need p { margin: 0; flex: 1 1 360px; font-weight: 500; font-size: 15px; line-height: 1.55; }

/* nagy bordó panel az információ-kártyákkal */
.acad-panel { border-radius: var(--acad-r-panel); background: var(--acad-wine); padding: clamp(28px, 5vw, 72px) clamp(18px, 4vw, 56px); position: relative; overflow: hidden; isolation: isolate; }
.acad-panel .acad-waves { opacity: .9; }
.acad-panel .acad-h { color: var(--acad-cream-hi); }
.acad-panel .acad-kicker { color: var(--acad-rose); }
.acad-panel .acad-lead { color: var(--acad-cream-hi); }
.acad-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 22px); margin: 0; }
.acad-fact {
  display: flex; flex-direction: column; gap: 10px; padding: 24px 24px 26px; border-radius: 24px; color: var(--acad-cream-hi);
  background: linear-gradient(145deg, rgba(255,255,255,.16), rgba(255,255,255,.03)), rgba(40,3,10,.38); border: 1px solid rgba(255,255,255,.3);
  -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); box-shadow: inset 0 1px 0 rgba(255,255,255,.22);
}
.acad-fact-no { font-family: var(--acad-font-head); font-weight: 700; font-size: 15px; letter-spacing: .14em; color: var(--acad-gold); }
.acad-fact dt { margin: 0; font-family: var(--acad-font-head); font-weight: 700; font-size: 26px; line-height: 1; letter-spacing: .02em; text-transform: uppercase; }
.acad-fact dd { margin: 0; font-weight: 500; font-size: 14.5px; line-height: 1.55; color: #F0E7CC; }
.acad-fact--no { background: rgba(20,1,3,.4); }

/* záró felhívás */
.acad-cta {
  display: grid; grid-template-columns: minmax(0, 1.4fr) auto; gap: 24px 40px; align-items: center; padding: clamp(28px, 4vw, 52px);
  border-radius: var(--acad-r-panel); background: var(--acad-rose); border: 2px solid var(--acad-ink); box-shadow: var(--acad-shadow-hard);
}
.acad-cta .acad-h { text-align: left; color: var(--acad-wine); }
.acad-cta p { margin: 12px 0 0; font-weight: 500; font-size: 15px; line-height: 1.55; max-width: 52ch; color: var(--acad-ink); }
.acad-foot { margin: 22px 0 0; font-size: 12.5px; line-height: 1.6; color: var(--acad-brown); max-width: 90ch; }
.acad-bottom { padding-bottom: clamp(40px, 6vw, 84px); }

@media (max-width: 960px) {
  .acad-hero-grid { grid-template-columns: 1fr; min-height: 0; }
  .acad-hero-copy { gap: 28px; }
  .acad-nav { flex-direction: row; flex-wrap: wrap; gap: 8px 22px; }
  .acad-stage { min-height: 440px; }
  .acad-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
  .acad-cards, .acad-facts { grid-template-columns: 1fr; }
  .acad-cta { grid-template-columns: 1fr; }
  .acad-stage { display: flex; flex-direction: column; justify-content: center; gap: 16px; min-height: 0; padding: 28px 18px 32px; }
  .acad-glass, .acad-glass--main { position: relative; inset: auto; transform: none; width: auto; animation: none; }
  .acad-glass--a { align-self: flex-start; }
  .acad-glass--b { align-self: flex-end; }
  .acad-btn { width: 100%; }
  .acad-need strong { white-space: normal; }
}
@media (prefers-reduced-motion: reduce) {
  .acad-glass { animation: none; }
  .acad-btn { transition: none; }
}

.acad-card--wine { overflow: hidden; isolation: isolate; }
.acad-waves--corner { opacity: .4; left: auto; right: -24%; width: 70%; top: auto; bottom: -8%; height: 80%; z-index: -1; }

.acad-teacher { display: grid; grid-template-columns: minmax(0, 300px) minmax(0, 1fr); gap: clamp(20px, 3vw, 44px); align-items: center; }
.acad-teacher-img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; border-radius: 20px; }
.acad-lead-p { color: var(--acad-cream-hi); margin: 12px 0 0; font-size: 18px; line-height: 1.55; max-width: 46ch; }
@media (max-width: 720px) { .acad-teacher { grid-template-columns: 1fr; } .acad-teacher-img { max-width: 320px; } }

/* két hasáb: Home Barista Pro / Kávézó alapozó */
.acad-tracks { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: clamp(12px, 1.6vw, 22px); }
.acad-track { display: flex; flex-direction: column; gap: clamp(10px, 1.2vw, 16px); }
.acad-track-h { margin: 0 0 4px; font-family: var(--acad-font-head); font-weight: 700; font-size: clamp(1.5rem, 2.4vw, 2.1rem); line-height: 1; text-transform: uppercase; color: var(--acad-gold); }
.acad-track-facts { display: grid; gap: clamp(10px, 1.2vw, 16px); margin: 0; }
@media (max-width: 760px) { .acad-tracks { grid-template-columns: 1fr; } }

/* ---------- „Hol tartasz?” 60 mp-es kávékvíz a hero bordó paneljén ---------- */
.acad-stage { display: grid; place-items: center; padding: clamp(84px, 9vw, 104px) 18px; }
.acad-glass--main.acad-quiz { position: relative; left: auto; top: auto; transform: none; width: min(90%, 440px); }
.acad-stage .acad-glass--a, .acad-stage .acad-glass--b { transition: opacity .25s ease; }
.acad-stage.is-quiz .acad-glass--a, .acad-stage.is-quiz .acad-glass--b { opacity: 0; pointer-events: none; }
.acad-quiz-start { margin: 8px auto 0; align-self: center; }
.acad-quiz-top { display: flex; align-items: flex-end; justify-content: space-between; gap: 12px; }
.acad-quiz-clock, .acad-quiz-score, .acad-quiz-final { display: flex; align-items: baseline; gap: 6px; font-family: var(--acad-font-head); font-weight: 700; line-height: .85; }
.acad-quiz-clock span { font-size: clamp(4.4rem, 9vw, 6.2rem); color: var(--acad-cream-hi); font-variant-numeric: tabular-nums; }
.acad-quiz-clock small, .acad-quiz-score small, .acad-quiz-final small { font-size: 15px; letter-spacing: .12em; text-transform: uppercase; color: #E6D6C4; }
.acad-quiz-score span { font-size: 2.6rem; color: var(--acad-gold); font-variant-numeric: tabular-nums; }
.acad-quiz-bar { height: 6px; border-radius: 3px; background: rgba(240,231,204,.18); overflow: hidden; margin: 6px 0 4px; }
.acad-quiz-bar i { display: block; height: 100%; background: var(--acad-gold); transform-origin: left; }
.acad-quiz-q { margin: 6px 0 4px; min-height: 3.1em; font-weight: 600; font-size: 17px; line-height: 1.35; text-align: left; color: var(--acad-cream-hi); }
.acad-quiz-opts { display: grid; gap: 10px; }
.acad-quiz-opt {
  display: flex; align-items: center; gap: 12px; width: 100%; min-height: 54px; padding: 10px 14px; text-align: left; cursor: pointer;
  border-radius: 16px; border: 2px solid var(--acad-ink); background: var(--acad-cream-hi); color: var(--acad-ink);
  font: 600 15px/1.3 var(--acad-font-body); box-shadow: 0 4px 0 var(--acad-ink); transition: transform .08s ease, box-shadow .08s ease;
}
.acad-quiz-opt:hover { transform: translateY(1px); box-shadow: 0 3px 0 var(--acad-ink); }
.acad-quiz-opt:active { transform: translateY(4px); box-shadow: 0 0 0 var(--acad-ink); }
.acad-quiz-opt:focus-visible { outline: 3px solid var(--acad-gold); outline-offset: 3px; }
.acad-quiz-opt kbd { flex: none; display: grid; place-items: center; width: 26px; height: 26px; border-radius: 8px; background: var(--acad-wine); color: var(--acad-cream-hi); font: 700 13px var(--acad-font-head); }
.acad-quiz-hint { margin: 4px 0 0; font-size: 12px; color: #E6D6C4; }
.acad-quiz.is-ok { box-shadow: 0 0 0 3px #CFE3A0, 0 18px 40px rgba(20,1,3,.35); }
.acad-quiz.is-no { box-shadow: 0 0 0 3px #FF8A6E, 0 18px 40px rgba(20,1,3,.35); }
.acad-quiz-greet { margin: 4px 0 0; font-family: var(--acad-font-head); font-weight: 700; font-size: clamp(1.7rem, 3vw, 2.3rem); line-height: .95; text-transform: uppercase; color: var(--acad-cream-hi); }
.acad-quiz-final { justify-content: center; margin: 4px 0; }
.acad-quiz-final span { font-size: clamp(5rem, 10vw, 7rem); color: var(--acad-gold); }
.acad-quiz-share { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 8px; margin-top: 8px; }
.acad-quiz-share--img { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.acad-quiz-share button, .acad-quiz-share a {
  display: grid; place-items: center; min-height: 44px; padding: 6px 8px; border-radius: 999px; cursor: pointer; text-decoration: none;
  border: 1px solid rgba(255,255,255,.45); background: rgba(240,231,204,.1); color: var(--acad-cream-hi);
  font: 700 11px var(--acad-font-head); letter-spacing: .05em; text-transform: uppercase; white-space: nowrap;
}
.acad-quiz-share button:hover, .acad-quiz-share a:hover { background: rgba(240,231,204,.22); }
.acad-quiz-share button:focus-visible, .acad-quiz-share a:focus-visible { outline: 2px solid var(--acad-gold); outline-offset: 2px; }
.acad-quiz-note { margin: 6px 0 0; font-size: 13px; color: #F0E7CC; }
@media (max-width: 680px) {
  .acad-stage { padding: 28px 14px 32px; }
  .acad-glass--main.acad-quiz { width: auto; }
  .acad-stage.is-quiz .acad-glass--a, .acad-stage.is-quiz .acad-glass--b { display: none; }
  .acad-quiz-share { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (prefers-reduced-motion: reduce) { .acad-quiz-opt, .acad-stage .acad-glass--a, .acad-stage .acad-glass--b { transition: none; } }

/* Ár: a kártya jobb alsó sarkában, 30%-kal nagyobb a sima címkénél */
.acad-chip--price { align-self: flex-end; margin-top: 6px; gap: 8px; padding: 5px 16px; font-size: 15.6px; }

/* Kiemelt megjegyzés a kártyán (arany jelölés, mindkét kártyaszínen olvasható) */
.acad-mark { background: var(--acad-gold); color: var(--acad-ink); font-weight: 700; padding: 2px 8px; border-radius: 6px; -webkit-box-decoration-break: clone; box-decoration-break: clone; }

/* Latte Art időpont-egyeztető */
.acad-form { gap: 14px; }
.acad-slots { display: grid; gap: 10px; margin: 4px 0 0; padding: 0; border: 0; min-width: 0; }
.acad-slot { display: flex; align-items: center; gap: 14px; min-height: 54px; padding: 10px 16px; border-radius: 16px; border: 2px solid var(--acad-ink); background: var(--acad-cream-hi); color: var(--acad-ink); font: 700 16px/1.3 var(--acad-font-body); box-shadow: 0 4px 0 var(--acad-ink); cursor: pointer; transition: transform .08s ease, box-shadow .08s ease, background .12s ease; }
.acad-slot:hover { transform: translateY(1px); box-shadow: 0 3px 0 var(--acad-ink); }
.acad-slot.is-on { background: var(--acad-gold); }
.acad-slot:focus-within { outline: 3px solid var(--acad-gold); outline-offset: 3px; }
.acad-slot input { width: 22px; height: 22px; flex: none; accent-color: var(--acad-wine); cursor: pointer; }
.acad-field { display: grid; gap: 6px; font-weight: 600; font-size: 14px; }
.acad-field input { width: 100%; box-sizing: border-box; min-height: 50px; padding: 0 16px; border-radius: 14px; border: 2px solid var(--acad-ink); background: var(--acad-cream-hi); color: var(--acad-ink); font: 500 16px var(--acad-font-body); }
.acad-field input:focus-visible { outline: 3px solid var(--acad-gold); outline-offset: 2px; }
.acad-consent { display: flex; gap: 12px; align-items: flex-start; font-size: 13.5px; line-height: 1.5; font-weight: 500; }
.acad-consent input { width: 20px; height: 20px; flex: none; margin-top: 1px; accent-color: var(--acad-gold); }
.acad-hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.acad-form-err { color: #FFD3C7 !important; font-weight: 700 !important; }
.acad-form .acad-btn { align-self: flex-start; }
.acad-form .acad-btn:disabled { opacity: .6; cursor: progress; }
