
/* Shared navigation, legal and accessible component enhancements */
:root { --site-panel:#f6f2eb; --site-ink:#242621; --site-accent:#757b66; }
html { scroll-behavior: smooth; }
body { overflow-x: clip; }
section[id] { scroll-margin-top: 100px; }
a:focus-visible, button:focus-visible, summary:focus-visible, input:focus-visible, textarea:focus-visible { outline: 3px solid #a4af91; outline-offset: 3px; }
.faq-chevron { display:inline-block; width:.58rem; height:.58rem; border-right:2px solid currentColor; border-bottom:2px solid currentColor; transform:rotate(45deg); margin:.35rem .5rem .25rem; transition:transform .2s; }
.panel-title[aria-expanded="true"] .faq-chevron { transform:rotate(225deg); }
.insight-expand { margin:0; }
.insight-expand summary { list-style:none; display:inline-flex; cursor:pointer; }
.insight-expand summary::-webkit-details-marker { display:none; }
.insight-body { padding:1.3rem 0 .35rem; line-height:1.65; }
.contact-notice { margin:1rem auto 0; max-width:45rem; opacity:.9; }
.site-legal-block { text-align:left; color:#f8f8f3; margin:0 auto 1.65rem; padding:1.25rem 0 1.55rem; border-bottom:1px solid rgba(255,255,255,.24); }
.site-legal-header { margin-bottom:1.25rem; }
.site-legal-header strong { font-size:1.35rem; font-family:Georgia,'Times New Roman',serif; line-height:1.4; }
.site-legal-header p { margin:.35rem 0 0; opacity:.85; font-size:.96rem; }
.site-legal-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1.1rem 1.3rem; }
.site-legal-item { min-width:0; display:flex; flex-direction:column; gap:.35rem; }
.site-legal-wide { grid-column:span 2; }
.site-legal-label { display:block; color:#cfd2c7; font-size:.76rem; letter-spacing:.035em; }
.site-legal-value { display:block; font-size:.87rem; line-height:1.55; overflow-wrap:anywhere; }
.site-legal-value a, .site-legal-links a { color:#fff; text-decoration:underline; text-decoration-color:rgba(255,255,255,.4); text-underline-offset:4px; }
.site-legal-value a:hover,.site-legal-links a:hover {color:#d7e3c7;}
.site-legal-note {font-size:.77rem; opacity:.84; line-height:1.6; margin:1.3rem 0 1.1rem; }
.site-legal-links { display:flex; flex-wrap:wrap; gap:.55rem 1.4rem; align-items:center; }
.site-legal-links a {font-size:.88rem; }
.legal-content {background:#f6f2eb; color:#242621; padding:9rem 0 6rem; min-height:65vh; }
.legal-content .legal-inner {width:min(850px,calc(100% - 2.4rem));margin:0 auto;}
.legal-content h1 { font-family:Georgia,'Times New Roman',serif; font-size:clamp(2.4rem,5.5vw,4rem);line-height:1.15;margin:1rem 0 1.3rem;}
.legal-content h2 {font-family:Georgia,'Times New Roman',serif;font-size:clamp(1.4rem,3vw,1.85rem); margin:2.4rem 0 .9rem;}
.legal-content h3 {font-size:1.14rem;margin:1.65rem 0 .75rem;}
.legal-content p,.legal-content li {font-size:1.05rem;line-height:1.85; }
.legal-content ul {padding-left:1.5rem;}
.legal-content a {color:#34483a;text-decoration:underline;text-underline-offset:3px;}
.legal-content a:hover {color:#58745b;}
.legal-intro { font-size:1.17rem!important; color:#495048;}
.legal-back {display:inline-flex;margin-bottom:1.4rem;}
.legal-updated { color:#545b52;font-size:.9rem!important; }
@media(max-width:991px){
 .site-legal-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .site-legal-wide{grid-column:span 2;}
 .navbar-dropdown .navbar-toggler {display:block;z-index:10; cursor:pointer;}
 .navbar-dropdown .navbar-collapse {max-height:calc(100dvh - 100px);overflow-y:auto;overscroll-behavior:contain;}
 .navbar-dropdown .navbar-brand {min-width:0;max-width:calc(100% - 65px);}
 .navbar-dropdown .navbar-caption {overflow-wrap:anywhere;}
}
@media(max-width:575px){
 .site-legal-grid {grid-template-columns:minmax(0,1fr);gap: .9rem;}
 .site-legal-wide {grid-column:span 1;}
 .site-legal-block {padding-top:1rem;}
 .site-legal-links {gap:.7rem 1.1rem;}
 .legal-content {padding:7rem 0 4rem;}
 .navbar-dropdown .navbar-brand .navbar-logo img {max-width:56px!important;max-height:52px!important;object-fit:cover;}
 .navbar-dropdown .navbar-caption {font-size:clamp(.95rem,4.1vw,1.14rem)!important;}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.faq-chevron{transition:none}}
