@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Instrument+Serif:ital@0;1&display=swap');

/* Shared brand layer for existing functional and legal templates. */
.brand-refresh{--bg:#f8f7f2;--bg-soft:#e5eee7;--paper:#fff;--paper-soft:#f8f7f2;--ink:#142f3a;--ink-strong:#142f3a;--muted:#50636a;--subtle:#66777a;--blue:#185d55;--blue-dark:#142f3a;--blue-soft:#e5eee7;--line:#d9dfdb;--line-strong:#a6b3b4;--shadow-sm:none;--shadow-md:none;--shadow-lg:none;--radius-xl:6px;--radius-lg:4px;--radius-md:4px;background:#f8f7f2;font-family:'DM Sans',sans-serif;color:#142f3a}
.brand-refresh h1,.brand-refresh h2{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.025em;line-height:1.08;max-width:20ch}
.brand-refresh h1{font-size:clamp(2.8rem,5vw,4.5rem)}.brand-refresh h2{font-size:clamp(2rem,3.4vw,3.1rem)}
.brand-refresh .eyebrow,.brand-refresh .mini-label{color:#185d55;font-size:11px;font-weight:700;letter-spacing:2px}
.brand-refresh .site-shell{max-width:1200px;width:calc(100% - 96px);padding-top:0}
.brand-refresh .header{border-bottom:1px solid #d9dfdb;margin-bottom:40px;position:relative;z-index:30;background:#f8f7f2}
.brand-refresh .header .wrap{width:100%;margin:auto;max-width:1200px}
.brand-refresh .header-inner{min-height:88px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand-refresh .brand{display:flex;align-items:center;gap:11px;text-decoration:none;flex-shrink:0}
.brand-refresh .brand img{width:45px;height:45px;object-fit:contain;display:block}
.brand-refresh .brand-name{font-size:23px;font-weight:700;letter-spacing:-1px;line-height:1}
.brand-refresh .brand-name small{display:block;font-size:10px;letter-spacing:2px;font-weight:500;margin-top:7px;text-transform:uppercase}
.brand-refresh .nav{display:flex;gap:28px;align-items:center}.brand-refresh .nav a{text-decoration:none;font-size:14px;font-weight:500}
.brand-refresh .nav a:hover{color:#185d55;text-decoration:underline;text-underline-offset:6px}
.brand-refresh .menu-toggle{display:none;border:1px solid #d9dfdb;background:transparent;padding:9px 14px;border-radius:4px;cursor:pointer;color:#142f3a;font:inherit}
.brand-refresh .signin{position:relative}.brand-refresh .signin summary{cursor:pointer;list-style:none;font-size:14px;font-weight:500;border-left:1px solid #d9dfdb;padding-left:24px}
.brand-refresh .signin summary::-webkit-details-marker{display:none}.brand-refresh .signin summary:after{content:' +';color:#185d55}.brand-refresh .signin[open] summary:after{content:' -'}
.brand-refresh .signin-panel{position:absolute;right:0;top:36px;width:245px;background:#fff;border:1px solid #d9dfdb;padding:12px}
.brand-refresh .nav .signin-panel a{display:block;padding:12px;line-height:1.4}.brand-refresh .signin-panel small{display:block;color:#50636a;font-size:11px;font-weight:400;margin-top:4px}
.brand-refresh .button,.brand-refresh button,.brand-refresh input,.brand-refresh select,.brand-refresh textarea{border-radius:4px;font-family:'DM Sans',sans-serif;box-shadow:none}
.brand-refresh .button{font-size:14px;font-weight:600;min-height:48px;letter-spacing:0}
.brand-refresh .button.primary,.brand-refresh .verification-form button{background:#142f3a;color:#fff;border-color:#142f3a;box-shadow:none}
.brand-refresh .button.secondary{background:transparent;color:#142f3a;border-color:#a6b3b4;box-shadow:none}
.brand-refresh :is(.solution-hero,.solution-section,.solution-proof,.policy-shell,.support-shell,.verification-shell,.verification-result,.support-hero-card,.support-card,.support-path-card,.support-report-card,.portal-hero,.portal-auth-card,.portal-dashboard){background:#fff;box-shadow:none;border-radius:4px}
.brand-refresh :is(.solution-feature,.solution-side-card,.support-action-panel,.support-meta article,.support-grid article,.policy-meta article,.verification-grid article,.portal-security-card,.portal-auth-panel,.portal-list-card,.portal-detail-card){background:#f8f7f2;box-shadow:none;border-radius:4px}
.brand-refresh .solution-side-card{background:#e5eee7}.brand-refresh .solution-outline{display:none}
.brand-refresh :is(.solution-section,.solution-proof,.support-hero-card,.portal-auth-card)::after{content:none}
.brand-refresh :is(.portal-form input,.portal-form select,.verification-form input){background:#fff;border:1px solid #a6b3b4;border-radius:4px;font-size:16px}
.brand-refresh .portal-auth-tabs{background:#e5eee7;border-radius:4px}.brand-refresh .portal-auth-tabs button{border-radius:4px}
.brand-refresh .reveal-on-scroll{opacity:1;transform:none}
.brand-refresh :is(a,button,input,select,textarea,summary):focus-visible{outline:3px solid #ad582f;outline-offset:4px}
.brand-refresh .footer{box-shadow:none;border-radius:0;border-top:1px solid #d9dfdb;background:transparent}
/* The Stripe return page has no shared shell or interactive submission. */
body.brand-refresh:has(>main){display:grid;place-items:center;min-height:100vh;padding:24px;background:#f8f7f2}
body.brand-refresh>main{border-radius:4px;border-color:#d9dfdb;box-shadow:none}body.brand-refresh>main h1{font-size:38px}body.brand-refresh>main a.button{background:#142f3a;border-radius:4px;font-weight:600}
@media(max-width:1050px){.brand-refresh .site-shell{width:calc(100% - 56px)}.brand-refresh .nav{gap:16px}.brand-refresh .nav a{font-size:12px}.brand-refresh .brand-name{font-size:21px}}
@media(max-width:780px){.brand-refresh .site-shell{width:calc(100% - 40px)}.brand-refresh .header{margin-bottom:24px}.brand-refresh .header-inner{min-height:76px;flex-wrap:wrap;gap:0}.brand-refresh .brand img{width:34px;height:34px}.brand-refresh .brand-name{font-size:21px}.brand-refresh .brand-name small{font-size:9px}.brand-refresh .menu-toggle{display:block}.brand-refresh .nav{display:none;position:absolute;top:75px;left:-20px;right:-20px;background:#f8f7f2;border-bottom:1px solid #d9dfdb;padding:14px 20px 24px;flex-direction:column;align-items:stretch;gap:0}.brand-refresh .nav[data-open=true]{display:flex}.brand-refresh .nav>a{padding:14px 0;font-size:16px}.brand-refresh .signin summary{padding:14px 0;border:0;font-size:16px}.brand-refresh .signin-panel{position:static;width:100%}.brand-refresh .nav .signin-panel a{font-size:14px}.brand-refresh h1{font-size:40px}.brand-refresh :is(.solution-hero,.solution-section,.solution-proof,.policy-shell,.support-hero-card,.verification-shell,.portal-hero,.portal-auth-card){padding:24px}.brand-refresh .solution-hero,.brand-refresh .support-hero-card,.brand-refresh .portal-hero,.brand-refresh .portal-auth-card{grid-template-columns:minmax(0,1fr)}html:not(.has-menu-js) .brand-refresh .nav{display:flex;position:static;border:0;padding:12px 0;width:100%}html:not(.has-menu-js) .brand-refresh .menu-toggle{display:none}}
@media(max-width:380px){.brand-refresh .site-shell{width:calc(100% - 32px)}.brand-refresh h1{font-size:35px}.brand-refresh :is(.policy-shell,.solution-hero,.solution-section,.support-hero-card,.verification-shell,.portal-hero,.portal-auth-card){padding:20px}.brand-refresh .nav{left:-16px;right:-16px}}
@media(prefers-reduced-motion:reduce){.brand-refresh *{scroll-behavior:auto!important;animation:none!important;transition:none!important}}
