/* Shared navigation for all TPC page stylesheets. */

.tpc-services{position:relative}
.tpc-services-toggle{display:flex;align-items:center;justify-content:space-between;gap:11px;min-height:44px;padding:12px 0;border:0;background:none;color:var(--mist,#c7c3b9);font:inherit;letter-spacing:inherit;cursor:pointer}
.tpc-services-toggle:after{content:"";width:6px;height:6px;border-right:1px solid currentColor;border-bottom:1px solid currentColor;transform:translateY(-2px) rotate(45deg);transition:transform .15s}
.tpc-services-toggle[aria-expanded="true"]:after{transform:translateY(2px) rotate(225deg)}
.is-current>.tpc-services-toggle{color:var(--paper,#efe9d9)}
.tpc-services-toggle:hover{color:#fff}
.tpc-services-toggle:focus-visible,.tpc-services-panel a:focus-visible{outline:2px solid var(--copper,#c39777);outline-offset:5px}
.tpc-services-panel[hidden]{display:none!important}
.tpc-services-panel{position:absolute;top:calc(100% + 9px);left:-22px;min-width:266px;padding:8px 22px 14px;background:#171a20;color:var(--paper,#efe9d9);border:1px solid #efe9d933;box-shadow:0 18px 35px #0003;z-index:30}
.tpc-services-panel a{display:flex;flex-direction:column;gap:2px;padding:13px 0;color:var(--paper,#efe9d9);text-decoration:none;border-bottom:1px solid #efe9d91a;font:400 15px/1.4 Inter,Arial,sans-serif;letter-spacing:0}
.tpc-services-panel a:last-child{border-bottom:0}
.tpc-services-panel a small{color:#aaa99f;font:400 11px/1.5 Inter,Arial,sans-serif;letter-spacing:.01em}
.tpc-services-panel a:hover span,.tpc-services-panel a[aria-current="page"] span{color:#d3ac8b}
.tpc-services-panel a[aria-current="page"]{box-shadow:-10px 0 0 -9px #c39777}
.tpc-services-panel a.tpc-services-all{padding:12px 0 14px;color:#bcbcae;font-size:12px}
.tpc-services-label{margin:15px 0 3px;color:#a8a799;font:400 9px/1.5 Inter,Arial,sans-serif;text-transform:uppercase;letter-spacing:.14em}
.menu .tpc-services--mobile{border-bottom:1px solid var(--line)}
.menu .tpc-services--mobile>.tpc-services-toggle{width:100%;padding:18px 0;color:var(--paper);font-family:"TPC Tungsten",Impact,"Arial Narrow",sans-serif;font-size:clamp(44px,5vw,64px);font-weight:700;line-height:1.05;letter-spacing:.015em;text-transform:uppercase}
.menu .tpc-services-toggle:after{width:10px;height:10px;margin-right:5px}
.menu .tpc-services-panel{position:static;min-width:0;padding:0 0 18px 18px;margin-bottom:0;border:0;border-left:1px solid #c3977766;background:transparent;box-shadow:none}
.menu .tpc-services-panel a{padding:11px 0;border:0;font:400 23px/1.25 Cardo,Georgia,serif;letter-spacing:0;text-transform:none}
.menu .tpc-services-panel a small{font:400 11px/1.4 Inter,Arial,sans-serif;color:#bcbcae}
.menu .tpc-services-panel a.tpc-services-all{font:400 13px/1.5 Inter,Arial,sans-serif;padding:4px 0 14px}
.menu .tpc-services-label{margin:17px 0 4px;font-size:10px}
@media(prefers-reduced-motion:reduce){.tpc-services-toggle:after{transition:none}}

.tpc-services-panel{max-height:calc(100dvh - 110px);overflow-y:auto}
.menu .tpc-services-panel{max-height:none;overflow:visible}

/* Navigation labels align with the other menu items, overriding CTA centering. */
.tpc-services-toggle{justify-content:flex-start!important;text-align:left!important}

/* Services stays a plain text navigation control. */
.tpc-services-toggle::after{content:none!important;display:none!important}
