﻿/* Integration with existing Web Forms content and Bootstrap dialogs. */
:root{--bs-primary:#826552;--bs-primary-rgb:130,101,82;--bs-link-color:#73543e;--bs-link-hover-color:#513722}
[hidden]{display:none!important}#portalForm{margin:0}.portal .brandbar p{margin-bottom:0}.portal .navigation summary{margin-bottom:0}.portal .navigation summary>a{display:inline}
.portal .button{line-height:1.6}.portal .banner-slide p{white-space:normal}.portal .banner-slide h1,.portal .banner-slide h2,.portal .banner-slide h3{white-space:normal}.portal .banner-slide img{object-fit:cover}.portal .banner-slide figure{margin:0}
.public-content{padding-block:28px;min-height:45vh}.public-content a:not(.btn){color:#73543e;text-decoration:underline;text-underline-offset:3px}.public-content img{max-width:100%;height:auto}.public-content .btn{text-decoration:none}.public-content h1,.public-content h2,.public-content h3{color:#73543e}.public-content svg{width:1em;height:1em}
.portal .bg-primary,.portal .btn-primary{background-color:#826552!important;border-color:#826552}.portal .text-primary{color:#826552!important}.portal .btn-outline-primary{color:#826552;border-color:#826552}.portal .btn-outline-primary:hover{color:white;background:#826552}.portal .modal svg{width:1em;height:1em}.portal .modal .btn-close{padding:.5rem}.portal .cookie-alert{background:#624c3e;color:white;padding:12px;z-index:1040}.portal .cookie-alert p{font:inherit;color:inherit}.portal .modal p{font:inherit}.portal .site-shell>footer{margin-top:0}
.public-content .card{border-color:#e6dfd6}.public-content .form-control:focus{border-color:#bda696;box-shadow:0 0 0 .2rem rgba(130,101,82,.25)}
@media(max-width:760px){.public-content{padding-block:20px}.public-content table{max-width:100%}.portal .navigation>.wrap{width:100%}}

.showcase-grid:has(.announcements[hidden]){grid-template-columns:1fr}

.public-content .vertical-menu{display:grid;gap:0}.public-content .vertical-menu .menu-link{display:block;padding:9px 0;border-bottom:1px solid #e6dfd6;text-decoration:none}.public-content .vertical-menu .menu-link.active{font-weight:600;color:#654a36}
.public-content .breadcrumb{font-size:14px}.public-content .breadcrumb-item.active{color:#756d66}

/* Keep the Bootstrap close control at the far edge, including grouped titles. */
.portal .modal .modal-header{justify-content:space-between;gap:16px}
.portal .modal .modal-header>.btn-close{margin:0 0 0 auto;align-self:flex-start;flex:0 0 auto}
.portal .modal .modal-header>:first-child:not(.btn-close){min-width:0}

/* Internal titles follow the reading scale of the content, independently of the home. */
.public-content h1,.public-content .h1{font-size:32px;line-height:1.2;letter-spacing:-.02em;margin:0 0 20px}
.public-content h2,.public-content .h2{font-size:25px;line-height:1.3}
.public-content h3,.public-content .h3{font-size:21px;line-height:1.35}
.portal .btn-primary{--bs-btn-color:#fff;--bs-btn-hover-color:#fff;--bs-btn-active-color:#fff;--bs-btn-disabled-color:#fff;color:#fff}
.portal .btn-primary:hover,.portal .btn-primary:focus-visible,.portal .btn-primary:active{color:#fff;background-color:#6b503f!important;border-color:#6b503f}
@media(max-width:760px){.public-content h1,.public-content .h1{font-size:26px;margin-bottom:16px}.public-content h2,.public-content .h2{font-size:22px}.public-content h3,.public-content .h3{font-size:20px}}

/* Cookie notice and privacy dialog use the portal palette and Bootstrap controls. */
.portal .cookie-alert {
  padding: 14px 0; background: var(--paper); color: var(--ink);
  border-top: 1px solid var(--line); box-shadow: 0 -3px 16px #332b2610;
}
.cookie-alert-inner { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.portal .cookie-alert p { margin: 0; font: 14px/1.6 'Segoe UI',Arial,sans-serif; }
.cookie-alert-actions { display: flex; align-items: center; gap: 10px; flex: none; }
.cookie-alert-actions .btn { min-height: 44px; padding: 10px 16px; font-size: 14px; line-height: 1.5; }
#privacyModal .modal-content { background: var(--paper); border-color: var(--line); color: var(--ink); }
#privacyModal .modal-header, #privacyModal .modal-footer { border-color: var(--line); }
#privacyModal .modal-title { margin: 0; color: var(--brown); }
#privacyModal .modal-body { font-size: 15px; line-height: 1.7; }
#privacyModal .modal-body li + li { margin-top: 8px; }
@media(max-width:760px) {
  .cookie-alert-inner { flex-direction: column; align-items: stretch; gap: 12px; }
  .cookie-alert-actions { flex-wrap: wrap; }
  .cookie-alert-actions .btn { padding-inline: 12px; }
  #privacyModal .modal-dialog { margin: 12px; min-height: calc(100% - 24px); height: calc(100% - 24px); }
}
