/* Accessibility and consent overrides; loaded last on every route. */
html{scroll-padding-top:7rem}body{overflow-wrap:anywhere}main{min-width:0}img{max-width:100%;height:auto}
[hidden]{display:none!important}
:focus-visible{outline:3px solid #005fcc!important;outline-offset:3px;box-shadow:0 0 0 6px #fff!important}
.skip{position:absolute;left:1rem;top:-200px;z-index:1000;background:#fff;color:#121e38;padding:12px 18px}.skip:focus{top:1rem}
.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
button,input,textarea,select{font:inherit}button,summary{min-height:44px}a,button{touch-action:manipulation}
main p a,main li a,.privacy-footer a{text-decoration:underline;text-underline-offset:.2em}
.cookie-banner{position:relative!important;inset:auto!important;transform:none!important;width:auto!important;max-width:none!important;max-height:none!important;margin:0!important;padding:20px max(20px,calc((100% - 1140px)/2))!important;display:flex;gap:20px;align-items:center;flex-wrap:wrap;background:#edf4fa!important;color:#182c45!important;border:0!important;border-bottom:1px solid #8b9eb1!important;border-radius:0!important;box-shadow:none!important;z-index:1!important}
.cookie-banner h2{font-size:1.15rem;margin:0 0 6px}.cookie-banner p{font-size:1rem!important;line-height:1.6;margin:0;color:#182c45!important}.cookie-banner>div:first-child{flex:1 1 360px}
.cookie-actions{display:flex;gap:10px;flex-wrap:wrap}.cookie-actions button{background:#173653!important;color:#fff!important;border:2px solid #173653!important;padding:10px 16px;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer}.cookie-actions button:hover{background:#285576!important}
#privacy-dialog{width:min(620px,calc(100% - 32px));max-height:calc(100dvh - 48px);overflow:auto;border:1px solid #8295a7;border-radius:12px;padding:26px;background:#fff;color:#182c45}#privacy-dialog::backdrop{background:#0c1c31b3}#privacy-dialog h2{font-size:1.5rem;margin-top:0}#privacy-dialog p{color:#344960;line-height:1.6}#privacy-dialog a{color:#155985;text-decoration:underline}.privacy-check{display:flex;gap:12px;align-items:start;line-height:1.6}.privacy-check input{width:24px;height:24px;flex:none;margin-top:2px;accent-color:#173653}
.privacy-footer{background:#121e38;color:#e4edf6;padding:22px max(20px,calc((100% - 1140px)/2));display:flex;gap:16px;flex-wrap:wrap;align-items:center;font-size:1rem}.privacy-footer a{display:inline-flex;align-items:center;min-height:44px;color:#e4edf6}.privacy-footer button{background:transparent;color:#e4edf6;border:1px solid #b8cada;border-radius:5px;padding:8px 14px;cursor:pointer}
.legal-page{max-width:900px;margin:auto;padding:40px 24px 64px;color:#182c45}.legal-page h1{font-size:clamp(2rem,5vw,3rem);line-height:1.2}.legal-page h2{font-size:1.45rem;margin-top:2rem}.legal-page p,.legal-page li{font-size:1rem;line-height:1.75}.legal-page a{color:#155985}.legal-page table{border-collapse:collapse;width:100%}.legal-page td,.legal-page th{border:1px solid #8499ab;text-align:left;padding:12px;vertical-align:top}.legal-page .table-wrap{overflow:auto}.draft-note{padding:16px;background:#fff2d6;border-left:4px solid #805118;color:#573709;font-size:1rem}.external-form-note{padding:22px;background:#edf4fa;color:#182c45;border:1px solid #8295a7}.external-form-note a{color:#155985}
.eyebrow.dark-eye,.service-kicker,.service-section-title>span,.service-final span,.service-detail-link,.service-stages b{color:#805116}.hero .eyebrow,.service-band .service-kicker{color:#e4aa5a}
.using-keyboard .header{position:static!important}.using-keyboard .mentor-banner{position:static!important;inset:auto!important;margin:20px auto!important;max-height:none!important}.using-keyboard .social-float{display:none!important}
.mentor-banner[aria-hidden=true]{visibility:hidden;pointer-events:none}
@media(max-width:700px){.cookie-banner{display:block!important}.cookie-actions{margin-top:16px}.cookie-actions button{flex:1 1 160px}html{scroll-padding-top:1rem}.header{position:relative!important}.privacy-footer{flex-direction:column;align-items:flex-start}.legal-page{padding:28px 20px}.legal-page th,.legal-page td{min-width:140px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(forced-colors:active){:focus-visible{outline:3px solid Highlight!important}.cookie-actions button{border:2px solid ButtonText!important}}

body{font-family:Arial,Helvetica,sans-serif}.legal-page input:not([type=checkbox]),.legal-page textarea{width:100%;max-width:650px;min-height:44px;padding:10px;border:1px solid #53687d;border-radius:5px}.legal-page button{padding:10px 16px;background:#173653;color:#fff;border:2px solid #173653;border-radius:5px}.legal-page label{line-height:1.6}.legal-page a{color:#155985}.brand-subtitle,.portela-wordmark-sub{font-size:.75rem!important;letter-spacing:.04em!important}.eyebrow,.service-kicker,.summary-top,.summary-bottom{font-size:.875rem!important}

.hero .eyebrow,.hero .hero-note span,.service-list article>span,.card-index{color:#805116}body,h1,h2,h3,button,input,textarea,summary,.brand,.strip strong,.panel-number,.panel-content p,.steps b,.foot strong{font-family:Arial,Helvetica,sans-serif!important}
.legal button[data-cookie-settings]{background:transparent;border:1px solid #b8cada;border-radius:5px;color:#e4edf6;padding:8px 14px}

.mentor-hero-small{color:#3d5168!important}.links-footer{background:#fff;color:#46566b}.links-footer a{color:#20324c}.link-cora{background:#bc2854;border-color:#bc2854}.link-cora:hover{background:#a72149}.welcome-heading>span,.welcome-contact span,.welcome-routine .welcome-eyebrow{color:#805116}

/* Hidden state must win over the responsive display declarations. */
.cookie-banner[hidden],.mentor-banner[hidden],.mentor-banner.mentor-awaiting-consent{display:none!important}
@media(max-width:700px){
 .cookie-banner{padding:14px 18px!important}
 .cookie-banner h2{font-size:1rem;margin-bottom:4px}
 .cookie-banner p{font-size:.875rem!important;line-height:1.45}
 .cookie-banner .cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px}
 .cookie-banner .cookie-actions button{font-size:.875rem;min-height:44px;padding:8px 12px}
 .cookie-banner .cookie-actions [data-cookie-settings]{grid-column:1/-1;background:transparent!important;color:#173653!important;border:0!important;text-decoration:underline;min-height:36px;padding:3px 8px}
 .hero-grid{padding-top:30px!important;gap:28px!important}
 .hero h1{font-size:clamp(2rem,8.4vw,2.6rem)!important;line-height:1.12;letter-spacing:-.045em;margin:18px 0}
 .hero .eyebrow{font-size:.69rem!important;letter-spacing:.08em;gap:8px}
 .hero .intro{font-size:1rem;line-height:1.6}
 .hero-actions{gap:12px;margin-top:24px}
 .hero .hero-note{margin-top:20px}
 .mentor-banner:not([hidden]),.using-keyboard .mentor-banner:not([hidden]){position:relative!important;inset:auto!important;width:100%!important;max-width:none!important;max-height:none!important;margin:24px 0 0!important;overflow:visible;box-shadow:0 6px 20px #17274012;border-radius:12px}
 .mentor-banner .mentor-banner-inner{padding:16px!important}
 .mentor-banner .mentor-banner-copy>span{font-size:.65rem;padding-right:32px}
 .mentor-banner h2{font-size:1.2rem!important;margin:8px 0!important;padding-right:16px}
 .mentor-banner p{font-size:.875rem;line-height:1.45}
 .mentor-banner .mentor-banner-link{font-size:.875rem;margin-top:12px;padding:9px 16px}
 .mentor-banner .mentor-banner-close{top:0;right:0}
 .social-float{display:none!important}
 #privacy-dialog{padding:20px}
 .header .brand-subtitle{font-size:.58rem!important;letter-spacing:.025em!important}
 .service-header .service-wrap{gap:12px;flex-wrap:wrap}
 header .brand-lockup,header .portela-wordmark{min-width:0}
}
@media(max-width:360px){.header .brand-name{font-size:1rem}.header .brand-subtitle{font-size:.5rem!important}.header .brand-lockup img{width:36px;height:36px}.header .bar{gap:8px}.mobile-menu>summary{padding:10px}}

/* Bottom cookie notice, visible before the consent controller initializes. */
.cookie-banner{position:fixed!important;inset:auto 0 0!important;bottom:0!important;left:0!important;right:0!important;z-index:900!important;border-top:1px solid #8b9eb1!important;border-bottom:0!important;box-shadow:0 -4px 24px #121e3820!important;padding:16px max(20px,calc((100% - 1140px)/2)) calc(16px + env(safe-area-inset-bottom))!important}
.cookie-banner[hidden]{display:none!important}
body:has(.cookie-banner:not([hidden])) .mentor-banner{display:none!important}
@media(max-width:700px){.cookie-banner{padding:12px 18px calc(10px + env(safe-area-inset-bottom))!important}.cookie-banner h2{font-size:.95rem}.cookie-banner p{font-size:.8rem!important;line-height:1.4}.cookie-banner .cookie-actions{grid-template-columns:1fr 1fr 1fr;gap:7px;margin-top:10px}.cookie-banner .cookie-actions button{padding:8px 5px;font-size:.8rem}.cookie-banner .cookie-actions [data-cookie-settings]{grid-column:auto;border:1px solid #173653!important;border-radius:6px;min-height:44px;text-decoration:none;padding:8px 5px}}
