.form-page{padding-block:32px 56px}
.page-head{margin-bottom:24px}
.eyebrow.dark{color:var(--primary)}
.page-head h1{margin:6px 0 0;font-family:"Fraunces",Georgia,serif;font-size:1.8rem;line-height:1.2}
@media (min-width:640px){.page-head h1{font-size:2.25rem}}
.req{color:var(--danger)}

.panel{
  border:1px solid var(--border);
  background:var(--card);
  border-radius:22px;
  padding:20px;
  margin:0 0 20px;
  box-shadow:var(--shadow);
}
@media (min-width:640px){.panel{padding:28px}}
.panel legend{
  font-family:"Fraunces",Georgia,serif;
  font-size:1.05rem;font-weight:700;color:var(--primary);
  background:#f4efe7;border:1px solid var(--border);
  padding:6px 16px;border-radius:999px;
}
@media (min-width:640px){.panel legend{font-size:1.15rem}}

.grid{display:grid;gap:18px;margin-top:18px}
@media (min-width:768px){.grid{grid-template-columns:1fr 1fr;gap:20px 24px}}
.span-2{grid-column:1/-1}

.field label{display:block;font-size:.86rem;font-weight:600;margin-bottom:8px}
select,textarea{
  width:100%;border:1px solid var(--border);border-radius:12px;background:var(--bg);
  padding:12px 16px;font:inherit;font-size:.92rem;color:inherit;outline:none;transition:.2s;
}
select{height:48px;padding-block:0;appearance:none;
  background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236d6159' stroke-width='2'%3e%3cpath d='m6 9 6 6 6-6'/%3e%3c/svg%3e");
  background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:42px;
}
textarea{resize:vertical;min-height:96px;line-height:1.5}
select:focus,textarea:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(122,20,32,.14);background:#fff}
input[readonly]{background:#f4efe7;color:var(--muted);cursor:not-allowed}

.note{margin:16px 0 0;font-size:.86rem;color:var(--muted);background:#f4efe7;border-radius:14px;padding:14px 16px}
.note.soft{background:transparent;padding:12px 0 0}
.note a{color:var(--primary);font-weight:700;text-decoration:none}
.note a:hover{text-decoration:underline}

.actions{display:grid;gap:14px;max-width:420px;margin-inline:auto}

.radios{display:flex;gap:12px;flex-wrap:wrap}
.radio{
  display:inline-flex;align-items:center;gap:8px;
  border:1px solid var(--border);border-radius:12px;
  padding:11px 18px;background:var(--bg);cursor:pointer;
  font-size:.9rem;font-weight:600;transition:.2s;
}
.radio:hover{border-color:var(--primary)}
.radio input{width:auto;margin:0;accent-color:var(--primary)}
.radio:has(input:checked){border-color:var(--primary);background:#f4efe7;color:var(--primary)}
.field label small{display:block;font-weight:500;color:var(--muted);font-size:.78rem;margin-top:2px}

.person-block{
  margin-top:18px;padding:16px;border:1px dashed var(--border);
  border-radius:16px;background:var(--bg);
}
@media (min-width:640px){.person-block{padding:20px}}
.person-block .grid{margin-top:12px}
@media (min-width:768px){.person-block .grid{grid-template-columns:repeat(3,1fr)}}
.person-title{
  margin:0;font-family:"Fraunces",Georgia,serif;font-weight:700;
  font-size:.98rem;color:var(--primary);
}
input[type="date"]{
  width:100%;height:48px;border:1px solid var(--border);border-radius:12px;
  background:var(--bg);padding:0 16px;font:inherit;font-size:.92rem;color:inherit;outline:none;
}
input[type="date"]:focus{border-color:var(--primary);box-shadow:0 0 0 4px rgba(122,20,32,.14);background:#fff}

/* --------------------------------------logo-------------------------- */
.logo-img-convocation {
        position: relative;
        width: 60px;
        height: 70px;

        object-fit: cover;
     
    }
/* --------------------------------------logo-------------------------- */
    .info-section {
    margin-top: 10px;
}

.info-title {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 25px;
    color: #222;
    position: relative;
    padding-bottom: 12px;
}

.info-title::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 60px;
    height: 3px;
    background: #b21f2d;
}

.info-content {
    display: flex;
    flex-direction: column;
    gap: 15px;
}

.info-box {
    padding: 18px 22px;
    border: 1px solid #e5e5e5;
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.05);
}

.info-box p {
    margin: 0;
    font-size: 14px;
    line-height: 1.7;
    color: #444;
}

.info-box h4 {
    margin: 0 0 10px;
    font-size: 16px;
    font-weight: 700;
}

.info-box a {
    color: #b21f2d;
    word-break: break-word;
}

.info-box a:hover {
    text-decoration: underline;
}

.warning-box {
    background: #fffaf0;
    border-left: 4px solid #e0a800;
}

.login-box {
    background: #f8f9ff;
    border-left: 4px solid #b21f2d;
}
.login-box-2{
border-left: 4px solid #2a921c;
}

.library-box {
    background: #f7fbff;
    border-left: 4px solid #2471a3;
}

.blink_download {
    color: #b21f2d;
    font-weight: 700;
    text-decoration: none;
}

.blink_download:hover {
    text-decoration: underline;
}

/* Optional blinking effect */
@keyframes blinkText {
    50% {
        opacity: 0.45;
    }
}

.blink_download {
    animation: blinkText 1.2s linear infinite;
}

/* Mobile */
/* @media (max-width: 767px) {

    .info-title {
        font-size: 21px;
        margin-bottom: 18px;
    }

    .info-box {
        padding: 15px 16px;
    }

    .info-box p {
        font-size: 14px;
        line-height: 1.6;
    }

    .info-box h4 {
        font-size: 17px;
    }
} */

