:root{--bg:#f5f5f5;--panel:#fffffff0;--panel-strong:#fff;--ink:#1e1e1e;--muted:#676767;--line:#1e1e1e1a;--uhh-primary:#e2001a;--uhh-primary-dark:#b00015;--uhh-accent:#fff2f3;--uhh-contrast:#fff;--accent:var(--uhh-primary);--accent-strong:#7b0010;--signal:#7b0010;--success:#0d7a57;--error:#b42318;--shadow:0 20px 48px #1e1e1e14}*{box-sizing:border-box}html{min-height:100%}body{min-height:100%;color:var(--ink);background:linear-gradient(#e2001a14,#0000 220px),linear-gradient(#f8f8f8 0%,#f1f1f1 100%);margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif}a{color:inherit;text-decoration:none}.topbar{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff5;border-bottom:1px solid #1e1e1e14;position:sticky;top:0}.topbar__inner{width:min(1180px,100%);color:var(--ink);justify-content:space-between;align-items:center;gap:20px;margin:0 auto;padding:16px 20px;display:flex}.topbar__brand{align-items:center;gap:16px;display:flex}.topbar__logo{width:190px;height:auto}.topbar__brand-copy{flex-direction:column;gap:3px;padding-top:15px;font-size:30px;display:flex}.topbar__title{font-size:1.05rem;font-weight:700}.topbar__subtitle{letter-spacing:.12em;text-transform:uppercase;color:var(--muted);font-size:.72rem}.topbar__nav{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.topbar__link{min-height:36px;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;padding:0 12px;font-size:.95rem;font-weight:600;display:inline-flex}.topbar__link--primary,.topbar__link--active{color:var(--uhh-contrast);background:var(--uhh-primary);box-shadow:0 10px 24px #e2001a2e}.shell{width:min(1180px,100% - 32px);margin:0 auto;padding:28px 16px 56px}.shell--narrow{width:min(900px,100% - 32px)}.hero,.panel{border:1px solid var(--line);background:var(--panel);box-shadow:var(--shadow);border-radius:28px;position:relative;overflow:hidden}.hero{background:linear-gradient(180deg, #fffffffa, #fffffff5), var(--panel-strong);min-height:320px;margin-bottom:18px}.hero__backdrop{background:linear-gradient(90deg,#e2001a14,#0000 28%),linear-gradient(#0000 0 calc(100% - 8px),#e2001a24 calc(100% - 8px) 100%);position:absolute;inset:0}.hero__content{z-index:1;color:var(--ink);padding:34px 40px 38px;position:relative}.hero__brand{align-items:center;gap:14px;margin-bottom:18px;display:inline-flex}.hero__brand-logo{width:168px;height:auto}.hero__brand-label{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);font-size:.78rem;font-weight:700}.hero h1,.panel h1,.panel h2{letter-spacing:-.03em;margin:0}.hero h1{max-width:none;font-size:clamp(2rem,4.8vw,3.4rem);line-height:1.02}.hero__lede,.copy{color:#3f3f3f;max-width:140ch;line-height:1.6}.hero__badges,.hero__actions{flex-wrap:wrap;gap:12px;margin-top:24px;display:flex}.hero__actions--tight{margin-top:18px}.hero__badges span{letter-spacing:.08em;text-transform:uppercase;background:#ffffff14;border:1px solid #ffffff38;border-radius:999px;padding:8px 14px;font-size:.9rem}.group-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:28px;display:grid}.group-card{border:1px solid #e2001a24;border-top:4px solid var(--uhh-primary);background:#fffffff5;border-radius:22px;align-content:start;gap:16px;padding:20px;transition:transform .14s,box-shadow .14s,border-color .14s;display:grid}.group-card:hover{border-color:#e2001a3d;transform:translateY(-2px);box-shadow:0 16px 32px #1e1e1e14}.group-card__header{gap:10px;display:grid}.group-card__header h2{font-size:1.1rem;line-height:1.2}.group-card__tag{background:var(--uhh-accent);width:fit-content;color:var(--accent-strong);letter-spacing:.12em;text-transform:uppercase;border-radius:999px;padding:5px 10px;font-size:.72rem;font-weight:700}.group-card__logo-wrap{background:#fff;border:1px solid #1e1e1e14;border-radius:18px;justify-content:center;align-items:center;min-height:128px;padding:14px;display:flex}.group-card__logo-wrap img{object-fit:contain;width:100%;max-height:96px}.group-card p{color:#444;margin:0;line-height:1.6}.group-card__description{background:linear-gradient(#f8f8f8f5,#fffffffa);border:1px solid #1e1e1e14;border-radius:16px;padding:14px 16px}.group-card__description p{color:#3b3b3b;text-align:justify;text-justify:inter-word;-webkit-hyphens:auto;hyphens:auto}.panel{margin-bottom:18px;padding:28px}.panel--summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;display:grid}.panel--request-hero{color:var(--ink);background:linear-gradient(#e2001a0f,#fffffff5);padding:34px 40px 38px}.eyebrow,.meta-label{letter-spacing:.14em;text-transform:uppercase;margin:0 0 10px;font-size:.82rem;font-weight:700}.eyebrow{color:#ffffffc7}.eyebrow--hero{color:var(--uhh-primary);margin-bottom:12px}.eyebrow--dark,.meta-label{color:var(--signal)}.button{border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:46px;padding:0 18px;font-weight:700;transition:transform .14s,background .14s,border-color .14s;display:inline-flex}.button:hover{transform:translateY(-1px)}.button--static:hover{transform:none}.button--primary{color:var(--uhh-contrast);background:var(--uhh-primary)}.button--ghost{border-color:var(--line);background:#ffffffd1}.button--ghost.button--mini{color:var(--accent-strong)}.text-link{color:var(--accent-strong);font-weight:700}.section-head{justify-content:space-between;align-items:end;gap:16px;margin-bottom:18px;display:flex}.month-groups{gap:22px;display:grid}.month-group{border:1px solid var(--line);background:var(--panel);border-radius:8px;overflow:hidden}.month-group__head{border-bottom:1px solid var(--line);background:#ffffff80;margin-bottom:0;padding:16px}.month-group__head h3{color:var(--accent-strong);letter-spacing:.01em;margin:0;font-size:1.15rem}.table-wrap{-webkit-overflow-scrolling:touch;border-radius:0 0 8px 8px;width:100%;overflow-x:auto}.schedule-table{border-collapse:collapse;width:100%;min-width:max(100%,900px)}.schedule-table th,.schedule-table td{border-bottom:1px solid var(--line);vertical-align:top;text-align:left;white-space:normal;overflow-wrap:anywhere;padding:8px}@media (min-width:768px){.schedule-table th:first-child,.schedule-table td:first-child{min-width:12ch}.schedule-table th:nth-child(2),.schedule-table td:nth-child(2){min-width:1ch;max-width:5ch}.schedule-table th:nth-child(3),.schedule-table td:nth-child(3){min-width:16ch}.schedule-table th:nth-child(6),.schedule-table td:nth-child(6){min-width:5ch}.schedule-table th:nth-child(7),.schedule-table td:nth-child(7){min-width:12ch}}.schedule-table th{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;z-index:10;background:#fffffff5;font-size:.85rem;position:sticky;top:0}.schedule-table__date-cell{white-space:nowrap;color:var(--accent-strong);font-weight:700}.schedule-table__date-main{line-height:1.2}.schedule-table__date-meta{color:var(--muted);margin-top:4px;font-size:.78rem;font-weight:600}.schedule-table__date-calendar{margin-top:8px}.schedule-table__row--past{opacity:.6;background-color:#00000005}.muted{color:var(--muted)}.open-slot-cell{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.button--mini{min-height:34px;padding:0 12px;font-size:.82rem}.button--icon{width:34px;min-width:34px;padding:0}.button--icon svg{width:16px;height:16px}.request-form{gap:18px;display:grid}.field-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.field{gap:8px;min-width:0;display:grid}.field--full{grid-column:1/-1}.field span,.field legend{font-weight:700}.field legend{padding:0}.field input:not([type=radio]),.field select,.field textarea{width:100%;color:var(--ink);font:inherit;background:#ffffffc7;border:1px solid #1c243029;border-radius:16px;padding:14px 15px}.field textarea{resize:vertical}.field__inline{align-items:center;gap:2rem;display:flex}.field-inline{background:#ffffffc7;border:1px solid #1c243014;border-radius:12px;align-items:center;gap:.5rem;padding:10px 12px;display:flex}.field-inline input[type=radio]{margin:0}.date-options{border:0;margin:0;padding:0}.date-options__grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;display:grid}.date-option{cursor:pointer;background:#ffffffc7;border:1px solid #1c243024;border-radius:18px;gap:6px;padding:16px;transition:border-color .14s,box-shadow .14s,transform .14s;display:grid}.date-option:hover{border-color:#e2001a3d;transform:translateY(-1px)}.date-option--selected{background:#e2001a0d;border-color:#e2001a6b;box-shadow:0 12px 24px #e2001a1a}.date-option input{opacity:0;pointer-events:none;position:absolute}.date-option__label{color:var(--ink);font-size:1rem;font-weight:700}.date-option__meta{color:var(--muted);font-size:.9rem}.hint,.status{border-radius:18px;padding:14px 16px}.hint{color:var(--accent-strong);background:#e2001a0f}.status--success{color:var(--success);background:#0f766e1f}.status--error{color:var(--error);background:#b423181a}.form-actions{justify-content:flex-start;display:flex}@media (max-width:880px){.topbar__inner{flex-direction:column;align-items:flex-start}.group-grid,.panel--summary,.field-grid{grid-template-columns:1fr}.topbar__brand,.section-head{flex-direction:column;align-items:flex-start}.hero__content,.panel{padding:24px}.hero__brand-logo,.topbar__logo{width:168px}}
