/* Laurea — academic commencement dossier. Trusted template stylesheet. */

.uk-laurea{
  --lr-cream:#FAF7F2;
  --lr-cream2:#F0EAE0;
  --lr-gold:#C9A46E;
  --lr-gold-dp:#8B6B3A;
  --lr-gold-lt:#E8D5B0;
  --lr-ink:#2C2418;
  --lr-dark:#1A0E05;
  --lr-muted:rgba(44,36,24,.66);
  --lr-line:rgba(201,164,110,.34);
  --lr-hairline:rgba(44,36,24,.12);
  --lr-radius:2px;
  --lr-radius-control:2px;
  --lr-indent:0px;
  --lr-ease:cubic-bezier(.22,.7,.28,1);
  --lr-reveal:.72s;
  --lr-shift:0px;
  --lr-slide:26px;
  --lr-col:min(100% - 36px, 620px);
  min-height:100vh;
  overflow:clip;
  background:var(--lr-cream);
  color:var(--lr-ink);
  font-family:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;
  font-size:15px;
  line-height:1.82;
}
.uk-laurea *,.uk-laurea *:before,.uk-laurea *:after{box-sizing:border-box}
/* Controls are toggled through the hidden attribute and carry their own
   display rules, so the user-agent rule has to be reinforced here. */
.uk-laurea [hidden]{display:none !important}
.uk-laurea .bdu-icon{display:inline-block;flex:0 0 auto;vertical-align:middle}
.uk-laurea h1,.uk-laurea h2,.uk-laurea h3,.uk-laurea h4{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-weight:600;line-height:1.16;overflow-wrap:anywhere;
}
.uk-laurea p,.uk-laurea strong,.uk-laurea span,.uk-laurea li,.uk-laurea cite{overflow-wrap:anywhere}
.uk-lr-preline{white-space:pre-line}

/* Palettes ---------------------------------------------------------------- */
.uk-laurea.uk-design-palette-warm{--lr-cream:#FBF4E9;--lr-cream2:#F2E6D3;--lr-gold:#BC8A45;--lr-gold-dp:#8A6128;--lr-gold-lt:#E3C795;--lr-ink:#33281A;--lr-muted:rgba(51,40,26,.66);--lr-line:rgba(188,138,69,.36);--lr-hairline:rgba(51,40,26,.12)}
.uk-laurea.uk-design-palette-romantic{--lr-cream:#FBF3F2;--lr-cream2:#F2E1DE;--lr-gold:#B98A76;--lr-gold-dp:#8C6151;--lr-gold-lt:#E6C7BB;--lr-ink:#3A2A26;--lr-muted:rgba(58,42,38,.66);--lr-line:rgba(185,138,118,.36);--lr-hairline:rgba(58,42,38,.12)}
.uk-laurea.uk-design-palette-sage{--lr-cream:#F6F7F0;--lr-cream2:#E8ECDD;--lr-gold:#8C9460;--lr-gold-dp:#666D40;--lr-gold-lt:#CBD3A8;--lr-ink:#2E3324;--lr-muted:rgba(46,51,36,.66);--lr-line:rgba(140,148,96,.36);--lr-hairline:rgba(46,51,36,.12)}
.uk-laurea.uk-design-palette-midnight{--lr-cream:#14100B;--lr-cream2:#1F1810;--lr-gold:#D6B074;--lr-gold-dp:#A9854B;--lr-gold-lt:#F0DDB8;--lr-ink:#F6EEE0;--lr-muted:rgba(246,238,224,.7);--lr-line:rgba(214,176,116,.4);--lr-hairline:rgba(246,238,224,.16);--lr-dark:#0B0805}

/* Typography variants ----------------------------------------------------- */
.uk-laurea.uk-design-type-classic h1,
.uk-laurea.uk-design-type-classic h2,
.uk-laurea.uk-design-type-classic h3{letter-spacing:.05em}
.uk-laurea.uk-design-type-editorial h1,
.uk-laurea.uk-design-type-editorial h2,
.uk-laurea.uk-design-type-editorial h3{font-style:italic;letter-spacing:-.012em}
.uk-laurea.uk-design-type-modern h1,
.uk-laurea.uk-design-type-modern h2,
.uk-laurea.uk-design-type-modern h3,
.uk-laurea.uk-design-type-modern h4{font-family:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;font-weight:700;letter-spacing:-.035em}

/* Surface variants. The ledger is square by nature, so the control moves the
   indent of the alternating columns instead of rounding corners. */
.uk-laurea.uk-design-surface-soft{--lr-radius:14px;--lr-radius-control:999px;--lr-indent:0px}
.uk-laurea.uk-design-surface-balanced{--lr-radius:8px;--lr-radius-control:8px;--lr-indent:16px}
.uk-laurea.uk-design-surface-sharp{--lr-radius:0px;--lr-radius-control:0px;--lr-indent:36px}

/* Motion variants. Entries slide in from their own side of the page. */
.uk-laurea.uk-design-motion-soft{--lr-reveal:.95s;--lr-slide:12px}
.uk-laurea.uk-design-motion-cinematic{--lr-reveal:.85s;--lr-slide:48px}
.uk-laurea.uk-design-motion-minimal{--lr-reveal:0s;--lr-slide:0px}

/* Primitives -------------------------------------------------------------- */
.uk-lr-eyebrow{
  margin:0;color:var(--lr-gold-dp);font-size:10px;font-weight:700;line-height:1.6;
  letter-spacing:.3em;text-transform:uppercase;
}
.uk-lr-copy{margin:14px 0 0;max-width:56ch;color:var(--lr-muted);font-size:14px;line-height:1.92}
.uk-lr-lead{margin:14px 0 0;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:clamp(1.3rem,6vw,1.75rem)}

.uk-lr-seal{
  display:inline-grid;place-items:center;width:62px;height:62px;
  border:1px solid var(--lr-gold);border-radius:50%;
  color:var(--lr-gold-dp);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:14px;letter-spacing:.14em;
}
.uk-lr-seal.is-large{width:88px;height:88px;font-size:18px}

.uk-lr-button{
  display:inline-flex;align-items:center;justify-content:center;gap:8px;
  min-height:44px;padding:0 20px;cursor:pointer;text-decoration:none;
  border:1px solid var(--lr-line);border-radius:var(--lr-radius-control);
  background:transparent;color:var(--lr-gold-dp);
  font-family:inherit;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
  transition:background .25s var(--lr-ease),border-color .25s var(--lr-ease),color .25s var(--lr-ease);
}
.uk-lr-button:hover{border-color:var(--lr-gold);background:rgba(201,164,110,.12)}
.uk-lr-button.is-solid{border-color:var(--lr-gold);background:var(--lr-gold);color:var(--lr-dark)}
.uk-lr-button.is-solid:hover{background:var(--lr-gold-dp);color:var(--lr-cream)}
.uk-laurea :is(a,button,summary,input,select,textarea):focus-visible{outline:2px solid var(--lr-gold-dp);outline-offset:3px}

.uk-lr-progress{position:fixed;left:0;top:0;z-index:1100;width:100%;height:2px;pointer-events:none}
.uk-lr-progress i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--lr-gold-lt),var(--lr-gold),var(--lr-gold-dp));transition:width .1s linear}

.uk-lr-toast{
  position:fixed;left:50%;bottom:96px;z-index:1250;transform:translate(-50%,10px);
  opacity:0;pointer-events:none;max-width:min(88vw,340px);
  padding:10px 18px;border-radius:var(--lr-radius);background:var(--lr-dark);color:var(--lr-gold-lt);
  font-size:12px;font-weight:600;text-align:center;
  box-shadow:0 14px 40px rgba(26,14,5,.35);transition:opacity .22s var(--lr-ease),transform .22s var(--lr-ease);
}
.uk-lr-toast.is-show{opacity:1;transform:translate(-50%,0)}

.uk-lr-feedback{
  position:fixed;left:50%;top:64px;z-index:1200;transform:translateX(-50%);
  display:flex;align-items:center;gap:8px;width:min(92vw,520px);
  padding:11px 16px;border:1px solid var(--lr-line);border-radius:var(--lr-radius);
  background:var(--lr-cream);color:var(--lr-ink);font-size:13px;box-shadow:0 12px 34px rgba(26,14,5,.16);
}

/* Reveal: entries arrive from the side they belong to. */
.uk-lr-reveal,.uk-lr-reveal-item{
  opacity:0;transform:translate3d(calc(var(--lr-slide) * -1),0,0);
  transition:opacity var(--lr-reveal) var(--lr-ease),transform var(--lr-reveal) var(--lr-ease);
}
.uk-lr-sec:nth-of-type(even) .uk-lr-reveal,
.uk-lr-sec:nth-of-type(even) .uk-lr-reveal-item{transform:translate3d(var(--lr-slide),0,0)}
.uk-lr-reveal.is-visible,.uk-lr-reveal.is-visible .uk-lr-reveal-item,.uk-lr-reveal-item.is-visible{opacity:1;transform:none}
.uk-lr-reveal.is-visible .uk-lr-reveal-item:nth-child(2){transition-delay:.07s}
.uk-lr-reveal.is-visible .uk-lr-reveal-item:nth-child(3){transition-delay:.14s}
.uk-lr-reveal.is-visible .uk-lr-reveal-item:nth-child(4){transition-delay:.21s}

/* Opening gate ------------------------------------------------------------ */
.uk-lr-gate{
  position:fixed;inset:0;z-index:900;display:flex;flex-direction:column;
  align-items:flex-start;justify-content:flex-end;padding:26px 22px calc(34px + env(safe-area-inset-bottom));
  background:var(--lr-dark);text-align:left;
  transition:opacity .55s var(--lr-ease),visibility .55s;
}
.uk-lr-gate.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.uk-lr-gate-media{position:absolute;inset:0;overflow:hidden}
.uk-lr-gate-media img{width:100%;height:100%;object-fit:cover;object-position:var(--lr-focus-mobile-x,50%) var(--lr-focus-mobile-y,36%)}
.uk-lr-gate-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,14,5,.42),rgba(26,14,5,.72) 52%,rgba(26,14,5,.94))}
.uk-lr-gate-body{position:relative;z-index:2;width:min(100%,460px)}
.uk-lr-gate-body h1{margin:14px 0 0;color:var(--lr-cream);font-size:clamp(2rem,10vw,3rem)}
.uk-lr-gate-body .uk-lr-eyebrow{margin-top:18px;color:var(--lr-gold-lt)}
.uk-lr-gate-body .uk-lr-seal{border-color:var(--lr-gold-lt);color:var(--lr-gold-lt)}
.uk-lr-gate-date{margin:14px 0 0;color:rgba(250,247,242,.72);font-size:12px;letter-spacing:.22em;text-transform:uppercase}
.uk-lr-gate-body .uk-lr-button{margin-top:22px;border-color:var(--lr-gold-lt)}
.uk-lr-gate-body .uk-lr-group-list small{color:rgba(250,247,242,.6)}
.uk-lr-gate-body .uk-lr-group-list strong{color:var(--lr-cream)}
.uk-lr-gate-body .uk-lr-guest{border-color:rgba(232,213,176,.4);background:rgba(26,14,5,.4)}
.uk-lr-gate-body .uk-lr-guest span{color:rgba(250,247,242,.6)}
.uk-lr-gate-body .uk-lr-guest strong{color:var(--lr-cream)}

.uk-lr-guest{margin:20px 0 0;max-width:340px;padding:12px 16px;border:1px solid var(--lr-line);border-radius:var(--lr-radius)}
.uk-lr-guest span{display:block;color:var(--lr-muted);font-size:9px;letter-spacing:.24em;text-transform:uppercase}
.uk-lr-guest strong{display:block;margin-top:4px;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:18px;font-weight:600;line-height:1.35}

.uk-lr-group-list{display:grid;gap:10px;margin:16px 0 0}
.uk-lr-group-list span{display:grid;gap:2px}
.uk-lr-group-list small{color:var(--lr-muted);font-size:9px;letter-spacing:.22em;text-transform:uppercase}
.uk-lr-group-list strong{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:18px;font-weight:600}

/* Cover: full-bleed photograph with a gold plate hung off the lower left. */
.uk-lr-cover{position:relative;min-height:100svh;display:grid;align-content:end;background:var(--lr-dark)}
.uk-lr-cover-media{position:absolute;inset:0;overflow:hidden}
.uk-lr-cover-image{width:100%;height:100%;object-fit:cover;object-position:var(--lr-focus-mobile-x,50%) var(--lr-focus-mobile-y,36%)}
.uk-lr-cover-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(26,14,5,.14),rgba(26,14,5,.62) 56%,rgba(26,14,5,.95))}
.uk-lr-cover-plate{
  position:relative;z-index:2;width:min(calc(100% - 44px),520px);
  margin:0 auto 0 22px;padding:26px 24px 34px;
  border-left:2px solid var(--lr-gold);color:var(--lr-cream);
}
.uk-lr-cover-plate h1{margin:14px 0 0;color:var(--lr-cream);font-size:clamp(2.1rem,10vw,3.2rem)}
.uk-lr-cover-plate .uk-lr-eyebrow{margin-top:18px;color:var(--lr-gold-lt)}
.uk-lr-cover-plate .uk-lr-seal{border-color:var(--lr-gold-lt);color:var(--lr-gold-lt)}
.uk-lr-cover-date{margin:16px 0 0;color:rgba(250,247,242,.74);font-size:12px;letter-spacing:.2em;text-transform:uppercase}
.uk-lr-cover-plate .uk-lr-guest{border-color:rgba(232,213,176,.4)}
.uk-lr-cover-plate .uk-lr-guest span{color:rgba(250,247,242,.62)}
.uk-lr-cover-plate .uk-lr-guest strong{color:var(--lr-cream)}
.uk-lr-cover-plate .uk-lr-group-list small{color:rgba(250,247,242,.6)}
.uk-lr-cover-plate .uk-lr-group-list strong{color:var(--lr-cream)}

/* Sections: a numbered ledger, flush left then flush right. Never centred. */
.uk-lr-sec{padding:clamp(46px,10vw,74px) 0;background:var(--lr-cream)}
.uk-lr-sec:nth-of-type(odd){background:var(--lr-cream2)}
.uk-lr-wrap{width:var(--lr-col);margin:0 auto;text-align:left}
.uk-lr-sec:nth-of-type(even) .uk-lr-wrap{text-align:right}

.uk-lr-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:16px}
.uk-lr-sec:nth-of-type(even) .uk-lr-head{grid-template-columns:minmax(0,1fr) auto}
.uk-lr-sec:nth-of-type(even) .uk-lr-index{order:2}
.uk-lr-index{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:clamp(2.2rem,9vw,3.2rem);line-height:.9;
  color:var(--lr-gold);font-weight:600;
}
.uk-lr-head h2{margin:6px 0 0;font-size:clamp(1.55rem,6.6vw,2.15rem)}
.uk-lr-rule{grid-column:1 / -1;height:1px;margin-top:16px;background:linear-gradient(90deg,var(--lr-gold),var(--lr-hairline))}
.uk-lr-sec:nth-of-type(even) .uk-lr-rule{background:linear-gradient(270deg,var(--lr-gold),var(--lr-hairline))}
.uk-lr-body{margin-top:22px;padding-left:var(--lr-indent)}
.uk-lr-sec:nth-of-type(even) .uk-lr-body{padding-left:0;padding-right:var(--lr-indent)}

.uk-lr-quote{margin:22px 0 0;max-width:48ch;padding:0 0 0 18px;border-left:2px solid var(--lr-gold)}
.uk-lr-sec:nth-of-type(even) .uk-lr-quote{margin-left:auto;padding:0 18px 0 0;border-left:0;border-right:2px solid var(--lr-gold)}
.uk-lr-quote p{margin:0;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:italic;font-size:clamp(1rem,4.4vw,1.2rem);line-height:1.7}
.uk-lr-quote cite{display:block;margin-top:10px;color:var(--lr-muted);font-size:11px;font-style:normal;letter-spacing:.16em;text-transform:uppercase}

/* The ledger: a key column and a value column, ruled like a programme. */
.uk-lr-ledger{list-style:none;margin:24px 0 0;padding:0}
.uk-lr-ledger li{
  display:grid;grid-template-columns:minmax(0,34%) minmax(0,1fr);gap:8px 20px;
  padding:20px 0;border-top:1px solid var(--lr-hairline);
}
.uk-lr-ledger li:last-child{border-bottom:1px solid var(--lr-hairline)}
.uk-lr-sec:nth-of-type(even) .uk-lr-ledger li{grid-template-columns:minmax(0,1fr) minmax(0,34%)}
.uk-lr-sec:nth-of-type(even) .uk-lr-ledger-key{order:2}
.uk-lr-ledger-key{
  color:var(--lr-gold-dp);font-size:11px;font-weight:700;line-height:1.7;
  letter-spacing:.18em;text-transform:uppercase;
}
.uk-lr-ledger-val h3{margin:0;font-size:18px}
.uk-lr-ledger-val p{margin:6px 0 0;color:var(--lr-muted);font-size:13px;line-height:1.85}
.uk-lr-ledger-val>strong{display:block;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:18px}
.uk-lr-account{letter-spacing:.06em}
.uk-lr-event-date{margin:0 0 6px;color:var(--lr-ink);font-size:13px;font-weight:700;letter-spacing:.03em}
.uk-lr-venue{display:block;margin-top:10px;font-size:14px;font-weight:700}
.uk-lr-address{margin:4px 0 0;color:var(--lr-muted);font-size:13px;line-height:1.75}
.uk-lr-scope{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px;margin:0 0 10px}
.uk-lr-sec:nth-of-type(even) .uk-lr-scope{justify-content:flex-end}
.uk-lr-scope span{color:var(--lr-muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-lr-scope strong{color:var(--lr-gold-dp);font-size:12px}
.uk-lr-map{width:100%;height:180px;margin-top:14px;border:1px solid var(--lr-hairline);border-radius:var(--lr-radius);filter:sepia(.14)}
.uk-lr-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.uk-lr-sec:nth-of-type(even) .uk-lr-actions{justify-content:flex-end}
.uk-lr-actions .uk-lr-button{min-height:42px;padding:0 16px}

/* People: portraits set in a row, overlapping slightly like pressed prints. */
.uk-lr-group-index{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}
.uk-lr-sec:nth-of-type(even) .uk-lr-group-index{justify-content:flex-end}
.uk-lr-group-index button{
  min-height:44px;padding:0 16px;cursor:pointer;border:1px solid var(--lr-line);
  border-radius:var(--lr-radius-control);background:transparent;color:var(--lr-muted);font:inherit;font-size:12px;
}
.uk-lr-group-index button.is-active{border-color:var(--lr-gold);background:rgba(201,164,110,.14);color:var(--lr-gold-dp)}
.uk-lr-group{margin-top:26px}
.uk-lr-pair{display:grid;gap:26px;margin-top:14px}
.uk-lr-person{min-width:0}
.uk-lr-portrait{
  width:min(66%,220px);aspect-ratio:4/5;overflow:hidden;
  border:1px solid var(--lr-gold);border-radius:var(--lr-radius);background:var(--lr-cream2);
}
.uk-lr-sec:nth-of-type(even) .uk-lr-portrait{margin-left:auto}

/* The ledger leans every section to one side; that is the template. The one place
   it does not read as a ledger is a person: a portrait with a name under it is a
   symmetric composition, and leaning it looks like a mistake rather than a rhythm.
   So this single section is centred at every width. Every other section still leans. */
#uk-lr-participants .uk-lr-wrap{text-align:center}
#uk-lr-participants .uk-lr-portrait{margin-left:auto;margin-right:auto}
.uk-lr-portrait img{width:100%;height:100%;object-fit:cover}
.uk-lr-portrait.is-empty{display:grid;place-items:center}
.uk-lr-portrait.is-empty span{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:2.4rem;color:var(--lr-gold)}
.uk-lr-person h3{margin:14px 0 0;font-size:clamp(1.4rem,6vw,1.85rem)}
.uk-lr-role{margin:6px 0 0;color:var(--lr-gold-dp);font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.uk-lr-fullname{display:block;margin-top:8px;font-size:13px;font-weight:500;color:var(--lr-muted)}
.uk-lr-parents{margin-top:16px;padding-top:12px;border-top:1px solid var(--lr-hairline)}
.uk-lr-parents.is-group{margin-top:22px}
.uk-lr-parents span{display:block;color:var(--lr-muted);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-lr-parents p{margin:6px 0 0;font-size:14px;line-height:1.8}
.uk-lr-parents em{color:var(--lr-gold);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:normal}
.uk-lr-bio{margin-top:12px;color:var(--lr-muted);font-size:13px;line-height:1.85}

/* Countdown: one dark band, read as a line rather than four tiles. */
.uk-lr-band{padding:clamp(34px,7vw,52px) 0;background:var(--lr-dark);color:var(--lr-cream)}
.uk-lr-band .uk-lr-eyebrow{color:var(--lr-gold-lt)}
.uk-lr-count{
  display:flex;flex-wrap:wrap;align-items:baseline;gap:0;margin:16px 0 0;
}
.uk-lr-count>span{display:flex;align-items:baseline;gap:8px;padding:0 16px;border-left:1px solid rgba(232,213,176,.28)}
.uk-lr-count>span:first-child{padding-left:0;border-left:0}
.uk-lr-count strong{font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:clamp(1.6rem,7vw,2.3rem);font-weight:600;font-variant-numeric:tabular-nums;color:var(--lr-gold-lt)}
.uk-lr-count small{color:rgba(250,247,242,.66);font-size:9px;letter-spacing:.2em;text-transform:uppercase}
.uk-lr-count-done{margin:16px 0 0;color:var(--lr-gold-lt);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:italic;font-size:18px}

/* Gallery: a staircase. Each frame steps further in, then back out. */
.uk-lr-gallery-tools{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:22px 0 14px}
.uk-lr-gallery-tools>span{color:var(--lr-muted);font-size:10px;letter-spacing:.2em;text-transform:uppercase}
.uk-lr-gallery-tools>div{display:none;gap:6px}
.uk-design-gallery-filmstrip .uk-lr-gallery-tools>div{display:flex}
.uk-lr-gallery-tools button{
  display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:1px solid var(--lr-line);border-radius:var(--lr-radius-control);background:transparent;color:var(--lr-gold-dp);
}
.uk-lr-gallery figure{position:relative;margin:0;overflow:hidden;border:1px solid var(--lr-line);border-radius:var(--lr-radius);background:var(--lr-cream2)}
.uk-lr-gallery figure img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--lr-ease)}
.uk-lr-gallery figure:hover img{transform:scale(1.04)}
.uk-lr-gallery figure button{
  position:absolute;right:8px;bottom:8px;display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:0;border-radius:var(--lr-radius-control);background:rgba(250,247,242,.9);color:var(--lr-ink);
}
.uk-lr-gallery{display:grid;gap:14px}
.uk-lr-gallery figure{width:88%;aspect-ratio:4/3}
.uk-lr-gallery figure:nth-child(4n+2){margin-left:12%}
.uk-lr-gallery figure:nth-child(4n+3){margin-left:6%;width:94%}
.uk-lr-gallery figure:nth-child(4n+4){margin-left:auto}
.uk-design-gallery-grid .uk-lr-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.uk-design-gallery-grid .uk-lr-gallery figure{width:100%;margin-left:0;aspect-ratio:1/1}
.uk-design-gallery-editorial .uk-lr-gallery figure{width:100%;margin-left:0;aspect-ratio:4/5}
.uk-design-gallery-filmstrip .uk-lr-gallery{
  grid-auto-flow:column;grid-auto-columns:minmax(220px,70%);
  overflow-x:auto;padding-bottom:10px;scroll-snap-type:x mandatory;scrollbar-width:none;
}
.uk-design-gallery-filmstrip .uk-lr-gallery::-webkit-scrollbar{display:none}
.uk-design-gallery-filmstrip .uk-lr-gallery figure{width:100%;margin-left:0;aspect-ratio:4/5;scroll-snap-align:center}

/* Gift tabs and FAQ ------------------------------------------------------- */
.uk-lr-tabs{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 0}
.uk-lr-sec:nth-of-type(even) .uk-lr-tabs{justify-content:flex-end}
.uk-lr-tabs button{
  display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 16px;cursor:pointer;
  border:1px solid var(--lr-line);border-radius:var(--lr-radius-control);background:transparent;
  color:var(--lr-muted);font:inherit;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
}
.uk-lr-tabs button.is-active{border-color:var(--lr-gold);background:rgba(201,164,110,.14);color:var(--lr-gold-dp)}
.uk-lr-gift-panel{margin-top:6px}

.uk-lr-faq{margin:22px 0 0;border-top:1px solid var(--lr-hairline)}
.uk-lr-faq details{border-bottom:1px solid var(--lr-hairline)}
.uk-lr-faq summary{
  display:flex;align-items:center;justify-content:space-between;gap:14px;
  min-height:56px;padding:14px 0;cursor:pointer;list-style:none;font-size:14px;font-weight:600;
}
.uk-lr-sec:nth-of-type(even) .uk-lr-faq summary{flex-direction:row-reverse}
.uk-lr-faq summary::-webkit-details-marker{display:none}
.uk-lr-faq summary .bdu-icon{color:var(--lr-gold);transition:transform .3s var(--lr-ease)}
.uk-lr-faq details[open] summary .bdu-icon{transform:rotate(45deg)}
.uk-lr-faq p{margin:0 0 16px;color:var(--lr-muted);font-size:13px;line-height:1.85}

/* Closing: the seal, flush left like a signed document. */
.uk-lr-closing{padding:clamp(56px,12vw,92px) 0 clamp(46px,10vw,68px);background:var(--lr-dark);color:var(--lr-cream)}
.uk-lr-closing .uk-lr-wrap{text-align:left}
.uk-lr-closing .uk-lr-eyebrow{margin-top:20px;color:var(--lr-gold-lt)}
.uk-lr-closing .uk-lr-seal{border-color:var(--lr-gold-lt);color:var(--lr-gold-lt)}
.uk-lr-closing h2{margin:12px 0 0;color:var(--lr-cream);font-size:clamp(1.9rem,8vw,2.6rem)}
.uk-lr-closing .uk-lr-copy{color:rgba(250,247,242,.74)}
.uk-lr-signature{margin:22px 0 0;color:var(--lr-gold-lt);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-style:italic;font-size:1.3rem}
.uk-lr-hashtags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}
.uk-lr-hashtags button{
  display:inline-flex;align-items:center;gap:6px;min-height:36px;padding:0 14px;cursor:pointer;
  border:1px solid rgba(232,213,176,.34);border-radius:var(--lr-radius-control);background:transparent;
  color:var(--lr-gold-lt);font:inherit;font-size:11px;letter-spacing:.06em;
}
.uk-lr-closing-actions{display:grid;gap:8px;margin-top:24px}
.uk-lr-closing-actions .uk-lr-button{border-color:rgba(232,213,176,.4);color:var(--lr-gold-lt)}
.uk-lr-closing-actions .uk-lr-button.is-solid{border-color:var(--lr-gold-lt);background:var(--lr-gold-lt);color:var(--lr-dark)}

/* Navigation and controls ------------------------------------------------- */
/* Laurea carries two generations of navigation styling. The later top-level rule
   further down this file re-declares position, offsets, layer, display, gap, padding,
   background, backdrop-filter and the border, so those declarations never reached the
   page from here. What is left is what this rule still decides. */
.uk-lr-nav{
  right:0;overflow-x:auto;scrollbar-width:none;
}
.uk-lr-nav::-webkit-scrollbar{display:none}
.uk-lr-nav button{
  display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;
  padding:0 2px;cursor:pointer;font:inherit;
}
.uk-lr-nav button span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.uk-lr-nav button i{width:14px;height:1px;background:var(--lr-line)}
.uk-lr-nav button.is-active{color:var(--lr-gold-dp)}
.uk-lr-nav button.is-active i{background:var(--lr-gold);height:2px}

.uk-lr-rail{position:fixed;right:12px;bottom:calc(66px + env(safe-area-inset-bottom));z-index:860;display:grid;gap:6px;justify-items:end}
.uk-lr-rail-toggle,.uk-lr-rail-panel button{
  display:grid;place-items:center;width:44px;height:44px;cursor:pointer;
  border:1px solid var(--lr-line);border-radius:var(--lr-radius-control);
  background:rgba(250,247,242,.96);color:var(--lr-gold-dp);box-shadow:0 8px 22px rgba(26,14,5,.2);
}
.uk-lr-rail-panel{display:grid;gap:6px;justify-items:end}
.uk-lr-rail-panel button.is-active{border-color:var(--lr-gold);background:rgba(201,164,110,.18)}

.uk-laurea main{padding-bottom:calc(62px + env(safe-area-inset-bottom))}

/* Modals ------------------------------------------------------------------ */
.uk-lr-sheet,.uk-lr-lightbox{
  position:fixed;inset:0;z-index:1200;display:grid;opacity:0;visibility:hidden;
  background:rgba(26,14,5,.78);transition:opacity .28s var(--lr-ease),visibility .28s;
}
.uk-lr-sheet{place-items:end center}
.uk-lr-lightbox{place-items:center}
.uk-lr-sheet.is-open,.uk-lr-lightbox.is-open{opacity:1;visibility:visible}
.uk-lr-sheet-panel{
  width:min(100%,520px);padding:26px 22px calc(26px + env(safe-area-inset-bottom));
  border-top:2px solid var(--lr-gold);background:var(--lr-cream);text-align:left;
}
.uk-lr-sheet-panel h2{margin:10px 0 0;font-size:1.5rem}
.uk-lr-share-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:20px 0 0}
.uk-lr-share-grid button{
  display:flex;align-items:center;gap:9px;min-height:52px;padding:0 14px;cursor:pointer;
  border:1px solid var(--lr-line);border-radius:var(--lr-radius);background:transparent;
  color:var(--lr-ink);font:inherit;font-size:13px;font-weight:600;
}
.uk-lr-sheet-close{width:100%;margin-top:12px}
.uk-lr-lightbox-panel{position:relative;width:min(94vw,880px);max-height:88svh;display:grid;place-items:center}
.uk-lr-lightbox-panel img{max-width:100%;max-height:78svh;object-fit:contain;background:var(--lr-cream2)}
.uk-lr-lightbox.is-switching img{opacity:.35;transition:opacity .12s linear}
.uk-lr-lightbox-counter{margin-top:12px;color:var(--lr-gold-lt);font-size:11px;letter-spacing:.2em}
.uk-lr-lightbox button{
  position:absolute;display:grid;place-items:center;width:46px;height:46px;cursor:pointer;
  border:1px solid rgba(232,213,176,.36);border-radius:var(--lr-radius-control);background:rgba(26,14,5,.6);color:var(--lr-gold-lt);
}
.uk-lr-lightbox-close{top:-4px;right:-4px}
.uk-lr-lightbox-prev{left:-4px;top:50%;transform:translateY(-50%)}
.uk-lr-lightbox-next{right:-4px;top:50%;transform:translateY(-50%)}
body.is-laurea-modal-open{overflow:hidden}

/* Engagement skin --------------------------------------------------------- */
.uk-lr-engagement .bdu-public-card{
  max-width:none;margin:0;padding:22px 0 0;border:0;border-top:1px solid var(--lr-hairline);
  border-radius:0;background:transparent;box-shadow:none;color:var(--lr-ink);text-align:left;
}
.uk-lr-engagement .bdu-public-card-head{display:flex;align-items:center;gap:12px}
.uk-lr-engagement .bdu-public-icon{
  display:grid;place-items:center;width:44px;height:44px;border:1px solid var(--lr-line);
  border-radius:var(--lr-radius-control);background:transparent;color:var(--lr-gold-dp);
}
.uk-lr-engagement .bdu-public-card-head p{margin:0;color:var(--lr-gold-dp);font-size:9px;font-weight:700;letter-spacing:.24em;text-transform:uppercase}
.uk-lr-engagement .bdu-public-card-head h2{margin:2px 0 0;font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-size:clamp(1.4rem,5vw,1.9rem);font-weight:600;color:var(--lr-ink)}
.uk-lr-engagement .bdu-public-card-copy{color:var(--lr-muted);font-size:14px;line-height:1.9}
.uk-lr-engagement .bdu-public-form{display:grid;gap:12px;margin-top:18px}
.uk-lr-engagement .bdu-public-form label{color:var(--lr-ink);font-size:11px;font-weight:700;letter-spacing:.08em}
.uk-lr-engagement .bdu-public-form :is(input,select,textarea){
  border:1px solid var(--lr-line);border-radius:var(--lr-radius);background:var(--lr-cream);color:var(--lr-ink);
}
.uk-lr-engagement .bdu-public-form :is(input,select){min-height:46px}
.uk-lr-engagement .bdu-public-form :is(input,select,textarea):focus{border-color:var(--lr-gold);box-shadow:0 0 0 3px rgba(201,164,110,.18)}
.uk-lr-engagement .bdu-public-form small{color:var(--lr-muted)}
.uk-lr-engagement .bdu-public-choice-group span{
  min-height:44px;border:1px solid var(--lr-line);border-radius:var(--lr-radius-control);background:var(--lr-cream);color:var(--lr-muted);
}
.uk-lr-engagement .bdu-public-choice-group input:checked+span{border-color:var(--lr-gold);background:rgba(201,164,110,.16);color:var(--lr-gold-dp)}
.uk-lr-engagement .bdu-public-primary{
  min-height:46px;border:1px solid var(--lr-gold);border-radius:var(--lr-radius-control);background:var(--lr-gold);color:var(--lr-dark);
  font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;
}
.uk-lr-engagement .bdu-public-primary:hover{background:var(--lr-gold-dp);color:var(--lr-cream)}
.uk-lr-engagement :is(.bdu-public-known-guest,.bdu-public-notice,.bdu-public-wish,.bdu-public-rsvp-saved){
  border:1px solid var(--lr-hairline);border-radius:var(--lr-radius);background:var(--lr-cream)
}
.uk-lr-engagement .bdu-public-wishes-list>h3{margin:0 0 8px;color:var(--lr-gold-dp);font-family:inherit;font-size:10px;font-weight:700;letter-spacing:.22em;text-transform:uppercase}
.uk-lr-engagement .bdu-public-wish p{color:var(--lr-ink)}
.uk-lr-engagement .bdu-public-wish footer{color:var(--lr-muted)}
.uk-lr-engagement .bdu-public-pin{color:var(--lr-gold-dp)}

/* The platform-level personalized chip, matched to the cream canvas. */
.bdu-public-theme-laurea .bdu-guest-personalized{
  border-color:rgba(201,164,110,.55);background:#FAF7F2;box-shadow:0 8px 24px rgba(26,14,5,.18);
}
.bdu-public-theme-laurea .bdu-guest-personalized strong{color:#8B6B3A}

/* Desktop ----------------------------------------------------------------- */
@media(min-width:768px){
  .uk-laurea{font-size:16px;--lr-col:min(100% - 80px, 860px)}

  .uk-lr-gate-media img{object-position:var(--lr-focus-desktop-x,50%) var(--lr-focus-desktop-y,40%)}
  .uk-lr-cover-image{object-position:var(--lr-focus-desktop-x,50%) var(--lr-focus-desktop-y,40%)}
  .uk-lr-gate{padding:0 clamp(40px,7vw,110px) clamp(56px,8vw,90px);justify-content:flex-end}
  .uk-lr-cover-plate{width:min(52vw,620px);margin-left:clamp(40px,7vw,110px);padding:30px 30px 40px}

  /* The whole page is off-centre on desktop, alternating side to side. */
  .uk-lr-wrap{margin:0 0 0 clamp(40px,8vw,140px)}
  .uk-lr-sec:nth-of-type(even) .uk-lr-wrap{margin:0 clamp(40px,8vw,140px) 0 auto}
  .uk-lr-band .uk-lr-wrap,.uk-lr-closing .uk-lr-wrap{margin:0 0 0 clamp(40px,8vw,140px)}

  .uk-lr-pair{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:32px}
  /* A workspace can hold one entry or five. An odd last entry would sit in the
     first column with an empty one beside it, so it takes the whole row and
     centres itself — which also covers the case of a single entry. */
  .uk-lr-pair>*:last-child:nth-child(odd){grid-column:1/-1;justify-self:center;width:min(100%,360px)}
  .uk-lr-ledger li{grid-template-columns:minmax(0,26%) minmax(0,1fr);gap:8px 32px}
  .uk-lr-sec:nth-of-type(even) .uk-lr-ledger li{grid-template-columns:minmax(0,1fr) minmax(0,26%)}
  .uk-lr-gallery figure{width:74%}
  .uk-lr-gallery figure:nth-child(4n+2){margin-left:26%}
  .uk-lr-gallery figure:nth-child(4n+3){margin-left:13%;width:84%}
  .uk-design-gallery-grid .uk-lr-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}
  .uk-design-gallery-filmstrip .uk-lr-gallery{grid-auto-columns:minmax(260px,32%)}
  .uk-lr-closing-actions{grid-auto-flow:column;justify-content:start}

  .uk-lr-nav button{flex-direction:row;justify-content:flex-start}
  .uk-lr-nav button span{max-width:none;overflow:visible}
  .uk-lr-rail{right:clamp(12px,2vw,28px);bottom:clamp(20px,4vw,40px);top:auto;transform:none}
  .uk-laurea main{padding-bottom:0}
  .uk-lr-feedback{top:20px}
  .uk-lr-toast{left:auto;right:28px;bottom:28px;transform:translate(0,10px)}
  .uk-lr-toast.is-show{transform:translate(0,0)}
  .uk-lr-sheet{place-items:center}
  .uk-lr-sheet-panel{border:1px solid var(--lr-line);border-top:2px solid var(--lr-gold)}
  .uk-lr-lightbox-close{top:-52px;right:0}
  .uk-lr-lightbox-prev{left:-62px}
  .uk-lr-lightbox-next{right:-62px}
}

/* Narrow phones and short viewports --------------------------------------- */
@media(max-width:760px){
  .uk-lr-share-grid{grid-template-columns:1fr}
}
@media(max-width:400px){
  .uk-lr-ledger li{grid-template-columns:minmax(0,1fr)}
  .uk-lr-sec:nth-of-type(even) .uk-lr-ledger li{grid-template-columns:minmax(0,1fr)}
  .uk-lr-sec:nth-of-type(even) .uk-lr-ledger-key{order:0}
  .uk-lr-count>span{padding:0 10px}
}
@media(max-height:620px){
  .uk-lr-gate{justify-content:center;padding-top:18px}
  .uk-lr-gate-body h1{font-size:clamp(1.7rem,8vw,2.3rem)}
  .uk-lr-seal{width:46px;height:46px;font-size:11px}
  .uk-lr-guest{margin-top:12px;padding:9px 14px}
  .uk-lr-gate-body .uk-lr-button{margin-top:14px}
  .uk-lr-cover{min-height:100svh;align-content:center}
  .uk-lr-cover-plate{padding-top:16px;padding-bottom:20px}
}

/* Cover without a photograph -------------------------------------------- */
.uk-lr-cover-empty{
  display:grid;place-items:center;width:100%;height:100%;
  background:
    repeating-linear-gradient(0deg,rgba(201,164,110,.09) 0 1px,transparent 1px 22px),
    linear-gradient(160deg,#2A1A08,var(--lr-dark));
}
.uk-lr-cover-empty-mark{
  color:var(--lr-gold-lt);font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;
  font-size:clamp(1.5rem,7vw,2.4rem);letter-spacing:.3em;
}

/* Reduced motion ---------------------------------------------------------- */
@media(prefers-reduced-motion:reduce){
  .uk-laurea{--lr-reveal:0s;--lr-slide:0px}
  .uk-lr-reveal,.uk-lr-reveal-item{opacity:1;transform:none;transition:none}
  .uk-lr-gate,.uk-lr-sheet,.uk-lr-lightbox,.uk-lr-gallery figure img,.uk-lr-faq summary .bdu-icon,.uk-lr-progress i{transition:none}
}

/* Academic dossier identity -------------------------------------------------
   Laurea uses a credential / yearbook system: navy ink, parchment paper,
   ruled metadata, chapter codes, split photographic cover, and contact-sheet
   gallery. The structure remains readable without motion or imagery. */
.uk-laurea{
  --lr-cream:#F5F1E7;--lr-cream2:#EAE4D7;--lr-gold:#B89452;--lr-gold-dp:#7D632F;
  --lr-gold-lt:#D9C493;--lr-ink:#16233A;--lr-dark:#0D1728;--lr-muted:#667086;
  --lr-line:rgba(22,35,58,.24);--lr-hairline:rgba(22,35,58,.12);--lr-accent:#8A2F38;
  --lr-radius:0px;--lr-radius-control:3px;--lr-col:min(100% - 32px,760px);
  background:linear-gradient(90deg,rgba(22,35,58,.035) 1px,transparent 1px) 0 0/32px 32px,var(--lr-cream);
  color:var(--lr-ink);font-family:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;line-height:1.7;
}
.uk-laurea h1,.uk-laurea h2,.uk-laurea h3,.uk-laurea h4{
  font-family:"Iowan Old Style","Palatino Linotype",Palatino,Georgia,serif;font-weight:600;letter-spacing:-.02em;
}
.uk-laurea.uk-design-palette-warm{--lr-cream:#F8F0DF;--lr-cream2:#EDE0C7;--lr-gold:#A97D3F;--lr-gold-dp:#735126;--lr-gold-lt:#D7BC84;--lr-ink:#273044;--lr-muted:#6F6B64;--lr-accent:#9A4D2E}
.uk-laurea.uk-design-palette-romantic{--lr-cream:#F7EEEE;--lr-cream2:#E9DADB;--lr-gold:#B58A6B;--lr-gold-dp:#795942;--lr-gold-lt:#DABBA5;--lr-ink:#32283C;--lr-muted:#716576;--lr-accent:#8F3446}
.uk-laurea.uk-design-palette-sage{--lr-cream:#EEF1E8;--lr-cream2:#DDE3D3;--lr-gold:#8E8A52;--lr-gold-dp:#666132;--lr-gold-lt:#C7C398;--lr-ink:#24352F;--lr-muted:#65746D;--lr-accent:#596F58}
.uk-laurea.uk-design-palette-midnight{--lr-cream:#111827;--lr-cream2:#172036;--lr-gold:#D0AD68;--lr-gold-dp:#E2C786;--lr-gold-lt:#EBD59F;--lr-ink:#F5F0E4;--lr-muted:#B7BFCE;--lr-line:rgba(235,213,159,.3);--lr-hairline:rgba(245,240,228,.14);--lr-accent:#D4848D}

.uk-lr-gate{background:var(--lr-dark);display:grid;grid-template-columns:minmax(0,.92fr) minmax(320px,1.08fr);padding:0;}
.uk-lr-gate-media{position:relative;min-height:100svh;order:2;clip-path:polygon(7% 0,100% 0,100% 100%,0 100%)}
.uk-lr-gate-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(13,23,40,.58)),linear-gradient(90deg,rgba(13,23,40,.32),transparent 35%)}
.uk-lr-gate-media img{width:100%;height:100%;object-fit:cover;object-position:var(--lr-focus-desktop-x) var(--lr-focus-desktop-y)}
.uk-lr-gate-veil{display:none}
.uk-lr-gate-body.uk-lr-credential-hero{position:relative;order:1;min-height:100svh;padding:clamp(42px,7vw,92px) clamp(28px,6vw,72px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start;text-align:left;background:radial-gradient(circle at 12% 12%,rgba(184,148,82,.16),transparent 28%),var(--lr-dark);color:#F8F3E9}
.uk-lr-gate-body.uk-lr-credential-hero:before{content:"";position:absolute;inset:28px;border:1px solid rgba(217,196,147,.26);pointer-events:none}
.uk-lr-gate-body h1{max-width:11ch;margin:18px 0 12px;font-size:clamp(3rem,7vw,6.7rem);line-height:.92;color:#FFF9EE;font-style:normal}
.uk-lr-gate-body .uk-lr-eyebrow{color:var(--lr-gold-lt);letter-spacing:.24em}
.uk-lr-seal{display:inline-flex;align-items:center;justify-content:center;width:auto;min-width:84px;height:32px;padding:0 13px;border:1px solid currentColor;border-radius:0;font-family:"IBM Plex Sans","Segoe UI",system-ui,sans-serif;font-size:10px;font-weight:800;letter-spacing:.26em;color:var(--lr-gold-lt);background:transparent}
.uk-lr-credential-line{display:grid;grid-template-columns:auto minmax(34px,88px) auto;align-items:center;gap:10px;width:min(100%,410px);margin:24px 0 8px;color:#AEB7C6;font-size:9px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.uk-lr-credential-line i{height:1px;background:rgba(217,196,147,.42)}
.uk-lr-credential-meta{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0;width:min(100%,520px);margin:28px 0 0;border-block:1px solid rgba(217,196,147,.28)}
.uk-lr-credential-meta div{padding:12px 14px 12px 0}.uk-lr-credential-meta div+div{padding-left:14px;border-left:1px solid rgba(217,196,147,.28)}
.uk-lr-credential-meta dt{color:#8792A4;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}.uk-lr-credential-meta dd{margin:4px 0 0;color:#F5EEDD;font-size:12px;font-weight:700;line-height:1.45}
.uk-lr-gate-date{display:flex;flex-direction:column;gap:3px;margin:18px 0 0;color:#F5EEDD;font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:20px}.uk-lr-gate-date span{color:#8792A4;font-family:"IBM Plex Sans",system-ui,sans-serif;font-size:9px;font-weight:800;letter-spacing:.16em;text-transform:uppercase}
.uk-lr-guest{margin:18px 0 0;padding-left:14px;border-left:2px solid var(--lr-gold);color:#F7F0E2}.uk-lr-guest span{display:block;color:#8792A4;font-size:9px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.uk-lr-guest strong{display:block;margin-top:3px;font-size:15px}
.uk-lr-button{border-radius:var(--lr-radius-control);letter-spacing:.02em}.uk-lr-gate-body .uk-lr-button{margin-top:26px;border-color:var(--lr-gold);background:transparent;color:#F7F0E2}.uk-lr-gate-body .uk-lr-button.is-solid{background:var(--lr-gold);color:var(--lr-dark)}

.uk-lr-nav{position:fixed;z-index:80;left:50%;bottom:14px;transform:translateX(-50%);display:flex;gap:0;width:min(calc(100% - 24px),720px);padding:4px;border:1px solid rgba(22,35,58,.18);border-radius:4px;background:rgba(248,245,237,.95);box-shadow:0 18px 60px rgba(13,23,40,.18);backdrop-filter:blur(16px)}
.uk-lr-nav button{flex:1;min-width:0;min-height:44px;border:0;border-right:1px solid rgba(22,35,58,.1);border-radius:2px;background:transparent;color:#5B6679;font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.uk-lr-nav button:last-child{border-right:0}.uk-lr-nav button i{display:block;width:4px;height:4px;margin:0 auto 4px;border-radius:50%;background:#9AA3B2}.uk-lr-nav button.is-active{background:var(--lr-ink);color:#fff}.uk-lr-nav button.is-active i{background:var(--lr-gold-lt)}
.uk-lr-rail{right:14px;bottom:78px}.uk-lr-rail-toggle,.uk-lr-rail-panel button{border-radius:3px;background:var(--lr-dark);color:#fff}.uk-lr-progress{height:2px;background:rgba(22,35,58,.08)}.uk-lr-progress i{background:linear-gradient(90deg,var(--lr-accent),var(--lr-gold))}

.uk-lr-dossier{padding-bottom:92px}.uk-lr-cover{min-height:76svh;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(300px,.9fr);background:var(--lr-dark);color:#fff}.uk-lr-cover-media{min-height:76svh}.uk-lr-cover-plate{align-self:center;padding:clamp(34px,6vw,78px);background:transparent;color:#fff}.uk-lr-cover-plate h1{font-size:clamp(2.7rem,7vw,6rem);line-height:.96;color:#fff}.uk-lr-cover-date{color:var(--lr-gold-lt)}
.uk-lr-sec{position:relative;padding:0;border:0;background:transparent}.uk-lr-wrap{width:min(calc(100% - 32px),960px);margin:0 auto;padding:clamp(54px,8vw,92px) 0;display:grid;grid-template-columns:minmax(150px,.32fr) minmax(0,.68fr);gap:clamp(24px,5vw,68px);border-top:1px solid var(--lr-hairline)}
.uk-lr-sec:nth-of-type(even) .uk-lr-wrap{grid-template-columns:minmax(0,.68fr) minmax(150px,.32fr)}.uk-lr-sec:nth-of-type(even) .uk-lr-head{grid-column:2}.uk-lr-sec:nth-of-type(even) .uk-lr-body{grid-column:1;grid-row:1}
.uk-lr-head{position:sticky;top:38px;align-self:start;display:block;padding:0 0 18px;border-bottom:1px solid var(--lr-line)}.uk-lr-head>div{display:block}.uk-lr-head h2{margin:8px 0 0;font-size:clamp(1.75rem,4vw,3rem);line-height:1.04}.uk-lr-index{display:inline-flex;min-width:auto;height:auto;padding:0;border:0;background:none;color:var(--lr-accent);font-size:11px;font-weight:900;letter-spacing:.14em}.uk-lr-index:before{content:"CHAPTER ";color:var(--lr-muted)}.uk-lr-rule{display:none}.uk-lr-body{min-width:0}.uk-lr-copy{color:var(--lr-muted)}
.uk-lr-dossier-stamp{display:inline-block;margin:0 0 18px;padding:8px 11px;border:1px solid var(--lr-accent);color:var(--lr-accent);font-size:10px;font-weight:900;letter-spacing:.18em;transform:rotate(-1.5deg)}
.uk-lr-quote{border-left:3px solid var(--lr-gold);background:rgba(184,148,82,.08);padding:18px 20px}.uk-lr-quote p{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:18px}

.uk-lr-transcript-chapter .uk-lr-body{position:relative}.uk-lr-graduate-roster{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px}.uk-lr-person{position:relative;padding:0 0 22px;border:0;border-bottom:1px solid var(--lr-line);background:transparent;text-align:left}.uk-lr-portrait{aspect-ratio:4/5;border-radius:0;overflow:hidden;background:#D8D2C5}.uk-lr-portrait img{width:100%;height:100%;object-fit:cover}.uk-lr-person h3{margin:14px 0 2px;font-size:clamp(1.55rem,4vw,2.35rem)}.uk-lr-role{display:inline-flex;margin:0 0 8px;color:var(--lr-accent);font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.uk-lr-fullname{display:block;color:var(--lr-muted);font-size:12px;font-weight:600}.uk-lr-bio{margin-top:12px;color:var(--lr-muted);font-size:13px}.uk-lr-parents{margin-top:12px;padding-top:12px;border-top:1px dashed var(--lr-hairline)}
.uk-lr-group-index{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:20px}.uk-lr-group-index button{min-height:40px;border:1px solid var(--lr-line);border-radius:2px;background:transparent;color:var(--lr-ink);font-size:11px}.uk-lr-group-index button.is-active{background:var(--lr-ink);color:#fff}

.uk-lr-ledger{display:grid;gap:0;margin:0;padding:0;list-style:none;border-top:1px solid var(--lr-line)}.uk-lr-ledger>li{display:grid;grid-template-columns:minmax(110px,.33fr) minmax(0,.67fr);gap:18px;padding:18px 0;border-bottom:1px solid var(--lr-hairline)}.uk-lr-ledger-key{color:var(--lr-muted);font-size:9px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}.uk-lr-ledger-val strong{font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:1.25rem}.uk-lr-ledger-val p{margin:5px 0 0;color:var(--lr-muted);font-size:12px}
.uk-lr-count{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:18px;background:var(--lr-line);border:1px solid var(--lr-line)}.uk-lr-count>span{display:block;padding:17px 8px;border:0;background:var(--lr-cream);text-align:center}.uk-lr-count strong{display:block;font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:1.7rem;color:var(--lr-ink)}.uk-lr-count small{display:block;margin-top:3px;color:var(--lr-muted);font-size:8px;font-weight:900;letter-spacing:.14em;text-transform:uppercase}

.uk-lr-yearbook .uk-lr-gallery{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;overflow:visible;padding:0;counter-reset:item}.uk-lr-yearbook .uk-lr-gallery figure{position:relative;grid-column:span 4;width:100%;margin:0;aspect-ratio:4/5;border:0;border-radius:0;overflow:hidden;background:#D9D3C7;counter-increment:item}.uk-lr-yearbook .uk-lr-gallery figure:nth-child(1),.uk-lr-yearbook .uk-lr-gallery figure:nth-child(6n+1){grid-column:span 8;aspect-ratio:16/10}.uk-lr-yearbook .uk-lr-gallery figure:nth-child(4n){transform:translateY(18px)}.uk-lr-yearbook .uk-lr-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--lr-ease)}.uk-lr-yearbook .uk-lr-gallery figure:hover img,.uk-lr-yearbook .uk-lr-gallery figure:focus-within img{transform:scale(1.035)}.uk-lr-yearbook .uk-lr-gallery figure>button{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:0;padding:0;background:transparent;color:#fff;cursor:zoom-in}.uk-lr-yearbook .uk-lr-gallery figure>button .bdu-icon{position:absolute;right:9px;top:9px;width:30px;height:30px;padding:7px;background:rgba(13,23,40,.76)}.uk-lr-yearbook .uk-lr-gallery figure:after{content:counter(item,decimal-leading-zero);position:absolute;right:7px;bottom:5px;padding:2px 5px;background:rgba(13,23,40,.82);color:#fff;font-size:8px;font-weight:800;letter-spacing:.12em;pointer-events:none}
.uk-laurea.uk-design-gallery-grid .uk-lr-yearbook .uk-lr-gallery figure{grid-column:span 4;aspect-ratio:1/1;transform:none}.uk-laurea.uk-design-gallery-editorial .uk-lr-yearbook .uk-lr-gallery figure{grid-column:span 6;transform:none}.uk-laurea.uk-design-gallery-filmstrip .uk-lr-yearbook .uk-lr-gallery{display:flex;overflow:auto;scroll-snap-type:x mandatory}.uk-laurea.uk-design-gallery-filmstrip .uk-lr-yearbook .uk-lr-gallery figure{flex:0 0 min(78vw,360px);width:auto;margin:0;aspect-ratio:4/5;transform:none;scroll-snap-align:center}

.uk-lr-faq details{border-radius:0;border-inline:0;border-top:1px solid var(--lr-hairline);background:transparent}.uk-lr-faq details:last-child{border-bottom:1px solid var(--lr-hairline)}.uk-lr-faq summary{min-height:48px}.uk-lr-closing{position:relative;padding:clamp(70px,10vw,120px) 20px 118px;background:var(--lr-dark);color:#F6F0E4;text-align:left}.uk-lr-closing .uk-lr-wrap{display:block;width:min(100%,760px);border:0}.uk-lr-closing h2{max-width:12ch;margin:12px 0;font-size:clamp(2.5rem,8vw,5rem);line-height:.95;color:#fff}.uk-lr-closing .uk-lr-copy{color:#B9C0CB}.uk-lr-signature{margin:26px 0 0;color:var(--lr-gold-lt);font-family:"Iowan Old Style","Palatino Linotype",Georgia,serif;font-size:1.7rem}.uk-lr-hashtags{justify-content:flex-start}

@media(max-width:760px){
  .uk-lr-gate{display:block;min-height:100svh}.uk-lr-gate-media{position:absolute;inset:0;min-height:100svh;clip-path:none}.uk-lr-gate-media:after{background:linear-gradient(180deg,rgba(13,23,40,.22),rgba(13,23,40,.92) 63%,#0D1728)}.uk-lr-gate-media img{object-position:var(--lr-focus-mobile-x) var(--lr-focus-mobile-y)}
  .uk-lr-gate-body.uk-lr-credential-hero{min-height:100svh;justify-content:flex-end;padding:42px 24px 54px;background:transparent}.uk-lr-gate-body.uk-lr-credential-hero:before{inset:16px}.uk-lr-gate-body h1{font-size:clamp(2.8rem,14vw,4.6rem)}.uk-lr-credential-meta{grid-template-columns:1fr 1fr}
  .uk-lr-cover{display:block;min-height:84svh;position:relative}.uk-lr-cover-media{position:absolute;inset:0;min-height:84svh}.uk-lr-cover-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(13,23,40,.14),rgba(13,23,40,.86))}.uk-lr-cover-plate{position:relative;z-index:2;min-height:84svh;display:flex;flex-direction:column;justify-content:flex-end;padding:38px 22px}.uk-lr-cover-plate h1{font-size:clamp(2.7rem,13vw,4.5rem)}
  .uk-lr-wrap,.uk-lr-sec:nth-of-type(even) .uk-lr-wrap{display:block;width:min(calc(100% - 32px),620px);padding:52px 0}.uk-lr-sec:nth-of-type(even) .uk-lr-head,.uk-lr-sec:nth-of-type(even) .uk-lr-body{grid-column:auto;grid-row:auto}.uk-lr-head{position:static;margin-bottom:24px}.uk-lr-head h2{font-size:2rem}
  .uk-lr-graduate-roster{grid-template-columns:1fr}.uk-lr-ledger>li{grid-template-columns:88px minmax(0,1fr);gap:14px}.uk-lr-yearbook .uk-lr-gallery figure,.uk-lr-yearbook .uk-lr-gallery figure:nth-child(1),.uk-lr-yearbook .uk-lr-gallery figure:nth-child(6n+1){grid-column:span 6;aspect-ratio:4/5}.uk-lr-yearbook .uk-lr-gallery figure:nth-child(4n){transform:none}.uk-lr-count{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:430px){.uk-lr-nav{bottom:8px;width:calc(100% - 16px)}.uk-lr-nav button{font-size:8px;padding:5px 3px}.uk-lr-credential-meta{grid-template-columns:1fr}.uk-lr-credential-meta div+div{padding-left:0;border-left:0;border-top:1px solid rgba(217,196,147,.22)}.uk-lr-gate-body.uk-lr-credential-hero{padding-inline:20px}.uk-lr-yearbook .uk-lr-gallery{gap:6px}}
@media(max-width:340px){.uk-lr-nav button span{font-size:0}.uk-lr-nav button span:after{content:"•";font-size:12px}.uk-lr-ledger>li{grid-template-columns:1fr}.uk-lr-gate-body h1{font-size:2.55rem}}
@media(prefers-reduced-motion:reduce){.uk-laurea *{scroll-behavior:auto!important;animation:none!important;transition-duration:.001ms!important}.uk-lr-yearbook .uk-lr-gallery figure{transform:none!important}}


/* Laurea 1.0.1 experience refinements: clearer academic hierarchy and compact closing. */
.uk-laurea .uk-lr-index{
  display:inline-flex;align-items:center;min-height:28px;padding:4px 8px;
  border:1px solid rgba(138,47,56,.28);background:rgba(138,47,56,.055);
  color:var(--lr-accent);font-size:13px;font-weight:900;letter-spacing:.12em;line-height:1;
}
.uk-laurea .uk-lr-index:before{content:"BAGIAN ";margin-right:4px;color:var(--lr-muted);font-size:9px;letter-spacing:.12em}
.uk-laurea .uk-lr-nav button{font-size:10px;letter-spacing:.055em}
.uk-laurea .uk-lr-nav button span{line-height:1.15}
.uk-laurea .uk-lr-rail-panel button[data-laurea-auto]{position:relative;overflow:visible}
.uk-laurea .uk-lr-control-label{position:absolute;right:calc(100% + 8px);width:max-content;max-width:150px;padding:5px 8px;border-radius:3px;background:var(--lr-dark);color:#fff;font-size:9px;font-weight:800;letter-spacing:.05em;text-transform:none;opacity:0;pointer-events:none;transform:translateX(4px);transition:opacity .18s ease,transform .18s ease}
.uk-laurea .uk-lr-rail-panel button[data-laurea-auto]:hover .uk-lr-control-label,
.uk-laurea .uk-lr-rail-panel button[data-laurea-auto]:focus-visible .uk-lr-control-label{opacity:1;transform:none}
.uk-laurea .uk-lr-rail.has-auto .uk-lr-rail-toggle{box-shadow:0 0 0 2px rgba(184,148,82,.34),0 10px 28px rgba(13,23,40,.2)}
.uk-laurea .uk-lr-rail.has-auto .uk-lr-rail-toggle:after{content:"";position:absolute;right:4px;top:4px;width:6px;height:6px;border-radius:50%;background:var(--lr-gold-lt);box-shadow:0 0 0 3px rgba(217,196,147,.15)}
.uk-laurea .uk-lr-closing{padding-bottom:clamp(76px,8vw,96px)}
.uk-laurea .uk-lr-closing .uk-lr-wrap{padding-block:0}
.uk-laurea .uk-lr-closing-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:18px}
.uk-laurea .uk-lr-closing-actions .uk-lr-button{width:auto;min-width:0;min-height:42px;padding:0 15px;letter-spacing:.08em}
.uk-laurea .uk-lr-signature{margin-top:20px}
@media(max-width:760px){
  .uk-laurea .uk-lr-index{font-size:12px}
  .uk-laurea .uk-lr-nav button{font-size:9px;padding-inline:4px}
  .uk-laurea .uk-lr-closing{padding:64px 18px calc(82px + env(safe-area-inset-bottom))}
  .uk-laurea .uk-lr-closing-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px}
  .uk-laurea .uk-lr-closing-actions .uk-lr-button{width:100%;padding-inline:10px;font-size:10px}
}
@media(max-width:360px){
  .uk-laurea .uk-lr-nav button{font-size:8.5px;letter-spacing:.02em}
  .uk-laurea .uk-lr-closing-actions{grid-template-columns:1fr}
}

/* Compact desktop chapter rail keeps the invitation readable without covering content. */
@media(min-width:768px){
  .uk-laurea .uk-lr-nav{
    right:clamp(10px,1.4vw,20px);width:52px;padding:4px;gap:2px;
    border-color:rgba(22,35,58,.14);background:rgba(248,245,237,.9);
    box-shadow:0 14px 42px rgba(13,23,40,.13);
  }
  .uk-laurea .uk-lr-nav button{
    position:relative;width:44px;height:44px;min-width:44px;min-height:44px;padding:0;
    display:grid;place-items:center;border:0;border-radius:2px;font-size:0;letter-spacing:0;
  }
  .uk-laurea .uk-lr-nav button i{width:6px;height:6px;margin:0;border-radius:50%;background:#8D98AA}
  .uk-laurea .uk-lr-nav button.is-active i{width:8px;height:8px;background:var(--lr-accent);box-shadow:0 0 0 4px rgba(138,47,56,.12)}
  .uk-laurea .uk-lr-nav button span{
    position:absolute;right:calc(100% + 8px);top:50%;width:max-content;max-width:150px;
    padding:6px 9px;border:1px solid rgba(22,35,58,.14);border-radius:3px;background:var(--lr-ink);color:#fff;
    font-size:9px;font-weight:800;letter-spacing:.05em;line-height:1.2;text-transform:none;
    opacity:0;pointer-events:none;transform:translate(4px,-50%);transition:opacity .16s ease,transform .16s ease;
  }
  .uk-laurea .uk-lr-nav button:hover span,
  .uk-laurea .uk-lr-nav button:focus-visible span{opacity:1;transform:translate(0,-50%)}
  .uk-laurea .uk-lr-rail{right:clamp(10px,1.4vw,20px)}
}
@media(max-width:760px){
  .uk-laurea .uk-lr-nav button span{position:static;opacity:1;transform:none;pointer-events:auto}
}

/* Desktop chapter navigation is anchored away from the reading center and keeps labels visible. */
@media(min-width:1200px){
  .uk-laurea .uk-lr-nav{
    left:auto;right:clamp(10px,1.5vw,22px);top:clamp(68px,8vh,92px);bottom:auto;
    transform:none;flex-direction:column;width:118px;max-height:calc(100svh - 156px);
    gap:2px;padding:5px;overflow-y:auto;overflow-x:hidden;
    border:1px solid rgba(22,35,58,.14);border-radius:4px;
    background:rgba(248,245,237,.94);box-shadow:0 12px 34px rgba(13,23,40,.12);
  }
  .uk-laurea .uk-lr-nav button{
    position:relative;display:grid;grid-template-columns:12px minmax(0,1fr);align-items:center;justify-items:start;
    width:100%;height:44px;min-width:0;min-height:44px;padding:0 8px;gap:7px;
    border:0;border-radius:2px;background:transparent;color:#5B6679;
    font-size:9px;letter-spacing:.035em;text-align:left;text-transform:none;
  }
  .uk-laurea .uk-lr-nav button i{width:6px;height:6px;margin:0;border-radius:50%;background:#8D98AA}
  .uk-laurea .uk-lr-nav button span{
    position:static;display:block;width:100%;max-width:100%;padding:0;border:0;border-radius:0;
    background:transparent;color:inherit;font-size:9px;font-weight:800;letter-spacing:.035em;line-height:1.2;
    opacity:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;pointer-events:auto;transform:none;transition:none;
  }
  .uk-laurea .uk-lr-nav button:hover,.uk-laurea .uk-lr-nav button:focus-visible{background:rgba(22,35,58,.06);color:var(--lr-ink)}
  .uk-laurea .uk-lr-nav button:hover span,.uk-laurea .uk-lr-nav button:focus-visible span{opacity:1;transform:none}
  .uk-laurea .uk-lr-nav button.is-active{background:var(--lr-ink);color:#fff}
  .uk-laurea .uk-lr-nav button.is-active i{width:7px;height:7px;background:var(--lr-gold-lt);box-shadow:none}
  .uk-laurea .uk-lr-rail{right:clamp(10px,1.5vw,22px);bottom:clamp(18px,3vw,34px);top:auto;transform:none}
}
@media(min-width:1200px) and (max-height:620px){
  .uk-laurea .uk-lr-nav{top:12px;max-height:calc(100svh - 90px)}
}
@media(min-width:768px) and (max-width:1199px){
  .uk-laurea .uk-lr-nav{
    left:64px;right:12px;top:12px;bottom:auto;transform:none;width:auto;max-width:720px;height:auto;max-height:none;
    margin-left:auto;flex-direction:row;gap:2px;padding:4px;overflow-x:auto;overflow-y:hidden;
    border:1px solid rgba(22,35,58,.14);border-radius:4px;background:rgba(248,245,237,.94);
  }
  .uk-laurea .uk-lr-nav button{
    position:relative;display:grid;grid-template-columns:8px minmax(0,1fr);align-items:center;justify-items:start;
    flex:1 0 92px;width:auto;height:44px;min-width:92px;min-height:44px;padding:0 7px;gap:6px;
    border:0;border-radius:2px;background:transparent;color:#5B6679;font-size:9px;letter-spacing:.025em;text-align:left;text-transform:none;
  }
  .uk-laurea .uk-lr-nav button i{width:5px;height:5px;margin:0;border-radius:50%;background:#8D98AA}
  .uk-laurea .uk-lr-nav button span{
    position:static;display:block;width:100%;max-width:100%;padding:0;border:0;background:transparent;color:inherit;
    font-size:9px;font-weight:800;letter-spacing:.025em;line-height:1.15;opacity:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
    pointer-events:auto;transform:none;transition:none;
  }
  .uk-laurea .uk-lr-nav button:hover span,.uk-laurea .uk-lr-nav button:focus-visible span{opacity:1;transform:none}
  .uk-laurea .uk-lr-nav button.is-active{background:var(--lr-ink);color:#fff}
  .uk-laurea .uk-lr-nav button.is-active i{background:var(--lr-gold-lt);box-shadow:none}
}
