/* Reference-matched revision. No scrolling, parallax or pointer animation. */
.hero{background:linear-gradient(90deg,rgba(248,247,243,.96) 0%,rgba(248,247,243,.91) 32%,rgba(248,247,243,.54) 62%,rgba(248,247,243,.08) 100%),url('images/reception-edited.png') center 55%/cover no-repeat;padding:70px 0 85px}
.hero>.wrap{padding:20px 0;background:none;border:0;box-shadow:none;border-radius:0}
.hero h1,.hero-focus{max-width:700px}.hero-focus p{max-width:630px;color:#303d50}.hero .eyebrow{background:#ffffffe0}.hero-focus{padding:0}.hero-focus h2{font-size:clamp(1.3rem,2vw,1.65rem)}
#team{background:linear-gradient(90deg,rgba(243,246,249,.90),rgba(243,246,249,.72)),url('images/office-wide.jpg') center 58%/cover no-repeat}
#team .card{background:rgba(255,255,255,.87)}
.calendar-heading h2{font-size:clamp(2rem,4vw,3rem);margin-bottom:12px}.calendar-heading{align-items:center}.month-shell{overflow:auto;background:#fff;border:1px solid #d4dce5;border-radius:15px}.month-table{table-layout:fixed;width:100%;min-width:740px}.month-table thead{background:#122b55}.month-table thead th{width:14.2857%;text-align:center;padding:12px 4px;font-size:13px;letter-spacing:.06em;border-right:1px solid #ffffff40}.month-table thead th:first-child{background:#a72f3f}.month-table tbody td{height:145px;width:14.2857%;padding:10px 8px 14px;border-right:1px solid #d6dce4;border-bottom:1px solid #d6dce4;background:#fff;text-align:center;vertical-align:top}.month-table tbody td:last-child{border-right:0}.month-table tbody tr:last-child td{border-bottom:0}.month-table .empty-day{background:#f9fafc}.month-date{display:inline-grid;place-items:center;width:33px;height:33px;font:500 20px Poppins,Arial,sans-serif;color:#172c49;margin-bottom:6px}.month-table td:first-child .month-date,.month-table td:last-child .month-date{color:#96394b}.month-date.has-events{border:1px solid #bccada;border-radius:50%;background:#f4f8fd}.day-events{display:grid;gap:5px}.calendar-event{display:block;width:100%;border:0;border-radius:5px;background:#eaf1fb;color:#24446f;padding:6px 5px;font:500 11px/1.55 Poppins,Arial,sans-serif;cursor:pointer;text-align:center;overflow-wrap:anywhere}.calendar-event[data-category="Payroll"]{background:#edf3e9;color:#355037}.calendar-event[data-category="Company"]{background:#f3ecdf;color:#735626}.calendar-event:hover,.calendar-event[aria-pressed="true"]{outline:2px solid #7d97bc;outline-offset:0;background:#dbe7f7}.calendar-event:focus-visible{outline:3px solid #b28124;outline-offset:2px}.calendar-event[hidden],[hidden]{display:none!important}.calendar-detail{margin-top:18px;border-left:3px solid #294a79;padding:20px 24px;background:#ffffffcf;border-radius:0 12px 12px 0}.calendar-detail .eyebrow{font-size:10px;margin-bottom:10px}.calendar-detail h3{font-size:18px}.calendar-detail p:not(.eyebrow){font-size:13px;margin-bottom:8px}.calendar-detail a{display:block;font-size:13px;margin-top:10px;text-decoration:underline}.calendar-detail:focus{outline:none}.calendar-detail:focus-visible{outline:2px solid #8ea5c5;outline-offset:3px}
.portal-heading{text-align:center;margin:65px 0 30px}.portal-heading h2{margin:0 auto;max-width:none;font-size:clamp(1.7rem,3vw,2.3rem)}.portal-heading .eyebrow{color:#2670d7;display:flex;justify-content:center;align-items:center;gap:12px;margin-bottom:20px}.portal-heading .eyebrow:before{content:'';width:30px;height:2px;background:#2670d7}.portal-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.portal-grid a.portal{position:relative;display:flex;flex-direction:column;justify-content:center;min-height:88px;padding:17px 13px 17px 30px;background:#fff;border:1px solid #dce3ee;border-radius:13px;box-shadow:none}.portal-grid a.portal:before{content:'';position:absolute;left:13px;top:50%;width:6px;height:6px;border-radius:50%;background:#2670d7;transform:translateY(-50%);opacity:1}.portal-grid a.portal:after{display:none}.portal-grid .portal strong{font:600 12px/1.5 Poppins,Arial,sans-serif;padding:0;letter-spacing:-.02em}.portal-grid .portal span{font:400 11px/1.5 Merriweather,Georgia,serif;color:#69788b;margin-top:3px}.portal-grid a.portal:hover{border-color:#8ca7cd!important;transform:none;background:#f8faff;box-shadow:none!important;text-decoration:none}
#consultation .actions{align-items:stretch}#consultation .actions>.button{min-height:52px;border-radius:12px;padding:13px 23px;font:500 15px/1.5 Poppins,Arial,sans-serif}#consultation a.whatsapp-tile{display:inline-flex;align-items:center;justify-content:center;gap:10px;color:#fff!important;background:transparent;border:1px solid #8f9ec5;text-decoration:none}#consultation a.whatsapp-tile span{color:#fff!important}#consultation a.whatsapp-tile img{display:block;width:25px;height:25px;filter:brightness(0) invert(1)}#consultation a.whatsapp-tile:hover{background:#ffffff15}
@media(max-width:1050px){.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.hero{background-position:60% center}.hero h1,.hero-focus{max-width:650px}}
@media(max-width:760px){.hero{padding:45px 0;background:linear-gradient(90deg,#f8f7f3ed,#f8f7f3b5),url('images/reception-edited.png') 60% center/cover no-repeat}.hero>.wrap{padding:0}.hero-focus p{font-size:14px}.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-grid a.portal{min-height:86px}.calendar-heading label{margin:20px 0}.calendar-detail{padding:17px}.month-table tbody td{height:140px}.portal-heading{margin-top:45px}.calendar-heading h2{font-size:2rem}#consultation .actions>.button{font-size:14px;width:100%}}

/* Compact official links, matching the supplied horizontal tile reference. */
.portal-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:12px}.portal-grid a.portal{min-height:74px;padding:12px 10px 12px 28px;border-radius:12px}.portal-grid .portal strong{font-size:12px;line-height:1.45}.portal-grid .portal span{font-size:10px;line-height:1.5}.portal-grid a.portal:before{left:12px;width:6px;height:6px}.portal-heading h2{font-size:clamp(1.6rem,2.6vw,2rem)}
.contact-details .actions .maps-link{gap:10px;background:#fff;border:1px solid #a7bedb;box-shadow:0 3px 12px #233f7b0c;color:#20387c;padding:13px 18px}.maps-link img{display:block;object-fit:contain;flex-shrink:0}.maps-link strong{font:700 14px/1.5 Poppins,Arial,sans-serif}.contact-details .actions .maps-link:hover{background:#edf4ff;border-color:#427bc2}
@media(max-width:1050px){.portal-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:600px){.portal-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.portal-grid a.portal{min-height:74px}}
